Skip to content

Commit b6dcbb0

Browse files
Merge branch 'analytics-typescript' into app-typescript
2 parents 488c869 + 94290f5 commit b6dcbb0

File tree

119 files changed

+6408
-5439
lines changed

Some content is hidden

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

119 files changed

+6408
-5439
lines changed

.github/workflows/publish.yml

Lines changed: 28 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,6 @@ name: Publish
22

33
on:
44
workflow_dispatch:
5-
push:
6-
branches:
7-
- main
85

96
jobs:
107
publish_npm:
@@ -14,16 +11,24 @@ jobs:
1411
runs-on: ubuntu-latest
1512
permissions:
1613
id-token: write # enables OIDC for npmjs.com "Trusted Publisher" and provenance
14+
contents: read
1715
steps:
18-
- uses: actions/checkout@v4
16+
- uses: actions/checkout@v6
1917
with:
2018
ref: 'main'
2119
fetch-depth: 0
2220
# Repository admin required to evade PR+checks branch protection
2321
token: ${{ secrets.GH_TOKEN }}
24-
- uses: actions/setup-node@v4
22+
- uses: actions/setup-node@v6
2523
with:
26-
node-version: 22
24+
node-version: lts/*
25+
registry-url: 'https://registry.npmjs.org'
26+
- name: Install latest NPM
27+
# OIDC publishing requires a very up to date npm version
28+
run: |
29+
npm --version
30+
npm install -g npm@latest
31+
npm --version
2732
- name: Yarn Install
2833
uses: nick-fields/retry@v3
2934
with:
@@ -38,11 +43,25 @@ jobs:
3843
git config --global user.email '[email protected]'
3944
- name: Publish Packages
4045
run: |
46+
npx envinfo
47+
echo "Verifying working directory is clean..."
4148
git diff --exit-code
42-
yarn lerna changed
43-
yarn lerna version --yes --force-publish=*
44-
yarn lerna publish from-package --yes
49+
echo "Displaying any current changes..."
50+
if yarn lerna changed; then
51+
echo "Changes detected, bumping versions..."
52+
yarn lerna version --yes --force-publish=*
53+
else
54+
echo "No changes detected, no versions bumped."
55+
fi
56+
echo "Syncing unpublished versions with package registry..."
57+
yarn lerna publish from-package --yes --loglevel trace
4558
env:
4659
# No NPM token needed, all of the packages have been configured
4760
# on npmjs.com with this workflow file as an OIDC "Trusted Publisher"
61+
# As of 20251208 tokenless OIDC Trusted Publish is not working.
62+
# Unable to conclusively fix, using token for now. Expires 20250308
63+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
64+
#
65+
# org admin Github Token required for the changelog/tag commit+push
66+
# to work via an exception to branch protection rules
4867
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}

.github/workflows/scripts/functions/package.json

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,13 @@
1414
"main": "lib/index.js",
1515
"dependencies": {
1616
"firebase-admin": "^13.6.0",
17-
"firebase-functions": "^7.0.0"
17+
"firebase-functions": "^7.0.1"
1818
},
1919
"devDependencies": {
2020
"firebase-functions-test": "^3.4.1",
21-
"firebase-tools": "^14.24.2",
21+
"firebase-tools": "^14.27.0",
2222
"typescript": "^5.9.3"
2323
},
24-
"private": true
24+
"private": true,
25+
"packageManager": "[email protected]"
2526
}

.github/workflows/scripts/functions/yarn.lock

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2880,9 +2880,9 @@ __metadata:
28802880
languageName: node
28812881
linkType: hard
28822882

2883-
"firebase-functions@npm:^7.0.0":
2884-
version: 7.0.0
2885-
resolution: "firebase-functions@npm:7.0.0"
2883+
"firebase-functions@npm:^7.0.1":
2884+
version: 7.0.1
2885+
resolution: "firebase-functions@npm:7.0.1"
28862886
dependencies:
28872887
"@types/cors": "npm:^2.8.5"
28882888
"@types/express": "npm:^4.17.21"
@@ -2893,13 +2893,13 @@ __metadata:
28932893
firebase-admin: ^11.10.0 || ^12.0.0 || ^13.0.0
28942894
bin:
28952895
firebase-functions: lib/bin/firebase-functions.js
2896-
checksum: 10/ec676987de537c863023bd720ee142a2787bd7cd4a399500434419af227f4b35bc641d28a6a8ed2b02078a7c72bf9318f0bb19640ee6fe4234d3f7095576258c
2896+
checksum: 10/bd295c5687da4ed415c423f4899b4413979b91f347200850511e09e50c9e2da707b04ba22d6722885e2e6ddc4ee8ad1fcf6bea8c6ca9ab085e6e8e609007c969
28972897
languageName: node
28982898
linkType: hard
28992899

2900-
"firebase-tools@npm:^14.24.2":
2901-
version: 14.24.2
2902-
resolution: "firebase-tools@npm:14.24.2"
2900+
"firebase-tools@npm:^14.27.0":
2901+
version: 14.27.0
2902+
resolution: "firebase-tools@npm:14.27.0"
29032903
dependencies:
29042904
"@apphosting/build": "npm:^0.1.6"
29052905
"@apphosting/common": "npm:^0.0.8"
@@ -2963,7 +2963,7 @@ __metadata:
29632963
sql-formatter: "npm:^15.3.0"
29642964
stream-chain: "npm:^2.2.4"
29652965
stream-json: "npm:^1.7.3"
2966-
superstatic: "npm:^9.2.0"
2966+
superstatic: "npm:^10.0.0"
29672967
tar: "npm:^6.1.11"
29682968
tcp-port-used: "npm:^1.0.2"
29692969
tmp: "npm:^0.2.3"
@@ -2979,7 +2979,7 @@ __metadata:
29792979
zod-to-json-schema: "npm:^3.24.5"
29802980
bin:
29812981
firebase: lib/bin/firebase.js
2982-
checksum: 10/afbc94c67913075d878ef981029a635ddcd6051343d171f9098a5371430abfdbc49e7351a8312116cd8bcb6ed928bccd7915153e2e9cdcdb12be480176a99664
2982+
checksum: 10/bf769de5e7ba877f71000e39e27627b0e3aff7c72c9421ab669b4eacfd10378ceea432371ae5c3627856d195e8f0166cec4f9574390fede6d651e81aaf109c17
29832983
languageName: node
29842984
linkType: hard
29852985

@@ -3124,9 +3124,9 @@ __metadata:
31243124
resolution: "functions@workspace:."
31253125
dependencies:
31263126
firebase-admin: "npm:^13.6.0"
3127-
firebase-functions: "npm:^7.0.0"
3127+
firebase-functions: "npm:^7.0.1"
31283128
firebase-functions-test: "npm:^3.4.1"
3129-
firebase-tools: "npm:^14.24.2"
3129+
firebase-tools: "npm:^14.27.0"
31303130
typescript: "npm:^5.9.3"
31313131
languageName: unknown
31323132
linkType: soft
@@ -6152,9 +6152,9 @@ __metadata:
61526152
languageName: node
61536153
linkType: hard
61546154

6155-
"superstatic@npm:^9.2.0":
6156-
version: 9.2.0
6157-
resolution: "superstatic@npm:9.2.0"
6155+
"superstatic@npm:^10.0.0":
6156+
version: 10.0.0
6157+
resolution: "superstatic@npm:10.0.0"
61586158
dependencies:
61596159
basic-auth-connect: "npm:^1.1.0"
61606160
commander: "npm:^10.0.0"
@@ -6179,7 +6179,7 @@ __metadata:
61796179
optional: true
61806180
bin:
61816181
superstatic: lib/bin/server.js
6182-
checksum: 10/35bc84f07a5677046baa7c2a15c6da69d48f539fb807ead8bbabefa6d48882cf98388ad5420397bb07c86e8628d2d6d71957ec4d4a3b833512ebdfb01862fb8b
6182+
checksum: 10/9632820e2544cb85515f65a5f7d6dd7168f8b128221c93f3f980e35a808611116c9a2cc1536db8af94a5160e15d625cb18ed2bd3262123b5bd4785653003e7ec
61836183
languageName: node
61846184
linkType: hard
61856185

.github/workflows/tests_e2e_android.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,7 @@ jobs:
219219
target: ${{ matrix.target }}
220220
disable-spellchecker: true
221221
arch: ${{ matrix.arch }}
222+
emulator-build: 14214601 # needed as of 20251205 when emulator 36.3.10.0 (build_id 14472402) released
222223
pre-emulator-launch-script: |
223224
sudo mkdir /mnt/avd
224225
sudo chown $USER:$USER /mnt/avd
Lines changed: 300 additions & 300 deletions
Large diffs are not rendered by default.

.yarnrc.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,4 @@ plugins:
1111
path: .yarn/plugins/@yarnpkg/plugin-postinstall-dev.cjs
1212
spec: "https://raw.githubusercontent.com/sachinraja/yarn-plugin-postinstall-dev/main/bundles/%40yarnpkg/plugin-postinstall-dev.js"
1313

14-
yarnPath: .yarn/releases/yarn-4.10.3.cjs
14+
yarnPath: .yarn/releases/yarn-4.12.0.cjs

CHANGELOG.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,34 @@
33
All notable changes to this project will be documented in this file.
44
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
55

6+
## [23.7.0](https://github.com/invertase/react-native-firebase/compare/v23.6.0...v23.7.0) (2025-12-08)
7+
8+
### Features
9+
10+
- **auth:** cache password policy per-app in validatePassword ([cc29117](https://github.com/invertase/react-native-firebase/commit/cc291171e076d00dfde1fef9d03242379e567af4))
11+
12+
## [23.6.0](https://github.com/invertase/react-native-firebase/compare/v23.5.0...v23.6.0) (2025-12-08)
13+
14+
### Features
15+
16+
- **ai:** firebase-js-sdk parity: template models and live API ([6572aa5](https://github.com/invertase/react-native-firebase/commit/6572aa5e06707ef47fad734b48c17da5d1ee943d))
17+
- **app, ios:** adopt firebase-ios-sdk 12.5.0 ([acc665c](https://github.com/invertase/react-native-firebase/commit/acc665ced443e0d245f30b54eb85e72bcc3d7bd2))
18+
19+
### Bug Fixes
20+
21+
- **app-distribution, android:** adopt beta17 of the native deps ([7b933c2](https://github.com/invertase/react-native-firebase/commit/7b933c2c21f624e1dc62e549e896230f222351c8))
22+
- **auth, ios:** append openURL changes only once in Expo plugin ([#8763](https://github.com/invertase/react-native-firebase/issues/8763)) ([5f74256](https://github.com/invertase/react-native-firebase/commit/5f74256d2b470456206a3655ff6986198d016790))
23+
- firebase-ios-sdk 12.6.0 / firebase-js-sdk 12.6.0 / firebase-android-sdk 34.6.0 ([dacdfa2](https://github.com/invertase/react-native-firebase/commit/dacdfa2b5961259c93ea948472be4b51ac78b1c5))
24+
- **firestore:** remove inequality filter with orderBy limitation ([b388022](https://github.com/invertase/react-native-firebase/commit/b38802203086d30f5bb98e76892e5023e02b010e))
25+
- **firestore:** set firestore client language attribution to react-native ([4fa5141](https://github.com/invertase/react-native-firebase/commit/4fa5141be0049941de2fbe35d2569624f7b884d1))
26+
- **messaging, android:** properly remove remote message from prefs ([336901b](https://github.com/invertase/react-native-firebase/commit/336901b00f0553f57fa18ce416f513f915c9a8ed))
27+
- **messaging, android:** properly shrink stored messages to limit ([53fb8c8](https://github.com/invertase/react-native-firebase/commit/53fb8c86e0ab2559a69c1309e7a1c9afec4bcb1f))
28+
- **messaging, android:** purge message store to limit first, add second ([47ea774](https://github.com/invertase/react-native-firebase/commit/47ea774e2830c0ef3e95c06acfb3960a3ae0bc74))
29+
30+
### Performance Improvements
31+
32+
- **analytics:** skip validateStruct in release mode ([#8716](https://github.com/invertase/react-native-firebase/issues/8716)) ([2b7bbb1](https://github.com/invertase/react-native-firebase/commit/2b7bbb1a4d7d53dca289fcd24eb7010a82fe0eae))
33+
634
## [23.5.0](https://github.com/invertase/react-native-firebase/compare/v23.4.1...v23.5.0) (2025-10-30)
735

836
### Features

eslint.config.mjs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ export default [
2828
'**/app.playground.js',
2929
'**/type-test.ts',
3030
'packages/**/modular/dist/**/*',
31+
'packages/**/dist/**/*',
3132
'src/version.js',
3233
'packages/**/node_modules/**/*',
3334
'packages/**/plugin/build/**/*',
@@ -41,6 +42,7 @@ export default [
4142
'packages/**/modular/dist/**/*',
4243
'packages/ai/__tests__/test-utils',
4344
'packages/**/dist/**/*',
45+
'packages/vertexai/__tests__/test-utils',
4446
],
4547
},
4648
...compat

