Skip to content

Commit 8b829e5

Browse files
committed
Merge branch 'master' of https://github.com/firebase/firebase-js-sdk into issue2393-remote-config
2 parents 8914722 + 8d3aca7 commit 8b829e5

File tree

157 files changed

+4282
-2192
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

157 files changed

+4282
-2192
lines changed

.changeset/cold-bats-hammer.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
'@firebase/rules-unit-testing': major
3+
---
4+
5+
Release `@firebase/rules-unit-testing` to replace the `@firebase/testing` package. The new
6+
package is API compatible but has the following breaking behavior changes:
7+
8+
* `assertFails()` will now only fail on `PERMISSION DENIED` errors, not any error.
9+
* `initializeAdminApp()` now relies on `firebase-admin` rather than imitating the Admin SDK.

.changeset/config.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"@firebase/app-types-exp",
1818
"@firebase/functions-exp",
1919
"@firebase/functions-types-exp",
20+
"@firebase/testing",
2021
"firebase-exp",
2122
"@firebase/changelog-generator",
2223
"firebase-size-analysis"
@@ -25,4 +26,4 @@
2526
"onlyUpdatePeerDependentsWhenOutOfRange": true,
2627
"useCalculatedVersionForSnapshots": true
2728
}
28-
}
29+
}

.changeset/little-cycles-fold.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
"firebase": minor
3+
"@firebase/performance": minor
4+
---
5+
6+
Issue 2393 - Add environment check to Performance Module

.changeset/mean-jokes-tan.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
'firebase': patch
3+
'@firebase/firestore': patch
4+
'@firebase/firestore-types': patch
5+
---
6+
feat: Added `merge` option to `firestore.settings()`, which merges the provided settings with
7+
settings from a previous call. This allows adding settings on top of the settings that were applied
8+
by `@firebase/testing`.

.changeset/neat-gorillas-behave.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@firebase/firestore": patch
3+
---
4+
5+
`terminate()` can now be retried if it fails with an IndexedDB exception.

.changeset/quick-drinks-cheat.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/silly-moles-rush.md

Lines changed: 0 additions & 6 deletions
This file was deleted.

.changeset/silver-trainers-rhyme.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@firebase/firestore": patch
3+
---
4+
5+
Enable fallback for auto-generated identifiers in environments that support `crypto` but not `crypto.getRandomValues`.

.changeset/spicy-masks-sort.md

Lines changed: 0 additions & 6 deletions
This file was deleted.

.changeset/strange-crabs-tell.md

Lines changed: 0 additions & 10 deletions
This file was deleted.

.changeset/tidy-elephants-beam.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.github/CODEOWNERS

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -60,13 +60,14 @@ packages/auth-types @bojeil-google @avolkovi @samhorlbeck @scottcrossen @fireba
6060

6161
# Testing Code
6262
packages/testing @avolkovi @samhorlbeck @scottcrossen @yuchenshi @firebase/jssdk-global-approvers
63+
packages/rules-unit-testing @avolkovi @samhorlbeck @scottcrossen @yuchenshi @firebase/jssdk-global-approvers
6364

6465
# RxFire Code
6566
packages/rxfire @davideast @jamesdaniels @firebase/jssdk-global-approvers
6667

6768
# Installations
68-
packages/installations @andirayo @firebase/jssdk-global-approvers
69-
packages/installations-types @andirayo @firebase/jssdk-global-approvers
69+
packages/installations @andirayo @ChaoqunCHEN @firebase/jssdk-global-approvers
70+
packages/installations-types @andirayo @ChaoqunCHEN @firebase/jssdk-global-approvers
7071

7172
# Performance Code
7273
packages/performance @alikn @zijianjoy @firebase/jssdk-global-approvers
@@ -81,8 +82,8 @@ packages/remote-config @erikeldridge @firebase/jssdk-global-approvers
8182
packages/remote-config-types @erikeldridge @firebase/jssdk-global-approvers
8283

8384
# Documentation Changes
84-
packages/firebase/index.d.ts @egilmorez @firebase/jssdk-global-approvers
85-
scripts/docgen/content-sources/ @egilmorez @firebase/jssdk-global-approvers
85+
packages/firebase/index.d.ts @firebase/firebase-techwriters @firebase/jssdk-global-approvers
86+
scripts/docgen/content-sources/ @firebase/firebase-techwriters @firebase/jssdk-global-approvers
8687

