Skip to content

Releases: withastro/astro

[email protected]

31 Jan 17:38
7ccf950
Compare
Choose a tag to compare

Patch Changes

  • #13113 3a26e45 Thanks @unprintable123! - Fixes the bug that rewrite will pass encoded url to the dynamic routing and cause params mismatch.

  • #13111 23978dd Thanks @ascorbic! - Fixes a bug that caused injected endpoint routes to return not found when trailingSlash was set to always

  • #13112 0fa5c82 Thanks @ematipico! - Fixes a bug where the i18n middleware was blocking a server island request when the prefixDefaultLocale option is set to true

[email protected]

31 Jan 12:32
6430aee
Compare
Choose a tag to compare

Patch Changes

  • #13106 187c4d3 Thanks @ascorbic! - Fixes a bug that caused peer dependency errors when running astro add tailwind

[email protected]

30 Jan 16:08
3b10b97
Compare
Choose a tag to compare

Patch Changes

  • #13095 740eb60 Thanks @ascorbic! - Fixes a bug that caused some dev server asset requests to return 404 when trailingSlash was set to "always"

[email protected]

30 Jan 11:23
f6b7839
Compare
Choose a tag to compare

Minor Changes

  • #12994 5361755 Thanks @ascorbic! - Redirects trailing slashes for on-demand pages

    When the trailingSlash option is set to always or never, on-demand rendered pages will now redirect to the correct URL when the trailing slash doesn't match the configuration option. This was previously the case for static pages, but now works for on-demand pages as well.

    Now, it doesn't matter whether your visitor navigates to /about/, /about, or even /about///. In production, they'll always end up on the correct page. For GET requests, the redirect will be a 301 (permanent) redirect, and for all other request methods, it will be a 308 (permanent, and preserve the request method) redirect.

    In development, you'll see a helpful 404 page to alert you of a trailing slash mismatch so you can troubleshoot routes.

  • #12979 e621712 Thanks @ematipico! - Adds support for redirecting to external sites with the redirects configuration option.

    Now, you can redirect routes either internally to another path or externally by providing a URL beginning with http or https:

    // astro.config.mjs
    import { defineConfig } from 'astro/config';
    
    export default defineConfig({
      redirects: {
        '/blog': 'https://example.com/blog',
        '/news': {
          status: 302,
          destination: 'https://example.com/news',
        },
      },
    });
  • #13084 0f3be31 Thanks @ematipico! - Adds a new experimental virtual module astro:config that exposes a type-safe subset of your astro.config.mjs configuration

    The virtual module exposes two sub-paths for controlled access to your configuration:

    • astro:config/client: exposes config information that is safe to expose to the client.
    • astro:config/server: exposes additional information that is safe to expose to the server, such as file/dir paths.

    To enable this new virtual module, add the experimental.serializeManifest feature flag to your Astro config:

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

    Then, you can access the module in any file inside your project to import and use values from your Astro config:

    // src/utils.js
    import { trailingSlash } from 'astro:config/client';
    
    function addForwardSlash(path) {
      if (trailingSlash === 'always') {
        return path.endsWith('/') ? path : path + '/';
      } else {
        return path;
      }
    }

    For a complete overview, and to give feedback on this experimental API, see the Serialized Manifest RFC.

Patch Changes

@astrojs/[email protected]

30 Jan 11:23
f6b7839
Compare
Choose a tag to compare

Major Changes

  • #13049 2ed4bd9 Thanks @florian-lefebvre! - Deprecates the integration

    Tailwind CSS now offers a Vite plugin which is the preferred way to use Tailwind 4 in Astro. Please uninstall @astrojs/tailwind and follow the Tailwind documentation for manual installation.

    This updated major version is only provided as a convenience for existing projects until they are able to migrate to the new plugin. It offers no additional functionality and is no longer recommended, but may continue to be used in your projects until it is removed entirely.

@astrojs/[email protected]

30 Jan 11:23
f6b7839
Compare
Choose a tag to compare

Patch Changes

@astrojs/[email protected]

30 Jan 11:23
f6b7839
Compare
Choose a tag to compare

Minor Changes

  • #12850 db252e0 Thanks @colinbate! - Adds support for TOML frontmatter in .md and .mdx files

    Astro 5.2 automatically identifies the format of your Markdown and MDX frontmatter based on the delimiter used. With +++ as a delimiter (instead of the --- YAML code fence), your frontmatter will automatically be recognized and parsed as TOML.

    This is useful for adding existing content files with TOML frontmatter to your project from another framework such as Hugo.

    TOML frontmatter can also be used with content collections, and files with different frontmatter languages can live together in the same project.

    No configuration is required to use TOML frontmatter in your content files. Your delimiter will indicate your chosen frontmatter language:

    +++
    date = 2025-01-30
    title = 'Use TOML frontmatter in Astro!'
    [author]
    name = 'Colin Bate'
    +++
    
    # Support for TOML frontmatter is here!

@astrojs/[email protected]

30 Jan 11:23
f6b7839
Compare
Choose a tag to compare

Patch Changes

@astrojs/[email protected]

30 Jan 11:23
f6b7839
Compare
Choose a tag to compare

Minor Changes

[email protected]

27 Jan 11:48
0879cc2
Compare
Choose a tag to compare

Patch Changes

  • #13058 1a14b53 Thanks @ascorbic! - Fixes broken type declaration

  • #13059 e36837f Thanks @ascorbic! - Fixes a bug that caused tsconfig path aliases to break if there was more than one wildcard pattern

  • #13045 c7f1366 Thanks @mtwilliams-code! - Fixes a bug where the some utility functions of the astro:i18n virtual module would return an incorrect result when trailingSlash is set to never