diff options
34 files changed, 104 insertions, 114 deletions
diff --git a/.changeset/brave-pots-drop.md b/.changeset/brave-pots-drop.md deleted file mode 100644 index 54de40497..000000000 --- a/.changeset/brave-pots-drop.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -'astro': minor ---- - -Page Partials - -A page component can now be identified as a **partial** page, which will render its HTML content without including a `<! DOCTYPE html>` declaration nor any `<head>` content. - -A rendering library, like htmx or Stimulus or even just jQuery can access partial content on the client to dynamically update only parts of a page. - -Pages marked as partials do not have a `doctype` or any head content included in the rendered result. You can mark any page as a partial by setting this option: - - -```astro ---- -export const partial = true; ---- - -<li>This is a single list item.</li> -``` - -Other valid page files that can export a value (e.g. `.mdx`) can also be marked as partials. - -Read more about [Astro page partials](/en/core-concepts/astro-pages/#partials) in our documentation. diff --git a/.changeset/good-mirrors-bake.md b/.changeset/good-mirrors-bake.md deleted file mode 100644 index c5968f5ba..000000000 --- a/.changeset/good-mirrors-bake.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'astro': minor ---- - -Improved image optimization performance - -Astro will now generate optimized images concurrently at build time, which can significantly speed up build times for sites with many images. Additionally, Astro will now reuse the same buffer for all variants of an image. This should improve performance for websites with many variants of the same image, especially when using remote images. - -No code changes are required to take advantage of these improvements. diff --git a/.changeset/large-stingrays-fry.md b/.changeset/large-stingrays-fry.md deleted file mode 100644 index a70e37714..000000000 --- a/.changeset/large-stingrays-fry.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -'astro': minor ---- - - -Dev Overlay (experimental) - -Provides a new dev overlay for your browser preview that allows you to inspect your page islands, see helpful audits on performance and accessibility, and more. A Dev Overlay Plugin API is also included to allow you to add new features and third-party integrations to it. - -You can enable access to the dev overlay and its API by adding the following flag to your Astro config: - -```ts -// astro.config.mjs -export default { - experimental: { - devOverlay: true - } -}; -``` - -Read the [Dev Overlay Plugin API documentation](https://docs.astro.build/en/reference/dev-overlay-plugin-reference/) for information about building your own plugins to integrate with Astro's dev overlay. diff --git a/.changeset/witty-waves-rhyme.md b/.changeset/witty-waves-rhyme.md deleted file mode 100644 index 67e30b8db..000000000 --- a/.changeset/witty-waves-rhyme.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'astro': minor ---- - -Moves the logic for overriding the image service out of core and into adapters. Also fixes a regression where a valid `astro:assets` image service configuration could be overridden. diff --git a/examples/basics/package.json b/examples/basics/package.json index 3841a5724..20dff3741 100644 --- a/examples/basics/package.json +++ b/examples/basics/package.json @@ -11,6 +11,6 @@ "astro": "astro" }, "dependencies": { - "astro": "^3.3.4" + "astro": "^3.4.0" } } diff --git a/examples/blog/package.json b/examples/blog/package.json index bc9336366..52a3eb68a 100644 --- a/examples/blog/package.json +++ b/examples/blog/package.json @@ -14,6 +14,6 @@ "@astrojs/mdx": "^1.1.3", "@astrojs/rss": "^3.0.0", "@astrojs/sitemap": "^3.0.2", - "astro": "^3.3.4" + "astro": "^3.4.0" } } diff --git a/examples/component/package.json b/examples/component/package.json index c6dede317..022d2b519 100644 --- a/examples/component/package.json +++ b/examples/component/package.json @@ -15,7 +15,7 @@ ], "scripts": {}, "devDependencies": { - "astro": "^3.3.4" + "astro": "^3.4.0" }, "peerDependencies": { "astro": "^3.0.0" diff --git a/examples/framework-alpine/package.json b/examples/framework-alpine/package.json index 0e433cee7..8009b8c42 100644 --- a/examples/framework-alpine/package.json +++ b/examples/framework-alpine/package.json @@ -14,6 +14,6 @@ "@astrojs/alpinejs": "^0.3.1", "@types/alpinejs": "^3.7.2", "alpinejs": "^3.12.3", - "astro": "^3.3.4" + "astro": "^3.4.0" } } diff --git a/examples/framework-lit/package.json b/examples/framework-lit/package.json index ddbeb50b5..74943b7c9 100644 --- a/examples/framework-lit/package.json +++ b/examples/framework-lit/package.json @@ -13,7 +13,7 @@ "dependencies": { "@astrojs/lit": "^3.0.2", "@webcomponents/template-shadowroot": "^0.2.1", - "astro": "^3.3.4", + "astro": "^3.4.0", "lit": "^2.8.0" } } diff --git a/examples/framework-multiple/package.json b/examples/framework-multiple/package.json index ddfda19c5..d86045c76 100644 --- a/examples/framework-multiple/package.json +++ b/examples/framework-multiple/package.json @@ -16,7 +16,7 @@ "@astrojs/solid-js": "^3.0.2", "@astrojs/svelte": "^4.0.3", "@astrojs/vue": "^3.0.2", - "astro": "^3.3.4", + "astro": "^3.4.0", "preact": "^10.17.1", "react": "^18.2.0", "react-dom": "^18.2.0", diff --git a/examples/framework-preact/package.json b/examples/framework-preact/package.json index a1f5e2478..775da5c42 100644 --- a/examples/framework-preact/package.json +++ b/examples/framework-preact/package.json @@ -13,7 +13,7 @@ "dependencies": { "@astrojs/preact": "^3.0.1", "@preact/signals": "^1.2.1", - "astro": "^3.3.4", + "astro": "^3.4.0", "preact": "^10.17.1" } } diff --git a/examples/framework-react/package.json b/examples/framework-react/package.json index f91e9fdaf..5dbfe55f1 100644 --- a/examples/framework-react/package.json +++ b/examples/framework-react/package.json @@ -14,7 +14,7 @@ "@astrojs/react": "^3.0.4", "@types/react": "^18.2.21", "@types/react-dom": "^18.2.7", - "astro": "^3.3.4", + "astro": "^3.4.0", "react": "^18.2.0", "react-dom": "^18.2.0" } diff --git a/examples/framework-solid/package.json b/examples/framework-solid/package.json index c3dd50c1d..d300adf90 100644 --- a/examples/framework-solid/package.json +++ b/examples/framework-solid/package.json @@ -12,7 +12,7 @@ }, "dependencies": { "@astrojs/solid-js": "^3.0.2", - "astro": "^3.3.4", + "astro": "^3.4.0", "solid-js": "^1.7.11" } } diff --git a/examples/framework-svelte/package.json b/examples/framework-svelte/package.json index f71a3b5d1..389378569 100644 --- a/examples/framework-svelte/package.json +++ b/examples/framework-svelte/package.json @@ -12,7 +12,7 @@ }, "dependencies": { "@astrojs/svelte": "^4.0.3", - "astro": "^3.3.4", + "astro": "^3.4.0", "svelte": "^4.2.0" } } diff --git a/examples/framework-vue/package.json b/examples/framework-vue/package.json index 8fd1813e5..bb6605170 100644 --- a/examples/framework-vue/package.json +++ b/examples/framework-vue/package.json @@ -12,7 +12,7 @@ }, "dependencies": { "@astrojs/vue": "^3.0.2", - "astro": "^3.3.4", + "astro": "^3.4.0", "vue": "^3.3.4" } } diff --git a/examples/hackernews/package.json b/examples/hackernews/package.json index b0f9d3f2a..492c6d935 100644 --- a/examples/hackernews/package.json +++ b/examples/hackernews/package.json @@ -12,6 +12,6 @@ }, "dependencies": { "@astrojs/node": "^6.0.3", - "astro": "^3.3.4" + "astro": "^3.4.0" } } diff --git a/examples/integration/package.json b/examples/integration/package.json index 6bf1d921b..8c1d83137 100644 --- a/examples/integration/package.json +++ b/examples/integration/package.json @@ -15,7 +15,7 @@ ], "scripts": {}, "devDependencies": { - "astro": "^3.3.4" + "astro": "^3.4.0" }, "peerDependencies": { "astro": "^3.0.0" diff --git a/examples/middleware/package.json b/examples/middleware/package.json index b3cc72b7b..4510a322a 100644 --- a/examples/middleware/package.json +++ b/examples/middleware/package.json @@ -13,7 +13,7 @@ }, "dependencies": { "@astrojs/node": "^6.0.3", - "astro": "^3.3.4", + "astro": "^3.4.0", "html-minifier": "^4.0.0" } } diff --git a/examples/minimal/package.json b/examples/minimal/package.json index 6445cfb71..f3f15ad56 100644 --- a/examples/minimal/package.json +++ b/examples/minimal/package.json @@ -11,6 +11,6 @@ "astro": "astro" }, "dependencies": { - "astro": "^3.3.4" + "astro": "^3.4.0" } } diff --git a/examples/non-html-pages/package.json b/examples/non-html-pages/package.json index 7804b2899..a2a214f73 100644 --- a/examples/non-html-pages/package.json +++ b/examples/non-html-pages/package.json @@ -11,6 +11,6 @@ "astro": "astro" }, "dependencies": { - "astro": "^3.3.4" + "astro": "^3.4.0" } } diff --git a/examples/portfolio/package.json b/examples/portfolio/package.json index 360462377..1324f999e 100644 --- a/examples/portfolio/package.json +++ b/examples/portfolio/package.json @@ -11,6 +11,6 @@ "astro": "astro" }, "dependencies": { - "astro": "^3.3.4" + "astro": "^3.4.0" } } diff --git a/examples/ssr/package.json b/examples/ssr/package.json index 6d706aa2d..9d42a06c0 100644 --- a/examples/ssr/package.json +++ b/examples/ssr/package.json @@ -14,7 +14,7 @@ "dependencies": { "@astrojs/node": "^6.0.3", "@astrojs/svelte": "^4.0.3", - "astro": "^3.3.4", + "astro": "^3.4.0", "svelte": "^4.2.0" } } diff --git a/examples/view-transitions/package.json b/examples/view-transitions/package.json index d3990c375..6d6a39851 100644 --- a/examples/view-transitions/package.json +++ b/examples/view-transitions/package.json @@ -12,6 +12,6 @@ "devDependencies": { "@astrojs/tailwind": "^5.0.2", "@astrojs/node": "^6.0.3", - "astro": "^3.3.4" + "astro": "^3.4.0" } } diff --git a/examples/with-markdoc/package.json b/examples/with-markdoc/package.json index 4e63077aa..f44e4ce79 100644 --- a/examples/with-markdoc/package.json +++ b/examples/with-markdoc/package.json @@ -12,6 +12,6 @@ }, "dependencies": { "@astrojs/markdoc": "^0.7.0", - "astro": "^3.3.4" + "astro": "^3.4.0" } } diff --git a/examples/with-markdown-plugins/package.json b/examples/with-markdown-plugins/package.json index 6afd7f7fa..a912f74bb 100644 --- a/examples/with-markdown-plugins/package.json +++ b/examples/with-markdown-plugins/package.json @@ -12,7 +12,7 @@ }, "dependencies": { "@astrojs/markdown-remark": "^3.3.0", - "astro": "^3.3.4", + "astro": "^3.4.0", "hast-util-select": "^5.0.5", "rehype-autolink-headings": "^6.1.1", "rehype-slug": "^5.1.0", diff --git a/examples/with-markdown-shiki/package.json b/examples/with-markdown-shiki/package.json index 76fa92411..7f32c1365 100644 --- a/examples/with-markdown-shiki/package.json +++ b/examples/with-markdown-shiki/package.json @@ -11,6 +11,6 @@ "astro": "astro" }, "dependencies": { - "astro": "^3.3.4" + "astro": "^3.4.0" } } diff --git a/examples/with-mdx/package.json b/examples/with-mdx/package.json index 484aaa44c..ae6dcf755 100644 --- a/examples/with-mdx/package.json +++ b/examples/with-mdx/package.json @@ -13,7 +13,7 @@ "dependencies": { "@astrojs/mdx": "^1.1.3", "@astrojs/preact": "^3.0.1", - "astro": "^3.3.4", + "astro": "^3.4.0", "preact": "^10.17.1" } } diff --git a/examples/with-nanostores/package.json b/examples/with-nanostores/package.json index 0ada5eec7..8e4dd0418 100644 --- a/examples/with-nanostores/package.json +++ b/examples/with-nanostores/package.json @@ -13,7 +13,7 @@ "dependencies": { "@astrojs/preact": "^3.0.1", "@nanostores/preact": "^0.5.0", - "astro": "^3.3.4", + "astro": "^3.4.0", "nanostores": "^0.9.3", "preact": "^10.17.1" } diff --git a/examples/with-tailwindcss/package.json b/examples/with-tailwindcss/package.json index e8e3697ad..560b31801 100644 --- a/examples/with-tailwindcss/package.json +++ b/examples/with-tailwindcss/package.json @@ -14,7 +14,7 @@ "@astrojs/mdx": "^1.1.3", "@astrojs/tailwind": "^5.0.2", "@types/canvas-confetti": "^1.6.0", - "astro": "^3.3.4", + "astro": "^3.4.0", "autoprefixer": "^10.4.15", "canvas-confetti": "^1.6.0", "postcss": "^8.4.28", diff --git a/examples/with-vite-plugin-pwa/package.json b/examples/with-vite-plugin-pwa/package.json index e088bddb6..583ea1983 100644 --- a/examples/with-vite-plugin-pwa/package.json +++ b/examples/with-vite-plugin-pwa/package.json @@ -11,7 +11,7 @@ "astro": "astro" }, "dependencies": { - "astro": "^3.3.4", + "astro": "^3.4.0", "vite-plugin-pwa": "0.16.4", "workbox-window": "^7.0.0" } diff --git a/examples/with-vitest/package.json b/examples/with-vitest/package.json index 733cd32f7..36c388ebe 100644 --- a/examples/with-vitest/package.json +++ b/examples/with-vitest/package.json @@ -12,7 +12,7 @@ "test": "vitest" }, "dependencies": { - "astro": "^3.3.4", + "astro": "^3.4.0", "vitest": "^0.34.2" } } diff --git a/packages/astro/CHANGELOG.md b/packages/astro/CHANGELOG.md index bc586204b..64916ccf0 100644 --- a/packages/astro/CHANGELOG.md +++ b/packages/astro/CHANGELOG.md @@ -1,5 +1,54 @@ # astro +## 3.4.0 + +### Minor Changes + +- [#8755](https://github.com/withastro/astro/pull/8755) [`fe4079f05`](https://github.com/withastro/astro/commit/fe4079f05ba21c0f3a167f8e3f55eff705506bd2) Thanks [@matthewp](https://github.com/matthewp)! - Page Partials + + A page component can now be identified as a **partial** page, which will render its HTML content without including a `<! DOCTYPE html>` declaration nor any `<head>` content. + + A rendering library, like htmx or Stimulus or even just jQuery can access partial content on the client to dynamically update only parts of a page. + + Pages marked as partials do not have a `doctype` or any head content included in the rendered result. You can mark any page as a partial by setting this option: + + ```astro + --- + export const partial = true; + --- + + <li>This is a single list item.</li> + ``` + + Other valid page files that can export a value (e.g. `.mdx`) can also be marked as partials. + + Read more about [Astro page partials](/en/core-concepts/astro-pages/#partials) in our documentation. + +- [#8821](https://github.com/withastro/astro/pull/8821) [`4740d761a`](https://github.com/withastro/astro/commit/4740d761aeb526dbd79517ebe8cd934f90b17f7c) Thanks [@Princesseuh](https://github.com/Princesseuh)! - Improved image optimization performance + + Astro will now generate optimized images concurrently at build time, which can significantly speed up build times for sites with many images. Additionally, Astro will now reuse the same buffer for all variants of an image. This should improve performance for websites with many variants of the same image, especially when using remote images. + + No code changes are required to take advantage of these improvements. + +- [#8757](https://github.com/withastro/astro/pull/8757) [`e99586787`](https://github.com/withastro/astro/commit/e99586787b6b53d35daf0195ab9835326cea464a) Thanks [@Princesseuh](https://github.com/Princesseuh)! - Dev Overlay (experimental) + + Provides a new dev overlay for your browser preview that allows you to inspect your page islands, see helpful audits on performance and accessibility, and more. A Dev Overlay Plugin API is also included to allow you to add new features and third-party integrations to it. + + You can enable access to the dev overlay and its API by adding the following flag to your Astro config: + + ```ts + // astro.config.mjs + export default { + experimental: { + devOverlay: true, + }, + }; + ``` + + Read the [Dev Overlay Plugin API documentation](https://docs.astro.build/en/reference/dev-overlay-plugin-reference/) for information about building your own plugins to integrate with Astro's dev overlay. + +- [#8880](https://github.com/withastro/astro/pull/8880) [`8c3d4a859`](https://github.com/withastro/astro/commit/8c3d4a859aec0b94cabd14cc56b5bf3e5e973e36) Thanks [@alexanderniebuhr](https://github.com/alexanderniebuhr)! - Moves the logic for overriding the image service out of core and into adapters. Also fixes a regression where a valid `astro:assets` image service configuration could be overridden. + ## 3.3.4 ### Patch Changes diff --git a/packages/astro/package.json b/packages/astro/package.json index d28fe9565..df6d0d4cd 100644 --- a/packages/astro/package.json +++ b/packages/astro/package.json @@ -1,6 +1,6 @@ { "name": "astro", - "version": "3.3.4", + "version": "3.4.0", "description": "Astro is a modern site builder with web best practices, performance, and DX front-of-mind.", "type": "module", "author": "withastro", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c023f9ce4..7e6527923 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -125,7 +125,7 @@ importers: examples/basics: dependencies: astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro examples/blog: @@ -140,13 +140,13 @@ importers: specifier: ^3.0.2 version: link:../../packages/integrations/sitemap astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro examples/component: devDependencies: astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro examples/framework-alpine: @@ -161,7 +161,7 @@ importers: specifier: ^3.12.3 version: 3.13.2 astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro examples/framework-lit: @@ -173,7 +173,7 @@ importers: specifier: ^0.2.1 version: 0.2.1 astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro lit: specifier: ^2.8.0 @@ -197,7 +197,7 @@ importers: specifier: ^3.0.2 version: link:../../packages/integrations/vue astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro preact: specifier: ^10.17.1 @@ -227,7 +227,7 @@ importers: specifier: ^1.2.1 version: 1.2.1(preact@10.18.1) astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro preact: specifier: ^10.17.1 @@ -245,7 +245,7 @@ importers: specifier: ^18.2.7 version: 18.2.14 astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro react: specifier: ^18.2.0 @@ -260,7 +260,7 @@ importers: specifier: ^3.0.2 version: link:../../packages/integrations/solid astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro solid-js: specifier: ^1.7.11 @@ -272,7 +272,7 @@ importers: specifier: ^4.0.3 version: link:../../packages/integrations/svelte astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro svelte: specifier: ^4.2.0 @@ -284,7 +284,7 @@ importers: specifier: ^3.0.2 version: link:../../packages/integrations/vue astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro vue: specifier: ^3.3.4 @@ -296,13 +296,13 @@ importers: specifier: ^6.0.3 version: link:../../packages/integrations/node astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro examples/integration: devDependencies: astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro examples/middleware: @@ -311,7 +311,7 @@ importers: specifier: ^6.0.3 version: link:../../packages/integrations/node astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro html-minifier: specifier: ^4.0.0 @@ -320,19 +320,19 @@ importers: examples/minimal: dependencies: astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro examples/non-html-pages: dependencies: astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro examples/portfolio: dependencies: astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro examples/ssr: @@ -344,7 +344,7 @@ importers: specifier: ^4.0.3 version: link:../../packages/integrations/svelte astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro svelte: specifier: ^4.2.0 @@ -359,7 +359,7 @@ importers: specifier: ^5.0.2 version: link:../../packages/integrations/tailwind astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro examples/with-markdoc: @@ -368,7 +368,7 @@ importers: specifier: ^0.7.0 version: link:../../packages/integrations/markdoc astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro examples/with-markdown-plugins: @@ -377,7 +377,7 @@ importers: specifier: ^3.3.0 version: link:../../packages/markdown/remark astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro hast-util-select: specifier: ^5.0.5 @@ -398,7 +398,7 @@ importers: examples/with-markdown-shiki: dependencies: astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro examples/with-mdx: @@ -410,7 +410,7 @@ importers: specifier: ^3.0.1 version: link:../../packages/integrations/preact astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro preact: specifier: ^10.17.1 @@ -425,7 +425,7 @@ importers: specifier: ^0.5.0 version: 0.5.0(nanostores@0.9.4)(preact@10.18.1) astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro nanostores: specifier: ^0.9.3 @@ -446,7 +446,7 @@ importers: specifier: ^1.6.0 version: 1.6.2 astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro autoprefixer: specifier: ^10.4.15 @@ -464,7 +464,7 @@ importers: examples/with-vite-plugin-pwa: dependencies: astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro vite-plugin-pwa: specifier: 0.16.4 @@ -476,7 +476,7 @@ importers: examples/with-vitest: dependencies: astro: - specifier: ^3.3.4 + specifier: ^3.4.0 version: link:../../packages/astro vitest: specifier: ^0.34.2 |