lerna.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,6 @@
7676
"userUrlFormat": "{{host}}/{{user}}"
7777
},
7878
"ignoreChanges": ["**/docs/**", "**/.github/**", "**/e2e/**", "**/tests/**"],
79-
"version": "23.5.0",
79+
"version": "23.7.0",
8080
"$schema": "node_modules/lerna/schemas/lerna-schema.json"
8181
}

package.json

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,13 @@
99
"lerna:clean": "lerna clean",
1010
"build:all:clean": "lerna run build:clean",
1111
"build:all:build": "lerna run build",
12+
"test:functions:build": "cd .github/workflows/scripts/functions && yarn build",
13+
"codegen:all": "lerna run codegen",
1214
"lint": "yarn lint:js && yarn lint:android && yarn lint:ios:check",
1315
"lint:js": "eslint packages/* --max-warnings=0",
14-
"lint:android": "(google-java-format --set-exit-if-changed --replace --glob=\"packages/*/android/src/**/*.java\" || (echo \"\n\nandroid formatting error - please re-run\n\n\" && exit 1)) && (git diff --exit-code packages/*/android/src || (echo \"\n\nandroid files changed from linting, please examine and commit result\n\n\" && exit 1))",
15-
"lint:ios:check": "clang-format --glob=\"packages/*/ios/**/*.{h,cpp,m,mm}\" --style=Google -n -Werror",
16-
"lint:ios:fix": "clang-format -i --glob=\"packages/*/ios/**/*.{h,cpp,m,mm}\" --style=Google",
16+
"lint:android": "(find packages/*/android/src -name '*.java' -not -path '*/generated/*' -print0 | xargs -0 google-java-format --set-exit-if-changed --replace || (echo \"\n\nandroid formatting error - please re-run\n\n\" && exit 1)) && (git diff --exit-code packages/*/android/src || (echo \"\n\nandroid files changed from linting, please examine and commit result\n\n\" && exit 1))",
17+
"lint:ios:check": "find packages/*/ios -type f \\( -name '*.h' -o -name '*.cpp' -o -name '*.m' -o -name '*.mm' \\) -not -path '*/generated/*' -print0 | xargs -0 clang-format --style=Google -n -Werror",
18+
"lint:ios:fix": "find packages/*/ios -type f \\( -name '*.h' -o -name '*.cpp' -o -name '*.m' -o -name '*.mm' \\) -not -path '*/generated/*' -print0 | xargs -0 clang-format -i --style=Google",
1719
"lint:markdown": "prettier --check \"docs/**/*.md\"",
1820
"lint:report": "eslint --output-file=eslint-report.json --format=json . --ext .js,.jsx,.ts,.tsx",
1921
"lint:spellcheck": "spellchecker --quiet --files=\"docs/**/*.md\" --dictionaries=\"./.spellcheck.dict.txt\" --reports=\"spelling.json\" --plugins spell indefinite-article repeated-words syntax-mentions syntax-urls frontmatter",
@@ -67,16 +69,17 @@
6769
"@babel/plugin-proposal-private-property-in-object": "^7.21.11",
6870
"@babel/plugin-transform-class-properties": "^7.27.1",
6971
"@babel/preset-env": "^7.28.5",
70-
"@eslint/eslintrc": "^3.3.1",
72+
"@eslint/eslintrc": "^3.3.3",
7173
"@eslint/js": "^9.39.1",
7274
"@firebase/rules-unit-testing": "^5.0.0",
73-
"@inquirer/prompts": "^7.10.0",
75+
"@inquirer/prompts": "^7.10.1",
7476
"@octokit/core": "^7.0.6",
77+
"@react-native-community/cli": "latest",
7578
"@tsconfig/node-lts": "^22.0.4",
7679
"@types/react": "~19.0.14",
7780
"@types/react-native": "^0.73.0",
78-
"@typescript-eslint/eslint-plugin": "^8.48.0",
79-
"@typescript-eslint/parser": "^8.48.0",
81+
"@typescript-eslint/eslint-plugin": "^8.48.1",
82+
"@typescript-eslint/parser": "^8.48.1",
8083
"babel-jest": "^30.2.0",
8184
"clang-format": "^1.8.0",
8285
"conventional-changelog-cli": "^4.1.0",
@@ -87,19 +90,19 @@
8790
"eslint-plugin-prettier": "^5.5.4",
8891
"eslint-plugin-react": "^7.37.5",
8992
"firebase": "^12.6.0",
90-
"firebase-tools": "^14.26.0",
93+
"firebase-tools": "^14.27.0",
9194
"genversion": "^3.2.0",
9295
"google-java-format": "^2.0.4",
9396
"jest": "^30.2.0",
94-
"lerna": "^9.0.1",
97+
"lerna": "^9.0.3",
9598
"patch-package": "^8.0.1",
96-
"prettier": "^3.6.2",
99+
"prettier": "^3.7.4",
97100
"regenerator-transform": "^0.15.2",
98101
"rimraf": "^6.1.2",
99102
"run-script-os": "^1.1.6",
100103
"shelljs": "^0.10.0",
101-
"spellchecker-cli": "^7.0.1",
102-
"ts-jest": "^29.4.5",
104+
"spellchecker-cli": "^7.0.2",
105+
"ts-jest": "^29.4.6",
103106
"ts-node": "^10.9.2",
104107
"typescript": "^5.9.3"
105108
},
@@ -112,5 +115,5 @@
112115
"tests"
113116
]
114117
},
115-
"packageManager": "yarn@4.10.3"
118+
"packageManager": "yarn@4.12.0"
116119
}

0 commit comments

Comments
 (0)