8788
# Changeset
88-
.changeset @firebase/jssdk-changeset-approvers @firebase/firestore-js-team @firebase/jssdk-global-approvers
89+
.changeset @firebase/firebase-techwriters @firebase/jssdk-changeset-approvers @firebase/firestore-js-team @firebase/jssdk-global-approvers

.github/workflows/canary-deploy.yml

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
name: Canary Deploy
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
8+
jobs:
9+
deploy:
10+
name: Canary Deploy
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
- name: Checkout Repo
15+
uses: actions/checkout@master
16+
with:
17+
# Canary release script requires git history and tags.
18+
fetch-depth: 0
19+
- name: Set up Node (10)
20+
uses: actions/setup-node@v1
21+
with:
22+
node-version: 10.x
23+
- name: Yarn install
24+
run: yarn
25+
- name: Deploy canary
26+
run: yarn release --canary
27+
env:
28+
NPM_TOKEN_ANALYTICS: ${{secrets.NPM_TOKEN_ANALYTICS}}
29+
NPM_TOKEN_ANALYTICS_INTEROP_TYPES: ${{secrets.NPM_TOKEN_ANALYTICS_INTEROP_TYPES}}
30+
NPM_TOKEN_ANALYTICS_TYPES: ${{secrets.NPM_TOKEN_ANALYTICS_TYPES}}
31+
NPM_TOKEN_APP: ${{secrets.NPM_TOKEN_APP}}
32+
NPM_TOKEN_APP_TYPES: ${{secrets.NPM_TOKEN_APP_TYPES}}
33+
NPM_TOKEN_AUTH: ${{secrets.NPM_TOKEN_AUTH}}
34+
NPM_TOKEN_AUTH_INTEROP_TYPES: ${{secrets.NPM_TOKEN_AUTH_INTEROP_TYPES}}
35+
NPM_TOKEN_AUTH_TYPES: ${{secrets.NPM_TOKEN_AUTH_TYPES}}
36+
NPM_TOKEN_COMPONENT: ${{secrets.NPM_TOKEN_COMPONENT}}
37+
NPM_TOKEN_DATABASE: ${{secrets.NPM_TOKEN_DATABASE}}
38+
NPM_TOKEN_DATABASE_TYPES: ${{secrets.NPM_TOKEN_DATABASE_TYPES}}
39+
NPM_TOKEN_FIRESTORE: ${{secrets.NPM_TOKEN_FIRESTORE}}
40+
NPM_TOKEN_FIRESTORE_TYPES: ${{secrets.NPM_TOKEN_FIRESTORE_TYPES}}
41+
NPM_TOKEN_FUNCTIONS: ${{secrets.NPM_TOKEN_FUNCTIONS}}
42+
NPM_TOKEN_FUNCTIONS_TYPES: ${{secrets.NPM_TOKEN_FUNCTIONS_TYPES}}
43+
NPM_TOKEN_INSTALLATIONS: ${{secrets.NPM_TOKEN_INSTALLATIONS}}
44+
NPM_TOKEN_INSTALLATIONS_TYPES: ${{secrets.NPM_TOKEN_INSTALLATIONS_TYPES}}
45+
NPM_TOKEN_LOGGER: ${{secrets.NPM_TOKEN_LOGGER}}
46+
NPM_TOKEN_MESSAGING: ${{secrets.NPM_TOKEN_MESSAGING}}
47+
NPM_TOKEN_MESSAGING_TYPES: ${{secrets.NPM_TOKEN_MESSAGING_TYPES}}
48+
NPM_TOKEN_PERFORMANCE: ${{secrets.NPM_TOKEN_PERFORMANCE}}
49+
NPM_TOKEN_PERFORMANCE_TYPES: ${{secrets.NPM_TOKEN_PERFORMANCE_TYPES}}
50+
NPM_TOKEN_POLYFILL: ${{secrets.NPM_TOKEN_POLYFILL}}
51+
NPM_TOKEN_REMOTE_CONFIG: ${{secrets.NPM_TOKEN_REMOTE_CONFIG}}
52+
NPM_TOKEN_REMOTE_CONFIG_TYPES: ${{secrets.NPM_TOKEN_REMOTE_CONFIG_TYPES}}
53+
NPM_TOKEN_RULES_UNIT_TESTING: ${{secrets.NPM_TOKEN_RULES_UNIT_TESTING}}
54+
NPM_TOKEN_STORAGE: ${{secrets.NPM_TOKEN_STORAGE}}
55+
NPM_TOKEN_STORAGE_TYPES: ${{secrets.NPM_TOKEN_STORAGE_TYPES}}
56+
NPM_TOKEN_TESTING: ${{secrets.NPM_TOKEN_TESTING}}
57+
NPM_TOKEN_UTIL: ${{secrets.NPM_TOKEN_UTIL}}
58+
NPM_TOKEN_WEBCHANNEL_WRAPPER: ${{secrets.NPM_TOKEN_WEBCHANNEL_WRAPPER}}
59+
NPM_TOKEN_FIREBASE: ${{secrets.NPM_TOKEN_FIREBASE}}
60+
NPM_TOKEN_RXFIRE: ${{secrets.NPM_TOKEN_RXFIRE}}
61+
CI: true

