Skip to content

fix(deps): update astro monorepo (major) #649

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Dec 3, 2024

This PR contains the following updates:

Package Change Age Confidence
@astrojs/vercel (source) 7.8.2 -> 8.2.5 age confidence
astro (source) ^4.0.0 -> ^5.0.0 age confidence

Release Notes

withastro/astro (@​astrojs/vercel)

v8.2.5

Compare Source

Patch Changes

v8.2.4

Compare Source

Patch Changes

v8.2.3

Compare Source

Patch Changes

v8.2.2

Compare Source

Patch Changes
  • #​14063 de5a253 Thanks @​RobbieTheWagner! - Allow setting domains to undefined in imagesConfig so that remotePatterns can be better utilized for images from a variety of domains.

v8.2.1

Compare Source

Patch Changes
  • #​13972 db8f8be Thanks @​ematipico! - Fixes the internal implementation of the new feature experimentalStaticHeaders, where dynamic routes
    were mapped to use always the same header.

v8.2.0

Compare Source

Minor Changes
  • #​13965 95ece06 Thanks @​ematipico! - Adds support for the experimental static headers Astro feature.

    When the feature is enabled via option experimentalStaticHeaders, and experimental Content Security Policy is enabled, the adapter will generate Response headers for static pages, which allows support for CSP directives that are not supported inside a <meta> tag (e.g. frame-ancestors).

    import { defineConfig } from 'astro/config';
    import vercel from '@&#8203;astrojs/vercel';
    
    export default defineConfig({
      adapter: vercel({
        experimentalStaticHeaders: true,
      }),
      experimental: {
        cps: true,
      },
    });
Patch Changes
  • #​13917 e615216 Thanks @​ascorbic! - The responsive images feature introduced behind a flag in v5.0.0 is no longer experimental and is available for general use.

    The new responsive images feature in Astro automatically generates optimized images for different screen sizes and resolutions, and applies the correct attributes to ensure that images are displayed correctly on all devices.

    Enable the image.responsiveStyles option in your Astro config. Then, set a layout attribute on any or component, or configure a default image.layout, for instantly responsive images with automatically generated srcset and sizes attributes based on the image's dimensions and the layout type.

    Displaying images correctly on the web can be challenging, and is one of the most common performance issues seen in sites. This new feature simplifies the most challenging part of the process: serving your site visitor an image optimized for their viewing experience, and for your website's performance.

    For full details, see the updated Image guide.

Migration from Experimental Responsive Images

The experimental.responsiveImages flag has been removed, and all experimental image configuration options have been renamed to their final names.

If you were using the experimental responsive images feature, you'll need to update your configuration:

Remove the experimental flag
export default defineConfig({
   experimental: {
-    responsiveImages: true,
   },
});
Update image configuration options

During the experimental phase, default styles were applied automatically to responsive images. Now, you need to explicitly set the responsiveStyles option to true if you want these styles applied.

export default defineConfig({
  image: {
+    responsiveStyles: true,
  },
});

The experimental image configuration options have been renamed:

Before:

export default defineConfig({
  image: {
    experimentalLayout: 'constrained',
    experimentalObjectFit: 'cover',
    experimentalObjectPosition: 'center',
    experimentalBreakpoints: [640, 750, 828, 1080, 1280],
    experimentalDefaultStyles: true,
  },
  experimental: {
    responsiveImages: true,
  },
});

After:

export default defineConfig({
  image: {
    layout: 'constrained',
    objectFit: 'cover',
    objectPosition: 'center',
    breakpoints: [640, 750, 828, 1080, 1280],
    responsiveStyles: true, // This is now *false* by default
  },
});
Component usage remains the same

The layout, fit, and position props on <Image> and <Picture> components work exactly the same as before:

<Image
  src={myImage}
  alt="A responsive image"
  layout="constrained"
  fit="cover"
  position="center"
/>

If you weren't using the experimental responsive images feature, no changes are required.

Please see the Image guide for more information on using responsive images in Astro.

v8.1.5

Compare Source

Patch Changes

v8.1.4

Compare Source

Patch Changes

v8.1.3

Compare Source

