Skip to content

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

Open
renovate[bot] wants to merge 1 commit intomainfrom
renovate/major-astro-monorepo
Open

fix(deps): update astro monorepo (major)#649
renovate[bot] wants to merge 1 commit intomainfrom
renovate/major-astro-monorepo

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate Bot commented Dec 3, 2024

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
@astrojs/vercel (source) 7.8.210.0.6 age confidence
astro (source) ^4.0.0^6.0.0 age confidence

Release Notes

withastro/astro (@​astrojs/vercel)

v10.0.6

Compare Source

Patch Changes
  • #​16486 0bae1a5 Thanks @​cyphercodes! - Fix forwarded serverless requests with streamed bodies by preserving the required duplex: 'half' option when rewriting middleware paths.

v10.0.5

Compare Source

Patch Changes

v10.0.4

Compare Source

Patch Changes
  • #​16170 d0fe1ec Thanks @​bittoby! - Fixes edge middleware next() dropping the HTTP method and body when forwarding requests to the serverless function, which caused non-GET API routes (POST, PUT, PATCH, DELETE) to return 404

v10.0.3

Compare Source

Patch Changes

v10.0.2

Compare Source

Patch Changes
  • #​15959 335a204 Thanks @​matthewp! - Fix Vercel serverless path override handling so override values are only applied when the trusted middleware secret is present.

v10.0.1

Compare Source

Patch Changes

v10.0.0

Compare Source

Major Changes
Minor Changes
  • #​15258 d339a18 Thanks @​ematipico! - Stabilizes the adapter feature experimentalStatiHeaders. If you were using this feature in any of the supported adapters, you'll need to change the name of the flag:

    export default defineConfig({
      adapter: netlify({
    -    experimentalStaticHeaders: true
    +    staticHeaders: true
      })
    })
  • #​15413 736216b Thanks @​florian-lefebvre! - Updates the implementation to use the new Adapter API

  • #​15495 5b99e90 Thanks @​leekeh! - Adds new middlewareMode adapter feature and deprecates edgeMiddleware option

    The edgeMiddleware option is now deprecated and will be removed in a future release, so users should transition to using the new middlewareMode feature as soon as possible.

    export default defineConfig({
      adapter: vercel({
    -    edgeMiddleware: true
    +    middlewareMode: 'edge'
      })
    })
  • #​14946 95c40f7 Thanks @​ematipico! - Removes the experimental.csp flag and replaces it with a new configuration option security.csp - (v6 upgrade guidance)

Patch Changes
  • #​15781 2de969d Thanks @​ematipico! - Adds a new clientAddress option to the createContext() function

    Providing this value gives adapter and middleware authors explicit control over the client IP address. When not provided, accessing clientAddress throws an error consistent with other contexts where it is not set by the adapter.

    Additionally, both of the official Netlify and Vercel adapters have been updated to provide this information in their edge middleware.

    import { createContext } from 'astro/middleware';
    
    createContext({
      clientAddress: context.headers.get('x-real-ip'),
    });
  • #​15778 4ebc1e3 Thanks @​ematipico! - Fixes an issue where the computed clientAddress was incorrect in cases of a Request header with multiple values. The clientAddress is now also validated to contain only characters valid in IP addresses, rejecting injection payloads.

  • #​15460 ee7e53f Thanks @​florian-lefebvre! - Updates to use the new Adapter API

  • #​15450 50c9129 Thanks @​florian-lefebvre! - Fixes a case where build.serverEntry would not be respected when using the new Adapter API

  • #​15461 9f21b24 Thanks @​florian-lefebvre! - Updates to new Adapter API introduced in v6

  • #​15125 6feb0d7 Thanks @​florian-lefebvre! - Updates Node versions data to account for v24 as the default

  • Updated dependencies [4ebc1e3, 4e7f3e8, a164c77, cf6ea6b, a18d727, 240c317, 745e632]:

v9.0.5

Compare Source

Patch Changes

v9.0.4

Compare Source

Patch Changes

v9.0.3

Compare Source

Patch Changes

v9.0.2

Compare Source

Patch Changes

v9.0.1

Patch Changes

v9.0.0

Major Changes
Minor Changes
  • #​14543 9b3241d Thanks @​matthewp! - Enables skew protection for Astro sites deployed on Vercel. Skew protection ensures that your site's client and server versions stay synchronized during deployments, preventing issues where users might load assets from a newer deployment while the server is still running the older version.

    Skew protection is automatically enabled on Vercel deployments when the VERCEL_SKEW_PROTECTION_ENABLED environment variable is set to 1. The deployment ID is automatically included in both asset requests and API calls, allowing Vercel to serve the correct version to every user.

v8.2.11

Compare Source

Patch Changes
  • #​14570 c96711d Thanks @​matthewp! - Fix regression in 8.2.7: validate densities-based srcset widths against configured sizes

    When using densities with the Vercel image adapter, calculated widths were not being validated against Vercel's configured sizes list. This caused images to fail when using densities, as Vercel would reject the invalid widths.

    This fix ensures densities-calculated widths are mapped to valid configured sizes, matching the behavior already implemented for the widths prop.