.github/workflows/check-changeset.yml

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
name: Check Changeset
2+
3+
on: pull_request
4+
5+
jobs:
6+
check_changeset:
7+
name: Check changeset vs changed files
8+
runs-on: ubuntu-latest
9+
10+
steps:
11+
- name: Checkout Repo
12+
uses: actions/checkout@master
13+
with:
14+
# This makes Actions fetch all Git history so check_changeset script can diff properly.
15+
fetch-depth: 0
16+
- name: Set up Node (10)
17+
uses: actions/setup-node@v1
18+
with:
19+
node-version: 10.x
20+
- name: Yarn install
21+
run: yarn
22+
- name: Run changeset script
23+
run: yarn ts-node-script scripts/check_changeset.ts
24+
id: check-changeset
25+
- name: Read output
26+
run: echo "${{steps.check-changeset.outputs.MISSING_PACKAGES}}"
27+
- name: Find Comment
28+
uses: peter-evans/find-comment@v1
29+
id: fc
30+
with:
31+
issue-number: ${{github.event.number}}
32+
body-includes: Changeset File Check
33+
- name: Create comment (missing packages)
34+
if: ${{!steps.fc.outputs.comment-id && steps.check-changeset.outputs.MISSING_PACKAGES}}
35+
uses: peter-evans/create-or-update-comment@v1
36+
with:
37+
issue-number: ${{github.event.number}}
38+
body: |
39+
### Changeset File Check :warning:
40+
Warning: This PR modifies files in the following packages but they have not been included in the changeset file:
41+
${{steps.check-changeset.outputs.MISSING_PACKAGES}}
42+
43+
Make sure this was intentional.
44+
- name: Update comment (missing packages)
45+
if: ${{steps.fc.outputs.comment-id}}
46+
uses: peter-evans/create-or-update-comment@v1
47+
with:
48+
comment-id: ${{steps.fc.outputs.comment-id}} && steps.check-changeset.outputs.MISSING_PACKAGES}}
49+
edit-mode: replace
50+
body: |
51+
### Changeset File Check :warning:
52+
Warning: This PR modifies files in the following packages but they have not been included in the changeset file:
53+
${{steps.check-changeset.outputs.MISSING_PACKAGES}}
54+
55+
Make sure this was intentional.
56+
- name: Update comment (no missing packages)
57+
if: ${{steps.fc.outputs.comment-id && !steps.check-changeset.outputs.MISSING_PACKAGES}}
58+
uses: peter-evans/create-or-update-comment@v1
59+
with:
60+
comment-id: ${{steps.fc.outputs.comment-id}}
61+
edit-mode: replace
62+
body: |
63+
### Changeset File Check :white_check_mark:
64+
No modified packages are missing from the changeset file.

.github/workflows/lint.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: Lint All Packages
2+
3+
on: push
4+
5+
jobs:
6+
test:
7+
name: Lint
8+
runs-on: ubuntu-latest
9+
10+
steps:
11+
- uses: actions/checkout@v2
12+
- name: Set up Node (10)
13+
uses: actions/setup-node@v1
14+
with:
15+
node-version: 10.x
16+
- name: yarn install
17+
run: yarn
18+
- name: yarn lint
19+
run: yarn lint

