Patch Changes
-
#3515
d274172Thanks @ascorbic! - Releases EmDash 1.0. This release includes breaking changes, such as removing APIs deprecated during 0.x. The other entries for this version describe each one and how to migrate; check them before upgrading from 0.42.From this release, breaking changes ship only in a new major version.
The first 1.x version is 1.0.1. npm also lists a deprecated
emdash@1.0.0, published by mistake from 0.7-era code; do not install it. -
#3518
bc54886Thanks @ascorbic! - Moves the subpaths that only EmDash itself loads underemdash/internal/, and the D1 and Hyperdrive migration executors under@emdash-cms/cloudflare/internal/. These paths are not public API: their exports can change or be removed in any release.Sites that use
emdash()inastro.config.mjsneed no changes. The integration, the database, cache and media adapter helpers, and the first-party Cloudflare, workerd sandbox and plugin-test packages all load the new paths automatically.The following subpaths are removed:
Removed subpath Now loaded from emdash/routes/*emdash/internal/routes/*emdash/middleware/authemdash/internal/middleware/authemdash/middleware/redirectemdash/internal/middleware/redirectemdash/middleware/request-contextemdash/internal/middleware/request-contextemdash/middleware/setupemdash/internal/middleware/setupemdash/middleware/media-usage-write-fenceemdash/internal/middleware/media-usage-write-fenceemdash/image-endpointemdash/internal/image-endpointemdash/media/local-runtimeemdash/internal/media/local-runtimeemdash/object-cache/memoryemdash/internal/object-cache/memoryemdash/db/sqlite-migrationsemdash/internal/db/sqlite-migrationsemdash/db/libsql-migrationsemdash/internal/db/libsql-migrationsemdash/db/postgres-migrationsemdash/internal/db/postgres-migrationsemdash/database/migration-lockemdash/internal/database/migration-lockemdash/database/pg-migration-lockemdash/internal/database/pg-migration-lockemdash/plugins/hostemdash/internal/plugins/hostemdash/plugins/http-wireemdash/internal/plugins/http-wireemdash/plugins/adapt-sandbox-entryemdash/internal/plugins/adapt-sandbox-entryemdash/plugin-test-runtimeemdash/internal/plugin-test-runtimeemdash/testing/registryemdash/internal/testing/registry@emdash-cms/cloudflare/db/d1-migrations@emdash-cms/cloudflare/internal/db/d1-migrations@emdash-cms/cloudflare/db/hyperdrive-migrations@emdash-cms/cloudflare/internal/db/hyperdrive-migrationsWhat should I do?
If your project or package imports one of the removed subpaths directly, replace the import with a public entrypoint:
- To configure a database, object cache or media provider, use
sqlite(),libsql()orpostgres()fromemdash/db,memoryCache()fromemdash/astro, orlocalMedia()fromemdash/media, instead of writing their entrypoints by hand. - To test a plugin, use
@emdash-cms/plugin-testinstead ofemdash/plugin-test-runtime. - To run your own middleware before EmDash's, set the
middleware.outeroption ofemdash(). The internal auth, setup, redirect and request-context middleware have no public replacement.
Rebuild after upgrading.
emdash migraterejects a migration manifest written by an earlier EmDash version. - To configure a database, object cache or media provider, use
-
#3519
0b4be2cThanks @ascorbic! - Removes the deprecatedCommentsandCommentFormexports fromemdash/ui. Sites that still import either component fromemdash/uifail to build after upgrading.Import them from
emdash/ui/commentsinstead:- import { Comments, CommentForm } from "emdash/ui"; + import { Comments, CommentForm } from "emdash/ui/comments";
The components themselves are unchanged. Importing them from
emdash/ui/commentsalso keeps comment styles off pages that don't render comments. -
#3519
0b4be2cThanks @ascorbic! - Removes the deprecatedemdash devandemdash auth secretCLI commands. Scripts that still call either command now exit withUnknown command.- Replace
emdash devwith the site's own dev script, such aspnpm dev, or runastro devdirectly. The site then uses its configured database adapter instead of a local./data.db, whichemdash devcreated and migrated even on D1 sites. Theurlkey underemdashinpackage.jsonwas only read byemdash dev --typesand can be deleted. To generate types from a remote instance, runemdash types --url <site-url>, or setEMDASH_URL. - Remove
emdash auth secretfrom scripts. New installations don't needEMDASH_AUTH_SECRET. Existing installations should keep the value they already have, since EmDash still reads it to keep commenter-IP hashes stable. To encrypt plugin secrets at rest, generateEMDASH_ENCRYPTION_KEYwithemdash secrets generate.
- Replace
-
#3519
0b4be2cThanks @ascorbic! - Removes the deprecatedexperimental.registryintegration option. Sites that still set it now fail at startup with an error pointing to the top-levelregistryoption, including sites that already setregistryalongside it. The value is not silently ignored, because that would drop the configured aggregator and release-age policy.Move the value unchanged. The top-level option accepts the same URL string or configuration object:
emdash({ - experimental: { - registry: { - aggregatorUrl: "https://registry.example.com", - policy: { minimumReleaseAge: "48h" }, - }, - }, + registry: { + aggregatorUrl: "https://registry.example.com", + policy: { minimumReleaseAge: "48h" }, + }, });The
experimentaloption is also removed from theEmDashConfigtype, because it has no remaining settings. An emptyexperimental: {}block is still ignored at runtime, but TypeScript configs should delete it. Registry configuration errors in the admin now always name the top-levelregistry.*setting. -
#3519
0b4be2cThanks @ascorbic! - Adds a startup warning when an installed or configured plugin declares deprecated capability names such asread:content,network:fetchorpage:inject. The warning appears once per plugin and lists each current replacement, for exampleread:content → content:read. The deprecated names keep working throughout 1.x. If a plugin you use triggers the warning, update it, or ask its author to publish a version that uses the current names.aiSearch()from@emdash-cms/cloudflarenow declarescontent:read, so it no longer triggers the warning. -
Updated dependencies [
d274172,0b4be2c]:- @emdash-cms/admin@1.0.1-rc.0
- @emdash-cms/auth@1.0.1-rc.0
- @emdash-cms/blocks@1.0.1-rc.0
- @emdash-cms/gutenberg-to-portable-text@1.0.1-rc.0
- @emdash-cms/auth-atproto@0.2.45-rc.0