github withastro/astro astro@0.25.0

2 years ago

Upgrading from v0.24 or earlier? Check out the Migration Guide.

Breaking & Minor Changes

  • #2820 Thanks @FredKSchott! - New Astro Integrations System!
    Full Documentation

  • #2849 72ef7ae6 Thanks @natemoo-re! - Introduce new astro add command to automatically configure integrations.

    npx astro add
  • #2833 79545412 Thanks @natemoo-re! - This PR introduces a new internal CSS parser for @astrojs/compiler. See withastro/compiler#329 for more details.

    This fixes Astro's support for modern CSS syntax like @container, @layer, and nesting. Note While Astro now correctly parses this modern syntax, it does not automatically compile features for browser compatability purposes.

  • #2824 0a3d3e51 Thanks @bholmesdev! - Change shiki to our default markdown syntax highlighter. This includes updates to all relevant starter projects that used Prism-specific styles.

Patch Changes

  • #2879 80034c6c Thanks @matthewp! - Netlify Adapter

    This change adds a Netlify adapter that uses Netlify Functions. You can use it like so:

    import { defineConfig } from 'astro/config';
    import netlify from '@astrojs/netlify/functions';
    
    export default defineConfig({
    	adapter: netlify(),
    });
  • #2871 5029382a Thanks @FredKSchott! - Fix a bug where tailwind integration wouldn't apply to markdown pages

  • #2852 96372e6b Thanks @bholmesdev! - Fix "isSelfAccepting" exception when using the new @astrojs/react integration in development

  • #2798 4c25a1c2 Thanks @matthewp! - Implement APIs for headers for SSR flag

  • #2855 5e52814d Thanks @matthewp! - Adds support for the Node adapter (SSR)

    This provides the first SSR adapter available using the integrations API. It is a Node.js adapter that can be used with the http module or any framework that wraps it, like Express.

    In your astro.config.mjs use:

    import nodejs from '@astrojs/node';
    
    export default {
    	adapter: nodejs(),
    };

    After performing a build there will be a dist/server/entry.mjs module that works like a middleware function. You can use with any framework that supports the Node request and response objects. For example, with Express you can do:

    import express from 'express';
    import { handler as ssrHandler } from '@astrojs/node';
    
    const app = express();
    app.use(handler);
    
    app.listen(8080);
  • #2859 c781b12f Thanks @natemoo-re! - Ensure private, internal APIs are not enumerable

  • #2835 77ebab8b Thanks @natemoo-re! - Fix missing postcss-load-config dependency

  • #2878 2db97f10 Thanks @bholmesdev! - Move the built-in Prism component from astro/components to @astrojs/prism/component.

  • #2857 1061d647 Thanks @bholmesdev! - Improve granularity of production build logs. This now lists:

    • the "data collection" build step, with timeout warnings for larger imports. This is useful for understanding large import.meta.glob calls.
    • the Vite client bundling step. This logs all Vite production build info to clarify what assets are built alongside your HTML.
    • the route generation step, complete with all output HTML files for a given input file. This is especially useful when debugging getStaticPaths.
    • fixes "0 pages in Infinityms" log when building to SSR
  • #2825 1cd7184c Thanks @hlynursmari1! - Fix island deduplication ignoring props.Re-resolves an issue initially patched in #846 but seemingly lost in the 0.21.0 mega-merge (d84bfe7).This change makes the component render step account for all props, even if they don't affect the generated HTML, when deduplicating island mounts.

  • #2873 e4025d1f Thanks @matthewp! - Improves the build by building to a single file for rendering

  • #2815 7b9d042d Thanks @matthewp! - Allows dynamic routes in SSR to avoid implementing getStaticPaths

  • #2875 55712277 Thanks @FredKSchott! - Generalize output assets to avoid adblocker false positives

  • #2848 981e2a83 Thanks @FredKSchott! - add missing injected "page" scripts into markdown pages

  • #2872 098f6f6b Thanks @bholmesdev! - Fix isSelfAccepting errors when using the Preact integration with the Astro dev server

  • Updated dependencies [0a3d3e51, 2db97f10, d763ec18]:

    • @astrojs/markdown-remark@0.7.0
    • @astrojs/prism@0.4.1

Don't miss a new astro release

NewReleases is sending notifications on new releases.