.github/workflows/test-all.yml

Lines changed: 5 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,12 @@ jobs:
2323
yarn
2424
- name: yarn build
2525
run: yarn build
26+
- name: Set start timestamp env var
27+
run: echo "::set-env name=FIREBASE_CI_TEST_START_TIME::$(date +%s)"
2628
- name: Run unit tests
27-
run: xvfb-run yarn test:ci
29+
run: |
30+
xvfb-run yarn test:ci
31+
node scripts/print_test_logs.js
2832
- name: Generate coverage file
2933
run: yarn ci:coverage
3034
- name: Run coverage
@@ -33,56 +37,3 @@ jobs:
3337
github-token: ${{ secrets.GITHUB_TOKEN }}
3438
path-to-lcov: ./lcov-all.info
3539
continue-on-error: true
36-
deploy:
37-
name: Canary Deploy
38-
runs-on: ubuntu-latest
39-
if: github.ref == 'refs/heads/master'
40-
needs: test
41-
42-
steps:
43-
- uses: actions/checkout@v2
44-
- name: Checkout
45-
# Canary release script requires git history and tags.
46-
run: git fetch --prune --unshallow
47-
- name: Set up Node (10)
48-
uses: actions/setup-node@v1
49-
with:
50-
node-version: 10.x
51-
- name: Yarn install
52-
run: yarn
53-
- name: Deploy canary
54-
run: yarn release --canary
55-
env:
56-
NPM_TOKEN_ANALYTICS: ${{secrets.NPM_TOKEN_ANALYTICS}}
57-
NPM_TOKEN_ANALYTICS_INTEROP_TYPES: ${{secrets.NPM_TOKEN_ANALYTICS_INTEROP_TYPES}}
58-
NPM_TOKEN_ANALYTICS_TYPES: ${{secrets.NPM_TOKEN_ANALYTICS_TYPES}}
59-
NPM_TOKEN_APP: ${{secrets.NPM_TOKEN_APP}}
60-
NPM_TOKEN_APP_TYPES: ${{secrets.NPM_TOKEN_APP_TYPES}}
61-
NPM_TOKEN_AUTH: ${{secrets.NPM_TOKEN_AUTH}}
62-
NPM_TOKEN_AUTH_INTEROP_TYPES: ${{secrets.NPM_TOKEN_AUTH_INTEROP_TYPES}}
63-
NPM_TOKEN_AUTH_TYPES: ${{secrets.NPM_TOKEN_AUTH_TYPES}}
64-
NPM_TOKEN_COMPONENT: ${{secrets.NPM_TOKEN_COMPONENT}}
65-
NPM_TOKEN_DATABASE: ${{secrets.NPM_TOKEN_DATABASE}}
66-
NPM_TOKEN_DATABASE_TYPES: ${{secrets.NPM_TOKEN_DATABASE_TYPES}}
67-
NPM_TOKEN_FIRESTORE: ${{secrets.NPM_TOKEN_FIRESTORE}}
68-
NPM_TOKEN_FIRESTORE_TYPES: ${{secrets.NPM_TOKEN_FIRESTORE_TYPES}}
69-
NPM_TOKEN_FUNCTIONS: ${{secrets.NPM_TOKEN_FUNCTIONS}}
70-
NPM_TOKEN_FUNCTIONS_TYPES: ${{secrets.NPM_TOKEN_FUNCTIONS_TYPES}}
71-
NPM_TOKEN_INSTALLATIONS: ${{secrets.NPM_TOKEN_INSTALLATIONS}}
72-
NPM_TOKEN_INSTALLATIONS_TYPES: ${{secrets.NPM_TOKEN_INSTALLATIONS_TYPES}}
73-
NPM_TOKEN_LOGGER: ${{secrets.NPM_TOKEN_LOGGER}}
74-
NPM_TOKEN_MESSAGING: ${{secrets.NPM_TOKEN_MESSAGING}}
75-
NPM_TOKEN_MESSAGING_TYPES: ${{secrets.NPM_TOKEN_MESSAGING_TYPES}}
76-
NPM_TOKEN_PERFORMANCE: ${{secrets.NPM_TOKEN_PERFORMANCE}}
77-
NPM_TOKEN_PERFORMANCE_TYPES: ${{secrets.NPM_TOKEN_PERFORMANCE_TYPES}}
78-
NPM_TOKEN_POLYFILL: ${{secrets.NPM_TOKEN_POLYFILL}}
79-
NPM_TOKEN_REMOTE_CONFIG: ${{secrets.NPM_TOKEN_REMOTE_CONFIG}}
80-
NPM_TOKEN_REMOTE_CONFIG_TYPES: ${{secrets.NPM_TOKEN_REMOTE_CONFIG_TYPES}}
81-
NPM_TOKEN_STORAGE: ${{secrets.NPM_TOKEN_STORAGE}}
82-
NPM_TOKEN_STORAGE_TYPES: ${{secrets.NPM_TOKEN_STORAGE_TYPES}}
83-
NPM_TOKEN_TESTING: ${{secrets.NPM_TOKEN_TESTING}}
84-
NPM_TOKEN_UTIL: ${{secrets.NPM_TOKEN_UTIL}}
85-
NPM_TOKEN_WEBCHANNEL_WRAPPER: ${{secrets.NPM_TOKEN_WEBCHANNEL_WRAPPER}}
86-
NPM_TOKEN_FIREBASE: ${{secrets.NPM_TOKEN_FIREBASE}}
87-
NPM_TOKEN_RXFIRE: ${{secrets.NPM_TOKEN_RXFIRE}}
88-
CI: true

