`8.0.0-rc.17` → `8.0.0-rc.18`
Version policy:
[`docs/oss/versioning.md`](https://github.com/prisma/orm/blob/main/docs/oss/versioning.md).
**Review surface:**
[`docs/releases/v8.0.0-rc.18.md`](https://github.com/prisma/orm/blob/release/8.0.0-rc.18/docs/releases/v8.0.0-rc.18.md)
holds the user-facing notes, mirrored at the top of `CHANGELOG.md`. It
becomes the GitHub Release body verbatim.
**Merging this PR ships the release.** The push to `main` carries the
bumped root `version`; the `Publish to npm` workflow detects the change,
publishes `8.0.0-rc.18` under dist-tag `latest`, and creates a matching
GitHub Release marked pre-release.
**Docs site:** prisma/web#8498 updates the Prisma ORM 8 pages for this
release. Merge it only after this release is published.
## What the diff contains
- **Version bump:** every workspace `package.json`, the `workspace:`
specifiers in `pnpm-lock.yaml`, the `library_version` stamp in
`skills/prisma-8/SKILL.md`, and the Supabase extension's version stamp
in its tracked `contract.json` / `contract.d.ts` artefacts.
- **Upgrade guides:** the 25 pending fragments are synthesized into
`skills/prisma-8/upgrading/app/upgrades/8.0.0-rc.17-to-8.0.0-rc.18/` (41
changes) and `.../extension/upgrades/8.0.0-rc.17-to-8.0.0-rc.18/` (46
changes), with the `rewrite-sql-strings.mjs` script copied under each
guide's `scripts/sql-expression-literals-psl/`. The originals, including
10 no-op declarations, moved unchanged to
`upgrade-instructions/releases/8.0.0-rc.17-to-8.0.0-rc.18/sources/`. The
app guide adds the usual `contract-artifacts-restamp` entry for the
extension version stamp.
- **Release notes:** `docs/releases/v8.0.0-rc.18.md` and the
`CHANGELOG.md` entry.
## Synthesis decisions to check
- Both SQL expression literal fragments declared a change with the id
`storage-hash-may-change-once`. In the guides they are
`psl-storage-hash-may-change-once` and
`ts-storage-hash-may-change-once`, and the TypeScript entry's pointer to
"the PSL instructions in this release" now names the PSL id in the same
guide.
- The extension fragment for variants keyed by discriminator value said
`IncludeExpr.localVariantName` became `localVariantValue`.
`localVariantName` never shipped: in `8.0.0-rc.17` the field was
`localTableName`, which the collection-state fragment already covers
(`include-expr-junction-table`). The guide's entry now points there, and
the `localVariantName` example lines and detection pattern are removed.
- `pnpm check:upgrade-coverage --mode publish --prev v8.0.0-rc.17 --head
HEAD` and `pnpm check:release-notes --mode pr` pass.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Added PSL mixins, weighted multi-field full-text search,
cross-namespace polymorphic variants, and composable SQL values.
* Added SQL ORM `whereUnique` and `firstOrThrow`, MongoDB field renames,
configurable client logging, and PSL language-server symbol navigation.
* **Bug Fixes**
* Improved Prisma 7 verification and inference, MongoDB time-series
updates, row-budget enforcement, empty updates, enum validation, and
required-field migration errors.
* **Breaking Changes**
* Updated SQL, ORM, middleware, migration, MongoDB, enum, TypeScript
contract, and extension-author requirements. See the upgrade guide for
required changes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Signed-off-by: Steven McClankerton <tatarintsev@prisma.io>
Co-authored-by: Steven McClankerton <tatarintsev@prisma.io>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>