v8.2.10

Compare Source

Patch Changes

v8.2.9

Compare Source

Patch Changes

v8.2.8

Compare Source

Patch Changes

v8.2.7

Compare Source

Patch Changes

v8.2.6

Compare Source

Patch Changes

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
  • #​14570 c96711d Thanks @​matthewp! - Fix regression in 8.2.7: validate densities-based srcset widths against configured sizes

    When using densities with the Vercel image adapter, calculated widths were not being validated against Vercel's configured sizes list. This caused images to fail when using densities, as Vercel would reject the invalid widths.

    This fix ensures densities-calculated widths are mapped to valid configured sizes, matching the behavior already implemented for the widths prop.

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)

v6.2.1

Compare Source

Patch Changes
  • #​16531 76db01d Thanks @​rodrigosdev! - Fixes config validation for omitted integrations fields with newer Zod versions.

  • #​16535 7df0fe4 Thanks @​rururux! - Fixed an issue where a warning was displayed when the server property was missing during config validation, even though it is not required.

  • #​16534 5cf6c51 Thanks @​matthewp! - Fixes compatibility with Zod 4.4.0 for the server config property and error formatting

v6.2.0

Compare Source

Minor Changes
  • #​16187 fe58071 Thanks @​gllmt! - Adds a waitUntil option to the RenderOptions so that adapters can forward runtime background-task hooks to Astro.

    When provided by an adapter, runtime cache providers receive context.waitUntil in
    CacheProvider.onRequest(), which allows background cache work such as stale-while-revalidate
    without blocking the response. The Cloudflare adapter now forwards
    ExecutionContext.waitUntil to this API.

  • #​16290 a49637a Thanks @​ViVaLaDaniel! - Ensures that server.allowedHosts (and vite.preview.allowedHosts) configuration is respected when using astro preview with the @astrojs/cloudflare adapter. This improves security by preventing DNS rebinding attacks when previewing Cloudflare builds locally.

  • #​15725 4108ec1 Thanks @​meyer! - Adds support for a new 'jsx' value for the compressHTML option. When set, whitespace is stripped using JSX whitespace rules instead of the default HTML compression strategy.

    // astro.config.mjs
    import { defineConfig } from 'astro/config';
    
    export default defineConfig({
      compressHTML: 'jsx',
    });

    In JSX, whitespaces never matter, as such, no amount of indentation, or newlines will not affect the rendered output. For instance, the following code:

    <div>
      <span>foo</span>
      <span>bar</span>
    </div>

    will be rendered as foobar, whereas with HTML whitespace rules, a space would be present between the words due to the newline and indentation between the tags.

  • #​16477 28fb3e1 Thanks @​ematipico! - Adds experimental support for configurable log handlers.

    This experimental feature provides better control over Astro's logging infrastructure by allowing users to replace the default console output with custom logging implementations (e.g., structured JSON). This is particularly useful for users using on-demand rendering and wishing to connect their log aggregation services, such as Kibana, Logstash, CloudWatch, Grafana, or Loki.

    By default, Astro provides three built-in log handlers (json, node, and console), but you can also create your own.

JSON logging

JSON logging can be enabled via the CLI for the build, dev, and sync commands using the experimentalJson flag:

// astro.config.mjs
import { defineConfig, logHandlers } from 'astro/config';

export default defineConfig({
  experimental: {
    logger: logHandlers.json({
      pretty: true,
      level: 'warn',
    }),
  },
});
Custom logger

You can also create your own custom logger by implementing the correct interface:

// astro.config.mjs
import { defineConfig } from 'astro/config';

export default defineConfig({
  experimental: {
    logger: {
      entrypoint: '@&#8203;org/custom-logger',
    },
  },
});
// @&#8203;org/custom-logger.js
import type { AstroLoggerDestination, AstroLoggerMessage } from 'astro';
import { matchesLevel } from 'astor/logger';

function customLogger(level = 'info'): AstroLoggerDestination {
  return {
    write(message: AstroLoggerMessage) {
      if (matchesLevel(message.level, level)) {
        // write message somewhere
      }
    },
  };
}

export default customLogger;