integration/browserify/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@
55
"scripts": {
66
"pretest": "mkdirp dist && browserify src/namespace.test.js -o dist/namespace.test.js",
77
"test": "karma start --single-run",
8-
"test:ci": "node ../../scripts/run_tests_in_ci.js"
8+
"test:ci": "node ../../scripts/run_tests_in_ci.js -s test"
99
},
1010
"devDependencies": {
11-
"firebase": "7.17.2",
11+
"firebase": "7.18.0",
1212
"@babel/core": "7.11.0",
1313
"@babel/preset-env": "7.11.0",
1414
"browserify": "16.5.1",

integration/firebase-typings/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@
44
"version": "0.2.1",
55
"scripts": {
66
"test": "tsc",
7-
"test:ci": "node ../../scripts/run_tests_in_ci.js"
7+
"test:ci": "node ../../scripts/run_tests_in_ci.js -s test"
88
},
99
"devDependencies": {
10-
"firebase": "7.17.2",
10+
"firebase": "7.18.0",
1111
"typescript": "3.9.7"
1212
}
1313
}

integration/firestore/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,15 @@
77
"build:persistence": "INCLUDE_FIRESTORE_PERSISTENCE=true gulp compile-tests",
88
"build:memory": "INCLUDE_FIRESTORE_PERSISTENCE=false gulp compile-tests",
99
"test": "yarn build:memory; karma start --single-run; yarn build:persistence; karma start --single-run;",
10-
"test:ci": "node ../../scripts/run_tests_in_ci.js",
10+
"test:ci": "node ../../scripts/run_tests_in_ci.js -s test",
1111
"test:persistence": " yarn build:persistence; karma start --single-run",
1212
"test:persistence:debug:": "yarn build:persistence; karma start --auto-watch --browsers Chrome",
1313
"test:memory": "yarn build:memory; karma start --single-run",
1414
"test:memory:debug": "yarn build:memory; karma start --auto-watch --browsers Chrome"
1515
},
1616
"peerDependencies": {
1717
"@firebase/app": "0.x",
18-
"@firebase/firestore": "1.16.3"
18+
"@firebase/firestore": "1.16.4"
1919
},
2020
"devDependencies": {
2121
"@types/mocha": "7.0.2",

integration/messaging/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"test:manual": "mocha --exit"
99
},
1010
"devDependencies": {
11-
"firebase": "7.17.2",
11+
"firebase": "7.18.0",
1212
"chai": "4.2.0",
1313
"chromedriver": "84.0.1",
1414
"express": "4.17.1",

0 commit comments

Comments
 (0)