Repository navigation
docs: add a release guide with a browser smoke test of the published build - #849
Merged
tyler-reitz merged 3 commits intoNov 2, 2026
Merged
Conversation
…build Adds "Publishing a release" to CONTRIBUTING.md and scripts/release-smoke/run.sh, which installs a published version into a Vite app and a Next.js App Router app, production-builds both, renders a hook in headless Chromium, and fails on any page error, console error or failed request. It fails on 4.2.4 (FirebaseExtended#759) and passes on 4.3.0. Refs FirebaseExtended#848
jhuleatt
approved these changes
Nov 2, 2026
jhuleatt
left a comment
Collaborator
There was a problem hiding this comment.
Looks good, approving so you aren't blocked. A few things from cutting 4.3.0 worth folding in if you want:
- In step 2,
mainrequires an approved PR (enforce_adminsis off), so only repo admins can commit and push the version bump directly tomain. Non-admin maintainers need to land the bump through a PR. Might also be worth showing thegit commitandgit pushafternpm version --no-git-tag-version. - In step 3, since
reactfire@<exp version>is already installed in a scratch folder, a quick one-liner can also cover bare Node ESM (#846), CJSrequire('reactfire'), and the baked-inversionstring:node -e "import('reactfire').then(m => console.log('ESM:', m.version)); console.log('CJS:', require('reactfire').version)" - In step 4, targeting the bump commit SHA instead of
mainavoids tagging a newer commit if Dependabot or another PR merges while step 3 is running. - Also in step 4, GitHub's auto-generated release notes pull in dozens of Dependabot bumps from
/example,/functions, anddevDependenciesthat don't ship in the package. For4.3.0we stripped those out by hand, so it's worth mentioning here (or excludingdependabot[bot]via.github/release.ymlin a follow-up).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #848, taking the suggestion there: a release guide an agent or maintainer can follow, instead of another CI pipeline.
What changed
.github/CONTRIBUTING.mdgets a "Publishing a release (maintainers)" section with five steps: confirmmainis green, bump the version, smoke-test the bump commit's-expbuild in a Vite app and a Next.js App Router app, publish a GitHub release, verify.Verification
The smoke test in step 3 was run as written, against production builds in headless Chromium:
Calling `require` for "react" in an environment that doesn't expose the `require` function/(dynamic usage of require is not supported)main)Caveats
test.yamlandbuild.shimplement today. The 4.3.0 release run published from CI.