For more information on enabling and using this feature in your project, see the Experimental Logger docs.

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

  • #​16333 0f7c3c8 Thanks @​florian-lefebvre! - Adds an experimental flag svgOptimizer that enables automatic optimization of your SVG components using the provided optimizer. This supersedes the svgo experimental flag, which is now removed.

    When enabled, your imported SVG files used as components will be optimized for smaller file sizes and better performance while maintaining visual quality. This can significantly reduce the size of your SVG assets by removing unnecessary metadata, comments, and redundant code.

    Astro ships with a SVGO based optimizer, but any can be used.

    To enable this feature, add the experimental flag in your Astro config and remove svgo if it was enabled:

    // astro.config.mjs
    -import { defineConfig } from "astro/config";
    +import { defineConfig, svgoOptimizer } from "astro/config";
    
    export default defineConfig({
    +  experimental: {
    +    svgOptimizer: svgoOptimizer()
    -    svgo: true
    +  }
    });

    For more information on enabling and using this feature in your project, see the experimental SVG optimization docs.

  • #​16302 f6f8e80 Thanks @​florian-lefebvre! - Adds a new experimental_getFontFileURL() method to resolve font file URLs when using the Fonts API

    The fontData object exported from astro:assets was introduced to provide low-level access to font family data for advanced usage. One of the goals of this API was to be able to resolve buffers using URLs. However, it turned out to be impractical, especially during prerendering.

    Astro now exports a new experimental_getFontFileURL() helper function from astro:assets to resolve font file URLs from fontData. For example, when using satori to generate Open Graph images:

    // src/pages/og.png.ts
    
    import type { APIRoute } from "astro";
    -import { fontData } from "astro:assets";
    +import { fontData, experimental_getFontFileURL } from "astro:assets";
    -import { outDir } from "astro:config/server";
    -import { readFile } from "node:fs/promises";
    import satori from "satori";
    import { html } from "satori-html";
    import sharp from "sharp";
    
    export const GET: APIRoute = async (context) => {
      const fontPath = fontData["--font-roboto"][0]?.src[0]?.url;
    
      if (fontPath === undefined) {
        throw new Error("Cannot find the font path.");
      }
    
    -  const data = import.meta.env.DEV
    -    ? await fetch(new URL(fontPath, context.url.origin)).then(async (res) => res.arrayBuffer())
    -    : await readFile(new URL(`.${fontPath}`, outDir));
    +  const url = experimental_getFontFileURL(fontPath, context.url);
    +  const data = await fetch(url).then((res) => res.arrayBuffer());
    
      const svg = await satori(
        html`<div style="color: black;">hello, world</div>`,
        {
          width: 600,
          height: 400,
          fonts: [
            {
              name: "Roboto",
              data,
              weight: 400,
              style: "normal",
            },
          ],
        },
      );
    
      const pngBuffer = await sharp(Buffer.from(svg))
        .resize(600, 400)
        .png()
        .toBuffer();
    
      return new Response(new Uint8Array(pngBuffer), {
        headers: {
          "Content-Type": "image/png",
        },
      });
    };

    See the Fonts API documentation for more information.

Patch Changes

v6.1.10

Compare Source

Patch Changes
  • #​16479 1058428 Thanks @​matthewp! - Fixes a spurious [WARN] [content] Content config not loaded warning during astro dev for projects that don't use content collections

  • #​16457 3d82220 Thanks @​matthewp! - Hardens server island encryption to prevent encrypted data from one island component being replayed against a different one

  • #​16481 152700e Thanks @​matthewp! - Fixes a spurious 404 request for a dev toolbar sourcemap during astro dev caused by the browser mis-resolving a relative sourceMappingURL from the /@&#8203;id/ URL prefix

  • #​16480 1bcb43b Thanks @​matthewp! - Fixes an unnecessary full page reload on first navigation during dev

v6.1.9

Compare Source

Patch Changes

v6.1.8

Compare Source

Patch Changes
  • #​16367 a6866a7 Thanks @​ematipico! - Fixes an issue where build output files could contain special characters (!, ~, {, }) in their names, causing deploy failures on platforms like Netlify.

  • #​16381 217c5b3 Thanks @​ematipico! - Slightly improved the performance of the dev server by caching the internal crawling of the dependencies of a project.

  • #​16348 7d26cd7 Thanks @​ocavue! - Fixes a bug where emitted assets during a client build would contain always fresh, new hashes in their name. Now the build should be more stable.

  • #​16317 d012bfe Thanks @​das-peter! - Fixes a b

Note

PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • 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.

@vercel
Copy link
Copy Markdown

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 from ff5388e to 50a8276 Compare January 1, 2025 06:10
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from 50a8276 to 57b45eb Compare January 3, 2025 00:06
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from 57b45eb to 713e82d Compare January 3, 2025 03:42
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from 713e82d to 9709a6b Compare January 3, 2025 11:19
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from 9709a6b to 442b6c9 Compare January 3, 2025 21:41
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from 442b6c9 to 144b6ee Compare January 6, 2025 05:10
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from 144b6ee to e42c9f3 Compare January 6, 2025 22:18
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from e42c9f3 to 4071aaf Compare January 9, 2025 04:55
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from 4071aaf to 940d98c Compare January 9, 2025 09:01
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from 940d98c to 324d48c Compare January 13, 2025 18:40
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from 324d48c to 615c1c5 Compare January 13, 2025 22:14
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from 615c1c5 to 609ee1a Compare January 14, 2025 02:38
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from 609ee1a to 48b0b4f Compare January 16, 2025 06:11
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from 48b0b4f to 4f57b61 Compare January 16, 2025 18:25
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from 4f57b61 to 8b7b9df Compare January 17, 2025 02:37
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