Patch Changes

v8.1.2

Compare Source

Patch Changes

v8.1.1

Compare Source

Patch Changes

v8.1.0

Compare Source

Minor Changes
  • #​13211 7ea0aba Thanks @​slawekkolodziej! - Adds support for regular expressions in ISR exclude list

    Previously, excluding a page from ISR required explicitly listing it in isr.exclude. As websites grew larger, maintaining this list became increasingly difficult, especially for multiple API routes and pages that needed server-side rendering.

    To address this, ISR exclusions now support regular expressions, allowing for more flexible and scalable configurations.

    // astro.config.mjs
    import vercel from '@&#8203;astrojs/vercel/serverless';
    
    export default defineConfig({
      output: 'server',
      adapter: vercel({
        isr: {
          exclude: [
            '/preview', // Excludes a specific route (e.g., pages/preview.astro)
            '/auth/[page]', // Excludes a dynamic route (e.g., pages/auth/[page].astro)
            /^\/api\/.+/, // Excludes all routes starting with /api/
          ],
        },
      }),
    });
Patch Changes

v8.0.8

Compare Source

Patch Changes

v8.0.7

Patch Changes

v8.0.6

Patch Changes

v8.0.5

Patch Changes

v8.0.4

Patch Changes
  • #​516 3fe04eb Thanks @​ascorbic! - Fixes a bug that prevented integration-generated static assets from being deployed with non-static sites

v8.0.3

Patch Changes

v8.0.2

Patch Changes

v8.0.1

Patch Changes
  • #​472 d9eed7e Thanks @​bluwy! - Add back support for Node 22 on Vercel serverless that was fixed in v7 but lost in v8

v8.0.0

Major Changes
Minor Changes
  • #​424 3351348 Thanks @​ematipico! - Deprecates the entrypoints @astrojs/vercel/serverless and @astrojs/vercel/static. These will continue to work but are no longer documented and will be removed in a future version. We recommend updating to the @astrojs/vercel entrypoint as soon as you are able:

    -import vercel from "@&#8203;astrojs/vercel/static"
    +import vercel from "@&#8203;astrojs/vercel"
    -import vercel from "@&#8203;astrojs/vercel/serverless"
    +import vercel from "@&#8203;astrojs/vercel"
  • #​447 7d9835f Thanks @​laymonage! - Add support for Node 22 on Vercel serverless

  • #​385 bb725b7 Thanks @​florian-lefebvre! - Cleans up astro:env support

Patch Changes
  • #​437 b725b49 Thanks @​ematipico! - Fixes a regression where the @astrojs/vercel single entry point for the adapter was causing some regressions in users projects.
withastro/astro (astro)

v5.12.9

Compare Source

Patch Changes
  • #​14020 9518975 Thanks @​jp-knj and @​asieradzk! - Prevent double-prefixed redirect paths when using fallback and redirectToDefaultLocale together

    Fixes an issue where i18n fallback routes would generate double-prefixed paths (e.g., /es/es/test/item1/) when fallback and redirectToDefaultLocale configurations were used together. The fix adds proper checks to prevent double prefixing in route generation.

  • #​14199 3e4cb8e Thanks @​ascorbic! - Fixes a bug that prevented HMR from working with inline styles

v5.12.8

Compare Source

Patch Changes

v5.12.7

Compare Source

Patch Changes

v5.12.6

Compare Source

Patch Changes

v5.12.5

Compare Source

Patch Changes
  • #​14059 19f53eb Thanks @​benosmac! - Fixes a bug in i18n implementation, where Astro didn't emit the correct pages when fallback is enabled, and a locale uses a catch-all route, e.g. src/pages/es/[...catchAll].astro

  • #​14155 31822c3 Thanks @​ascorbic! - Fixes a bug that caused an error "serverEntrypointModule[_start] is not a function" in some adapters

v5.12.4

Compare Source

Patch Changes

v5.12.3

Compare Source

Patch Changes
  • #​14119 14807a4 Thanks @​ascorbic! - Fixes a bug that caused builds to fail if a client directive was mistakenly added to an Astro component

  • #​14001 4b03d9c Thanks @​dnek! - Fixes an issue where getImage() assigned the resized base URL to the srcset URL of ImageTransform, which matched the width, height, and format of the original image.

