Skip to content

Releases: withastro/astro

[email protected]

13 Jul 13:45
db4095d
Compare
Choose a tag to compare

Patch Changes

@astrojs/[email protected]

13 Jul 13:45
db4095d
Compare
Choose a tag to compare

Patch Changes

@astrojs/[email protected]

13 Jul 13:45
db4095d
Compare
Choose a tag to compare

Minor Changes

@astrojs/[email protected]

13 Jul 13:45
db4095d
Compare
Choose a tag to compare

Minor Changes

  • #7615 f21357b69 Thanks @ematipico! - The Netlify adapter builds to a single function by default. Astro 2.7 added support for splitting your build into separate entry points per page. If you use this configuration, the Netlify adapter will generate a separate function for each page. This can help reduce the size of each function so they are only bundling code used on that page.

    // astro.config.mjs
    import { defineConfig } from 'astro/config';
    import netlify from '@astrojs/netlify/functions';
    
    export default defineConfig({
      output: 'server',
      adapter: netlify(),
      build: {
        split: true,
      },
    });

Patch Changes

@astrojs/[email protected]

13 Jul 13:45
db4095d
Compare
Choose a tag to compare

Patch Changes

[email protected]

11 Jul 14:29
f0666b9
Compare
Choose a tag to compare

Patch Changes

  • #7611 904921cbe Thanks @bluwy! - Ignore content .json files prefixed with underscores (regression)

  • #7618 3669e2d27 Thanks @ematipico! - Add a fallback label if astro info command can't determine the package manager used.

  • #7620 831dfd151 Thanks @delucis! - Filter out astro from integration peer dependencies when running astro add

@astrojs/[email protected]

11 Jul 14:29
f0666b9
Compare
Choose a tag to compare

Minor Changes

Patch Changes

@astrojs/[email protected]

11 Jul 14:29
f0666b9
Compare
Choose a tag to compare

Patch Changes

[email protected]

06 Jul 15:18
f224078
Compare
Choose a tag to compare

Patch Changes

[email protected]

06 Jul 15:18
f224078
Compare
Choose a tag to compare

Minor Changes

  • #7532 9e5fafa2b Thanks @ematipico! - The astro/middleware module exports a new utility called trySerializeLocals.

    This utility can be used by adapters to validate their locals before sending it
    to the Astro middleware.

    This function will throw a runtime error if the value passed is not serializable, so
    consumers will need to handle that error.

  • #7532 9e5fafa2b Thanks @ematipico! - Astro exposes the middleware file path to the integrations in the hook astro:build:ssr

    // myIntegration.js
    import type { AstroIntegration } from 'astro';
    function integration(): AstroIntegration {
      return {
        name: 'fancy-astro-integration',
        hooks: {
          'astro:build:ssr': ({ middlewareEntryPoint }) => {
            if (middlewareEntryPoint) {
              // do some operations
            }
          },
        },
      };
    }

    The middlewareEntryPoint is only defined if the user has created an Astro middleware.

  • #7432 6e9c29579 Thanks @ematipico! - Adds a new command astro info, useful for sharing debugging information about your current environment when you need help!

    astro info

    Output

    Astro version            v2.6.6
    Package manager          pnpm
    Platform                 darwin
    Architecture             arm64
    Adapter                  @astrojs/vercel/serverless
    Integrations             None
    
  • #7532 9e5fafa2b Thanks @ematipico! - The astro/middleware module exports a new API called createContext.

    This a low-level API that adapters can use to create a context that can be consumed by middleware functions.

  • #7532 9e5fafa2b Thanks @ematipico! - Introduced a new build option for SSR, called build.excludeMiddleware.

    // astro.config.mjs
    import { defineConfig } from 'astro/config';
    
    export default defineConfig({
      build: {
        excludeMiddleware: true,
      },
    });

    When enabled, the code that belongs to be middleware won't be imported
    by the final pages/entry points. The user is responsible for importing it and
    calling it manually.

Patch Changes