diff --git a/.changeset/fuzzy-tables-build.md b/.changeset/fuzzy-tables-build.md new file mode 100644 index 0000000000..11c5ea323f --- /dev/null +++ b/.changeset/fuzzy-tables-build.md @@ -0,0 +1,5 @@ +--- +'astro': minor +--- + +Remove experimental flag for custom client directives diff --git a/examples/middleware/astro.config.mjs b/examples/middleware/astro.config.mjs index 1d4662423e..68ba7fac58 100644 --- a/examples/middleware/astro.config.mjs +++ b/examples/middleware/astro.config.mjs @@ -7,7 +7,4 @@ export default defineConfig({ adapter: node({ mode: 'standalone', }), - experimental: { - middleware: true, - }, }); diff --git a/packages/astro/e2e/fixtures/custom-client-directives/astro.config.mjs b/packages/astro/e2e/fixtures/custom-client-directives/astro.config.mjs index 451c7ddd8a..4f32edd6f1 100644 --- a/packages/astro/e2e/fixtures/custom-client-directives/astro.config.mjs +++ b/packages/astro/e2e/fixtures/custom-client-directives/astro.config.mjs @@ -4,9 +4,6 @@ import { fileURLToPath } from 'url'; export default defineConfig({ integrations: [astroClientClickDirective(), astroClientPasswordDirective(), react()], - experimental: { - customClientDirectives: true - } }); function astroClientClickDirective() { diff --git a/packages/astro/src/@types/astro.ts b/packages/astro/src/@types/astro.ts index b8122f6bda..aa2b5706b0 100644 --- a/packages/astro/src/@types/astro.ts +++ b/packages/astro/src/@types/astro.ts @@ -1166,28 +1166,6 @@ export interface AstroUserConfig { */ assets?: boolean; - /** - * @docs - * @name experimental.customClientDirectives - * @type {boolean} - * @default `false` - * @version 2.5.0 - * @description - * Allow integrations to use the [experimental `addClientDirective` API](/en/reference/integrations-reference/#addclientdirective-option) in the `astro:config:setup` hook - * to add custom client directives in Astro files. - * - * To enable this feature, set `experimental.customClientDirectives` to `true` in your Astro config: - * - * ```js - * { - * experimental: { - * customClientDirectives: true, - * }, - * } - * ``` - */ - customClientDirectives?: boolean; - /** * @docs * @name experimental.hybridOutput diff --git a/packages/astro/src/core/config/schema.ts b/packages/astro/src/core/config/schema.ts index d40f2c28ba..0610af5c63 100644 --- a/packages/astro/src/core/config/schema.ts +++ b/packages/astro/src/core/config/schema.ts @@ -43,8 +43,6 @@ const ASTRO_CONFIG_DEFAULTS: AstroUserConfig & any = { experimental: { assets: false, hybridOutput: false, - customClientDirectives: false, - middleware: false, redirects: false, }, }; @@ -208,10 +206,6 @@ export const AstroConfigSchema = z.object({ experimental: z .object({ assets: z.boolean().optional().default(ASTRO_CONFIG_DEFAULTS.experimental.assets), - customClientDirectives: z - .boolean() - .optional() - .default(ASTRO_CONFIG_DEFAULTS.experimental.customClientDirecives), hybridOutput: z.boolean().optional().default(ASTRO_CONFIG_DEFAULTS.experimental.hybridOutput), redirects: z.boolean().optional().default(ASTRO_CONFIG_DEFAULTS.experimental.redirects), }) diff --git a/packages/astro/src/integrations/index.ts b/packages/astro/src/integrations/index.ts index 5d88a1196b..1bc69acc8c 100644 --- a/packages/astro/src/integrations/index.ts +++ b/packages/astro/src/integrations/index.ts @@ -102,11 +102,6 @@ export async function runHookConfigSetup({ updatedSettings.watchFiles.push(path instanceof URL ? fileURLToPath(path) : path); }, addClientDirective: ({ name, entrypoint }) => { - if (!settings.config.experimental.customClientDirectives) { - throw new Error( - `The "${integration.name}" integration is trying to add the "${name}" client directive, but the \`experimental.customClientDirectives\` config is not enabled.` - ); - } if (updatedSettings.clientDirectives.has(name) || addedClientDirectives.has(name)) { throw new Error( `The "${integration.name}" integration is trying to add the "${name}" client directive, but it already exists.` diff --git a/packages/astro/test/fixtures/middleware-dev/astro.config.mjs b/packages/astro/test/fixtures/middleware-dev/astro.config.mjs deleted file mode 100644 index 4379be246f..0000000000 --- a/packages/astro/test/fixtures/middleware-dev/astro.config.mjs +++ /dev/null @@ -1,7 +0,0 @@ -import { defineConfig } from 'astro/config'; - -export default defineConfig({ - experimental: { - middleware: true - } -}); diff --git a/packages/astro/test/fixtures/middleware-ssg/astro.config.mjs b/packages/astro/test/fixtures/middleware-ssg/astro.config.mjs index 2f2e911a8d..a8ce50d378 100644 --- a/packages/astro/test/fixtures/middleware-ssg/astro.config.mjs +++ b/packages/astro/test/fixtures/middleware-ssg/astro.config.mjs @@ -2,7 +2,4 @@ import { defineConfig } from 'astro/config'; export default defineConfig({ output: "static", - experimental: { - middleware: true - } }); diff --git a/packages/astro/test/fixtures/middleware-tailwind/astro.config.mjs b/packages/astro/test/fixtures/middleware-tailwind/astro.config.mjs index e6b93533dd..db58bbf858 100644 --- a/packages/astro/test/fixtures/middleware-tailwind/astro.config.mjs +++ b/packages/astro/test/fixtures/middleware-tailwind/astro.config.mjs @@ -5,7 +5,4 @@ import tailwind from '@astrojs/tailwind'; // https://astro.build/config export default defineConfig({ integrations: [tailwind()], - experimental: { - middleware: true, - } }); diff --git a/packages/astro/test/redirects.test.js b/packages/astro/test/redirects.test.js index e1891e5f35..5cff8fe3d9 100644 --- a/packages/astro/test/redirects.test.js +++ b/packages/astro/test/redirects.test.js @@ -71,7 +71,6 @@ describe('Astro.redirect', () => { root: './fixtures/ssr-redirect/', output: 'static', experimental: { - middleware: true, redirects: true, }, redirects: {