v5.12.2

Compare Source

Patch Changes

v5.12.1

Compare Source

Patch Changes

v5.12.0

Compare Source

Minor Changes
  • #​13971 fe35ee2 Thanks @​adamhl8! - Adds an experimental flag rawEnvValues to disable coercion of import.meta.env values (e.g. converting strings to other data types) that are populated from process.env

    Astro allows you to configure a type-safe schema for your environment variables, and converts variables imported via astro:env into the expected type.

    However, Astro also converts your environment variables used through import.meta.env in some cases, and this can prevent access to some values such as the strings "true" (which is converted to a boolean value), and "1" (which is converted to a number).

    The experimental.rawEnvValues flag disables coercion of import.meta.env values that are populated from process.env, allowing you to use the raw value.

    To enable this feature, add the experimental flag in your Astro config:

    import { defineConfig } from "astro/config"
    
    export default defineConfig({
    +  experimental: {
    +    rawEnvValues: true,
    +  }
    })

    If you were relying on this coercion, you may need to update your project code to apply it manually:

    - const enabled: boolean = import.meta.env.ENABLED
    + const enabled: boolean = import.meta.env.ENABLED === "true"

    See the experimental raw environment variables reference docs for more information.

  • #​13941 6bd5f75 Thanks @​aditsachde! - Adds support for TOML files to Astro's built-in glob() and file() content loaders.

    In Astro 5.2, Astro added support for using TOML frontmatter in Markdown files instead of YAML. However, if you wanted to use TOML files as local content collection entries themselves, you needed to write your own loader.

    Astro 5.12 now directly supports loading data from TOML files in content collections in both the glob() and the file() loaders.

    If you had added your own TOML content parser for the file() loader, you can now remove it as this functionality is now included:

    // src/content.config.ts
    import { defineCollection } from "astro:content";
    import { file } from "astro/loaders";
    - import { parse as parseToml } from "toml";
    const dogs = defineCollection({
    -  loader: file("src/data/dogs.toml", { parser: (text) => parseToml(text) }),
    + loader: file("src/data/dogs.toml")
      schema: /* ... */
    })

    Note that TOML does not support top-level arrays. Instead, the file() loader considers each top-level table to be an independent entry. The table header is populated in the id field of the entry object.

    See Astro's content collections guide for more information on using the built-in content loaders.

Patch Changes

v5.11.2

Compare Source

Patch Changes

v5.11.1

Compare Source

Patch Changes
  • #​14045 3276b79 Thanks @​ghubo! - Fixes a problem where importing animated .avif files returns a NoImageMetadata error.

  • #​14041 0c4d5f8 Thanks @​dixslyf! - Fixes a <ClientRouter /> bug where the fallback view transition animations when exiting a page
    ran too early for browsers that do not support the View Transition API.
    This bug prevented event.viewTransition?.skipTransition() from skipping the page exit animation
    when used in an astro:before-swap event hook.

v5.11.0

Compare Source

Minor Changes
  • #​13972 db8f8be Thanks @​ematipico! - Updates the NodeApp.match() function in the Adapter API to accept a second, optional parameter to allow adapter authors to add headers to static, prerendered pages.

    NodeApp.match(request) currently checks whether there is a route that matches the given Request. If there is a prerendered route, the function returns undefined, because static routes are already rendered and their headers cannot be updated.

    When the new, optional boolean parameter is passed (e.g. NodeApp.match(request, true)), Astro will return the first matched route, even when it's a prerendered route. This allows your adapter to now access static routes and provides the opportunity to set headers for these pages, for example, to implement a Content Security Policy (CSP).

Patch Changes
  • #​14029 42562f9 Thanks @​ematipico! - Fixes a bug where server islands wouldn't be correctly rendered when they are rendered inside fragments.

    Now the following examples work as expected:

v5.10.2

Compare Source

