Skip to content

2.0.0

Choose a tag to compare

@3m1n3nc3 3m1n3nc3 released this 24 Apr 06:52
· 471 commits to main since this release

Arkorm 2.0.0 marks the completion of the adapter-first migration (Phase 1 - Phase 7).
The runtime is now fully adapter-first by default, with Prisma support retained as an explicit compatibility path for the 2.x line.

Highlights

  • Completed the full migration from delegate-shaped internals to adapter-first execution.
  • Established Arkorm-owned query and relation planning as the primary runtime model.
  • Added and matured SQL-backed execution through the Kysely adapter.
  • Kept Prisma available as a compatibility adapter during 2.x, with clear capability boundaries.
  • Finalized docs, tests, and merge-readiness criteria for the 2.0 baseline.

What Is New In 2.0.0

Adapter-first architecture is now baseline

  • Model and query execution now run through Arkorm adapter contracts.
  • Core internals no longer rely on Prisma delegate semantics in normal runtime paths.
  • Adapter capabilities define supported advanced features explicitly.

Query and typing surface modernization

  • Core typing now uses neutral query-schema contracts.
  • Delegate-shaped helper names remain only as compatibility aliases in 2.x.
  • Arkorm-owned specs now drive relation filtering, aggregation, and eager loading behavior.

Relation execution and eager loading

  • Set-based eager loading is fully integrated for core relation types.
  • Constrained eager loading is compiled into Arkorm relation load plans.
  • Model.load and QueryBuilder.with share the same adapter-first relation planning path.

Kysely/Postgres execution maturity

  • Core CRUD, pagination, relation filters, and relation aggregates are SQL-backed on Kysely.
  • Postgres conflict-handling and RETURNING-aware mutation paths are supported.
  • Query-shape and parity regressions were expanded to protect adapter-first behavior.

Prisma compatibility in 2.x

  • Prisma remains supported as a compatibility adapter.
  • Unsupported compatibility edges now fail explicitly instead of silently degrading.
  • Delegate-first APIs are deprecated compatibility surfaces, with removal targeted for 3.0.

Migration Notes

If you are upgrading from 1.x

  • Move runtime bootstrap to adapter-first configuration.
  • Prefer one top-level adapter for application runtime.
  • Keep Prisma only where compatibility behavior is intentionally required.
  • Treat deprecated delegate-first APIs as transitional and avoid them in new code.

If you are already on 2.0.0-next.x

  • 2.0.0 consolidates and stabilizes the completed Phase 1 - Phase 7 migration work.
  • Adapter-first behavior should now be considered the default contract for new development.

Compatibility and Deprecations

  • Prisma compatibility adapter remains supported through the 2.x line.
  • Deprecated delegate-first APIs and delegate-shaped aliases remain compatibility-only in 2.x.
  • Removal target for those deprecated compatibility surfaces is Arkorm 3.0.

Validation and Quality

  • Regression and parity coverage now verify adapter-first behavior across Prisma compatibility and Kysely paths.
  • Relation execution, eager loading, relation filters, and aggregates are covered through focused integration scenarios.
  • Full-suite validation has been maintained as part of the migration closeout.

Thank You

Thank you to everyone who tested migration paths, reported edge cases, and helped validate the adapter-first architecture across real workflows.

Full Changelog: 1.3.2...2.0.0