* udpate exponential backoff params to match other SDKs
* add changeset
* update changeset
* Apply reviewer suggestion
* yarn run format
---------
Co-authored-by: Hanzo Dev <[email protected]>
* feat(ai): implementmulti-speaker speech config; includes tests
* add changeset, fix typo
* fix: yarn format
* fix changeset
* fix changeset typo
* remove unnecessary tests; fix interface description to match proposal
* Generate documentation
* fix: yarn format & lint fix
* add more descriptive changeset
* Adds tests for speech config to check if its correctly passed through to the API requests for both generateContent and generateContentStream methods
* yarn format
* yarn format
* Refine changeset file description
* Fix typo
* format fix
* update description BaseSpeechConfig
* update descriptions
* format doc
* yarn format
* fix @ typo over MultiSpeakerSpeechConfig
* fix: adjusted description wording for the interfaces; fix: public tags to beta
* fix: formatting using @remarks
* fix: typo
* yarn format
* run yarn docgen:all
* update SpeechConfig to beta
* update speech config to beta
* upd SingleSpeakerSpeechConfig description
* doc generation
* fix(auth): prevent null hydration on pagehide/reload
* fix(auth): address reviewer comments for pagehide/reload hydration fix
* add changeset for pagehide/reload null hydration fix
* Fixing Unit tests
* style(auth): format indexed_db.test.ts with prettier
* style(auth): format indexed_db.ts with prettier
* style: format unformatted files in main with prettier
* Revert "style: format unformatted files in main with prettier"
This reverts commit 252efd71911d34610f505794948392da7bbde7fe.
* Fixing Yarn format issues.
---------
Co-authored-by: Teja Gorthi <[email protected]>
* feat(firestore): Add support for 16MB documents
* lint fixes
* use writes in integration tests
* consistent seed name
* add setting but not plugged in
* remove setting, settings fix
* lint
* lint
* fix timeout
* test(auth): fix flakiness in browser integration and webdriver tests
* Fix WebDriver email sign-in test flakiness by using robust JS click/fill
* Ensure deleteApp is called even if resetEmulator fails
* test(auth): catch emulator and deleteApp cleanup errors to prevent failing afterEach hook
* build: do not throw on missing deploying token if deployment is not needed
* build: add --include-dependencies to build_changed so dependents compile successfully
* build: workaround glob-stream singular glob Node 22 bug in firestore integration tests
* chore: revert allowEmpty: true
version 12.16.0
Co-authored-by: Google Open Source Bot <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* update gemini models
* fix extra bracket error
* remove extra duplicate line
* fix lint error
* fix lint
* fix lint error
* fix prettier errors
* update gemini model in e2e
* revert tests
* yarn format
* Update AI integration tests and add new models
* yarn format
* chore: add minor changeset for hybrid fallback model update and revert generate-content.test
* revert old file: got rid of URL context and fixed tests
* revert cloud model change in src/constants to put in another PR
* delete changeset
### Discussion
Upgrade `lerna` from `4.x` to `9.x`. This newer version of `lerna` is powered by `NX`, which also requires a newer minor version bump of `node` in our workflows, and slight changes our test execution parms.
The new version of Lerna is said to improve performance, and that seems to have exacerbated race conditions in the Auth test suites (@firebase/auth and @firebase/auth-compat). To resolve intermittent CI failures caused by these race conditions, I've configured these tests to run in serial instead of concurrently.
Also I needed to bump the node version of our workflows by 2 minor versions (20.10.0 -> 2.12.0) because Lerna 9.0.6 isn't supported in Node 20.10.0.
### Testing
- Clean repo, clean cache, clean dependency installs.
- CI, local builds and tests.
Note: The Firestore WebKit failure in the optional CI execution list is a known issue (b/524995481).
### API Changes
None.
Enable prettier caching (--cache) across all package prettier scripts and the main format script, and optimize the custom license header checker to read only the first 1000 bytes of each file.
Performance Data:
- Repo-wide formatting (yarn format --all):
- Before caching: ~35-40s (uncached formatting + full license check)
- After caching: ~5.8s (cached formatting + header-only license check)
- Speedup: ~6x speedup
* Fix querystring to always use apiKey even if a key is specified in the request
* Update packages/auth/src/api/index.ts
* Fix test helper URL generation to match new querystring order
* Run yarn format
---------
Co-authored-by: Hanzo Dev <[email protected]>
* docs(firestore): fix formatting for docs code snippets
- Fixes `findNearest` example doc formatting, which was causing
formatting to be lost for all subsequent APIs in the TOC in devsite.
- Removes `Example:` and `<p>Example:` from before all code examples,
since we use `@example` for this.
* add changeset firebase
* Update packages/firestore/src/lite-api/pipeline.ts
* update docs
* docs(firestore): fix ref doc issues for piplines (#9912)
* docs(firestore): fix ref doc issues for piplines
* Update packages/firestore/src/lite-api/pipeline.ts
* Update packages/firestore/src/lite-api/pipeline.ts
* docs-devsite
---------
* docs(firestore): add missing `typescript` formatting to docs (#9909)
Adds `typescript` code formatting to the code examples in docs, where
they're missing.
* cleanup
* remove changeset
---------
Co-authored-by: Mark Duckworth <[email protected]>
Co-authored-by: Hanzo Dev <[email protected]>
* fix(ai): format systemInstruction string in ChatSession constructor
* adding a changeset file
* test(ai): verify systemInstruction in sendMessage and sendMessageStream
* remove extra folder in changeset
* remove extra changeset file
* restore deleted file
* adding check if systemInstruction is not null/undefined
* simplify systemInstruction assignment
* fix lint error
* revert to original structure
* chore(ci): make all firestore integration tests optional
* fix: align expressions and pipelines, address review comments, update yarn.lock, and fix package versions
* chore: update yarn.lock after merge
* fix: restore firestore package version and devDependencies to 4.15.0
* implement onSubChange for FID-based registration
* Persist VAPID key in FID registration metadata to fix re-registration issue
* Enforce mutual exclusivity of token and FID registrations in DB layer
* Notify clients in onSubChange on successful FID refresh
- Update onSubChange to notify window clients when FID registration is refreshed. Previously it did not notify clients.
- Update refreshFidRegistrationIfStored to return the current FID.
- Update onSubChange to use the returned FID and only notify if the refresh was successful.
- Add unit tests to verify client notification on success, failure, and when not registered.
- Fix a lint error in window-listener.ts by adding the FidRegisteredPayload interface.
---------
Co-authored-by: Kai Wu <[email protected]>
Context: Currently, experiments are updated at activation only if the fetch response explicitly contains an experiments payload.
Problem: When the last running experiment is stopped, the fetch response returns experiments as undefined. This causes the client to skip the update call entirely, meaning the local state never registers that the experiment was stopped.
Fix: If fetch response does not contain experiments, pass an empty list to update