Patch Changes
  • #​14000 3cbedae Thanks @​feelixe! - Fix routePattern JSDoc examples to show correct return values

  • #​13990 de6cfd6 Thanks @​isVivek99! - Fixes a case where astro:config/client and astro:config/server virtual modules would not contain config passed to integrations updateConfig() during the build

  • #​14019 a160d1e Thanks @​ascorbic! - Removes the requirement to set type: 'live' when defining experimental live content collections

    Previously, live collections required a type and loader configured. Now, Astro can determine that your collection is a live collection without defining it explicitly.

    This means it is now safe to remove type: 'live' from your collections defined in src/live.config.ts:

    import { defineLiveCollection } from 'astro:content';
    import { storeLoader } from '@&#8203;mystore/astro-loader';
    
    const products = defineLiveCollection({
    -  type: 'live',
      loader: storeLoader({
        apiKey: process.env.STORE_API_KEY,
        endpoint: 'https://api.mystore.com/v1',
      }),
    });
    
    export const collections = { products };

    This is not a breaking change: your existing live collections will continue to work even if you still include type: 'live'. However, we suggest removing this line at your earliest convenience for future compatibility when the feature becomes stable and this config option may be removed entirely.

  • #​13966 598da21 Thanks @​msamoylov! - Fixes a broken link on the default 404 page in development

v5.10.1

Compare Source

Patch Changes
  • #​13988 609044c Thanks @​ascorbic! - Fixes a bug in live collections that caused it to incorrectly complain about the collection being defined in the wrong file

  • #​13909 b258d86 Thanks @​isVivek99! - Fixes rendering of special boolean attributes for custom elements

  • #​13983 e718375 Thanks @​florian-lefebvre! - Fixes a case where the toolbar audit would incorrectly flag images processed by Astro in content collections documents

  • #​13999 f077b68 Thanks @​ascorbic! - Adds lastModified field to experimental live collection cache hints

    Live loaders can now set a lastModified field in the cache hints for entries and collections to indicate when the data was last modified. This is then available in the cacheHint field returned by getCollection and getEntry.

  • #​13987 08f34b1 Thanks @​ematipico! - Adds an informative message in dev mode when the CSP feature is enabled.

  • #​14005 82aad62 Thanks @​ematipico! - Fixes a bug where inline styles and scripts didn't work when CSP was enabled. Now when adding <styles> elements inside an Astro component, their hashes care correctly computed.

  • #​13985 0b4c641 Thanks @​jsparkdev! - Updates wrong link

v5.10.0

Compare Source

Minor Changes
  • #​13917 e615216 Thanks @​ascorbic! - Adds a new priority attribute for Astro's image components.

    This change introduces a new priority option for the <Image /> and <Picture /> components, which automatically sets the loading, decoding, and fetchpriority attributes to their optimal values for above-the-fold images which should be loaded immediately.

    It is a boolean prop, and you can use the shorthand syntax by simply adding priority as a prop to the <Image /> or <Picture /> component. When set, it will apply the following attributes:

    • loading="eager"
    • decoding="sync"
    • fetchpriority="high"

    The individual attributes can still be set manually if you need to customize your images further.

    By default, the Astro <Image /> component generates <img> tags that lazy-load their content by setting loading="lazy" and decoding="async". This improves performance by deferring the loading of images that are not immediately visible in the viewport, and gives the best scores in performance audits like Lighthouse.

    The new priority attribute will override those defaults and automatically add the best settings for your high-priority assets.

    This option was previously available for experimental responsive images, but now it is a standard feature for all images.

Usage
<Image src="/path/to/image.jpg" alt="An example image" priority />

[!Note]
You should only use the priority option for images that are critical to the initial rendering of the page, and ideally only one image per page. This is often an image identified as the LCP element when running Lighthouse tests. Using it for too many images will lead to performance issues, as it forces the browser to load those images immediately, potentially blocking the rendering of other content.

  • #​13917 e615216 Thanks @​ascorbic! - The responsive images feature introduced behind a flag in v5.0.0 is no longer experimental and is available for general use.

    The new responsive images feature in Astro automatically generates optimized images for different screen sizes and resolutions, and applies the correct attributes to ensure that images are displayed correctly on all devices.

    Enable the image.responsiveStyles option in your Astro config. Then, set a layout attribute on any or component, or configure a default image.layout, for instantly responsive images with automatically generated srcset and sizes attributes based on the image's dimensions and the layout type.

    Displaying images correctly on the web can be challenging, and is one of the most common performance issues seen in sites. This new feature simplifies the most challenging part of the process: serving your site visitor an image optimized for their viewing experience, and for your website's performance.

    For full details, see the updated Image guide.

Migration from Experimental Responsive Images

The experimental.responsiveImages flag has been removed, and all experimental image configuration options have been renamed to their final names.

If you were using the experimental responsive images feature, you'll need to update your configuration:

Remove the experimental flag
export default defineConfig({
   experimental: {
-    responsiveImages: true,
   },
});
Update image configuration options

During the experimental phase, default styles were applied automatically to responsive images. Now, you need to explicitly set the responsiveStyles option to true if you want these styles applied.

export default defineConfig({
  image: {
+    responsiveStyles: true,
  },
});

The experimental image configuration options have been renamed:

Before:

export default defineConfig({
  image: {
    experimentalLayout: 'constrained',
    experimentalObjectFit: 'cover',
    experimentalObjectPosition: 'center',
    experimentalBreakpoints: [640, 750, 828, 1080, 1280],
    experimentalDefaultStyles: true,
  },
  experimental: {
    responsiveImages: true,
  },
});

After:

export default defineConfig({
  image: {
    layout: 'constrained',
    objectFit: 'cover',
    objectPosition: 'center',
    breakpoints: [640, 750, 828, 1080, 1280],
    responsiveStyles: true, // This is now *false* by default
  },
});
Component usage remains the same

The layout, fit, and position props on <Image> and <Picture> components work exactly the same as before:

<Image
  src={myImage}
  alt="A responsive image"
  layout="constrained"
  fit="cover"
  position="center"
/>

If you weren't using the experimental responsive images feature, no changes are required.

Please see the Image guide for more information on using responsive images in Astro.

  • #​13685 3c04c1f Thanks @​ascorbic! - Adds experimental support for live content collections

    Live content collections are a new type of content collection that fetch their data at runtime rather than build time. This allows you to access frequently-updated data from CMSs, APIs, databases, or other sources using a unified API, without needing to rebuild your site when the data changes.

Live collections vs build-time collections

In Astro 5.0, the content layer API added support for add


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Copy link

vercel bot commented Dec 3, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
send-transactions ✅ Ready (Inspect) Visit Preview 💬 Add feedback Apr 6, 2025 1:01pm

@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from 2ab9db7 to 47b295d Compare December 3, 2024 18:50
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from 47b295d to ca67e2f Compare December 3, 2024 23:15
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from ca67e2f to 6092a53 Compare December 4, 2024 13:17
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from 6092a53 to fdc9f9f Compare December 5, 2024 03:50
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from fdc9f9f to e44d74c Compare December 5, 2024 19:45
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from e44d74c to 015e51f Compare December 9, 2024 22:31
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from 015e51f to 36122fc Compare December 10, 2024 00:23
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from 36122fc to 4caf6e1 Compare December 11, 2024 14:47
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from 4caf6e1 to 248350d Compare December 12, 2024 21:34
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from 248350d to aea4b6c Compare December 13, 2024 04:07
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from aea4b6c to e91be74 Compare December 13, 2024 04:16
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from e91be74 to 8cbedc4 Compare December 13, 2024 05:36
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from 8cbedc4 to f722500 Compare December 13, 2024 05:45
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from f722500 to a0b2f6c Compare December 16, 2024 21:52
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch 8 times, most recently from 309b900 to adc8572 Compare July 17, 2025 01:02
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch 9 times, most recently from b55ff05 to f8dec9d Compare July 26, 2025 04:05
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch 2 times, most recently from 19370e4 to 2a134fc Compare July 28, 2025 19:06
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch 9 times, most recently from f0cc5a4 to d610b29 Compare August 11, 2025 19:29
@renovate renovate bot force-pushed the renovate/major-astro-monorepo branch from d610b29 to cc15712 Compare August 11, 2025 22:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants