Skip to content

[Docs Site] bump astro from 6.4.7 to 7.1.0#32192

Closed
dependabot[bot] wants to merge 1 commit into
productionfrom
dependabot/npm_and_yarn/astro-7.1.0
Closed

[Docs Site] bump astro from 6.4.7 to 7.1.0#32192
dependabot[bot] wants to merge 1 commit into
productionfrom
dependabot/npm_and_yarn/astro-7.1.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 21, 2026

Copy link
Copy Markdown
Contributor

Bumps astro from 6.4.7 to 7.1.0.

Release notes

Sourced from astro's releases.

astro@7.1.0

Minor Changes

  • #17302 5f4dc03 Thanks @​astrobot-houston! - Adds a new deferRender option to the glob() content loader

    When set to true, renderable entries (such as Markdown) are not rendered during content sync. Instead, rendering is deferred until the entry is actually rendered in a page, using the same on-demand path that .mdx files already use.

    This reduces memory usage during astro build for large collections whose rendered output is much larger than the source — for example, Markdown that uses heavy rehype plugins like rehype-katex. Such builds could previously run out of memory while storing the eagerly-rendered HTML for every entry.

    // src/content.config.ts
    import { defineCollection } from 'astro:content';
    import { glob } from 'astro/loaders';
    const docs = defineCollection({
    loader: glob({ pattern: '**/*.md', base: 'src/content/docs', deferRender: true }),
    });

    By default deferRender is false, preserving the existing behavior of rendering entries eagerly during sync so their rendered HTML can be cached across builds.

  • #17296 30698a2 Thanks @​ematipico! - Adds a new experimental collectionStorage option for controlling how the content layer persists its data store

    By default, Astro serializes the entire content layer data store to a single file (.astro/data-store.json). For very large content collections, this file can grow large enough to hit platform file-size limits.

    Set experimental.collectionStorage: 'chunked' to instead split the data store across many smaller, content-addressed files inside a .astro/data-store/ directory, described by a manifest:

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

    Because each part file is named by a hash of its contents, unchanged parts keep the same name across builds and are not rewritten, and identical parts are deduplicated. The default value is 'single-file', which preserves the current behavior.

  • #17214 44c4989 Thanks @​ematipico! - Adds support for the more specific CSP directives script-src-elem, script-src-attr, style-src-elem, and style-src-attr through a new kind option.

    Previously, CSP was only scoped to generic script-src/style-src directives. Now each source or hash can be scoped to a narrower directive — for example, to allow inline style attributes (such as those from define:vars or Shiki) without loosening the policy for your <style> and <link> elements.

    Scoping sources and hashes in your config

    Each entry in resources and hashes can be an object with a kind property. Depending on whether you use scriptDirective or styleDirective, "element" targets script-src-elem or style-src-elem, "attribute" targets script-src-attr or style-src-attr, and "default" (the same as a bare string or hash) targets script-src or style-src.

    // astro.config.mjs

... (truncated)

Changelog

Sourced from astro's changelog.

7.1.0

Minor Changes

  • #17302 5f4dc03 Thanks @​astrobot-houston! - Adds a new deferRender option to the glob() content loader

    When set to true, renderable entries (such as Markdown) are not rendered during content sync. Instead, rendering is deferred until the entry is actually rendered in a page, using the same on-demand path that .mdx files already use.

    This reduces memory usage during astro build for large collections whose rendered output is much larger than the source — for example, Markdown that uses heavy rehype plugins like rehype-katex. Such builds could previously run out of memory while storing the eagerly-rendered HTML for every entry.

    // src/content.config.ts
    import { defineCollection } from 'astro:content';
    import { glob } from 'astro/loaders';
    const docs = defineCollection({
    loader: glob({ pattern: '**/*.md', base: 'src/content/docs', deferRender: true }),
    });

    By default deferRender is false, preserving the existing behavior of rendering entries eagerly during sync so their rendered HTML can be cached across builds.

  • #17296 30698a2 Thanks @​ematipico! - Adds a new experimental collectionStorage option for controlling how the content layer persists its data store

    By default, Astro serializes the entire content layer data store to a single file (.astro/data-store.json). For very large content collections, this file can grow large enough to hit platform file-size limits.

    Set experimental.collectionStorage: 'chunked' to instead split the data store across many smaller, content-addressed files inside a .astro/data-store/ directory, described by a manifest:

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

    Because each part file is named by a hash of its contents, unchanged parts keep the same name across builds and are not rewritten, and identical parts are deduplicated. The default value is 'single-file', which preserves the current behavior.

  • #17214 44c4989 Thanks @​ematipico! - Adds support for the more specific CSP directives script-src-elem, script-src-attr, style-src-elem, and style-src-attr through a new kind option.

    Previously, CSP was only scoped to generic script-src/style-src directives. Now each source or hash can be scoped to a narrower directive — for example, to allow inline style attributes (such as those from define:vars or Shiki) without loosening the policy for your <style> and <link> elements.

    Scoping sources and hashes in your config

    Each entry in resources and hashes can be an object with a kind property. Depending on whether you use scriptDirective or styleDirective, "element" targets script-src-elem or style-src-elem, "attribute" targets script-src-attr or style-src-attr, and "default" (the same as a bare string or hash) targets script-src or style-src.

... (truncated)

Commits

@dependabot
dependabot Bot requested a review from a team as a code owner July 21, 2026 04:59
@dependabot dependabot Bot added the dependencies Pull requests that update a dependency file label Jul 21, 2026
@dependabot
dependabot Bot requested a review from a team as a code owner July 21, 2026 04:59
@dependabot dependabot Bot added the javascript Pull requests that update Javascript code label Jul 21, 2026
@cloudflare-docs-bot

cloudflare-docs-bot Bot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Dependabot review

Package Impact Recommendation
astro 6.4.7 → 7.1.0 🔴 High ⚠️ Verify

Overall: ⚠️ Investigate before merging

This PR upgrades Astro from 6.4.7 to 7.1.0, which is a major version jump. The 7.1.0 changes shown in the PR body (optional deferRender on glob(), experimental chunked collectionStorage, and CSP kind scoping) are additive and default to existing behavior, so on their own they are low-risk. However, the 6→7 boundary includes Astro 7.0.0’s rewrite of the markdown pipeline (now @astrojs/markdown-satteri / satteri@0.9.5) and internal build engine changes (Vite 8, esbuild 0.28, the new Rust compiler). The docs site is tightly coupled to Astro via astro:content, astro:assets, astro/container, custom content loaders, Nimbus docs, astro-icon, astro-skills, and custom Vite/satteri plugins, while its Astro 6-era integrations (@astrojs/mdx@6.0.3, @astrojs/react@5.0.7, nimbus-docs@0.2.2, etc.) were not bumped. The impact on rendered HTML, content collection loading, and build output is high, so this should not be merged without manual verification.

Package details

astro: 6.4.7 → 7.1.0

Type: breaking change
Dependency type: direct

What changed

  • Astro 7.0.0 replaces the old markdown renderer with @astrojs/markdown-satteri / satteri@0.9.5 and bumps the build internals (the lockfile resolves Vite 8.1.5, esbuild 0.28.1, and a new Rust-based @astrojs/compiler-rs).
  • Astro 7.1.0 adds an optional deferRender option to the glob() content loader and an experimental collectionStorage: 'chunked' option for the content-layer data store; both default to the previous behavior.
  • Astro 7.1.0 adds kind: 'element' | 'attribute' | 'default' scoping for CSP script-src-elem/attr and style-src-elem/attr directives.
  • Logger fixes (JSON logger cross-runtime compatibility, updateConfig() support) and additional escaping of rendered content are also included.
  • The PR does not update related Astro 6-era integrations in package.json (@astrojs/mdx@6.0.3, @astrojs/react@5.0.7, @astrojs/rss@4.0.18, nimbus-docs@0.2.2, astro-icon@1.1.5, astro-skills@0.1.0), so peer/runtime incompatibilities are likely.

Usage in this repo
Direct dependency used throughout the site: astro.config.ts / src/nimbus/astro-config.ts configure Astro and its integrations; src/nimbus/content.config.ts and src/util/custom-loaders.ts use astro:content, astro/loaders; components/pages use astro:content, astro:assets, astro/zod, and the Astro global (Astro.props, Astro.url, etc.); src/nimbus/util/container.ts imports astro/container, astro:content, @astrojs/mdx/server.js, and @astrojs/react/server.js; Nimbus, astro-icon, and astro-skills are mounted as integrations.

Impact: 🔴 High — Astro is the core framework; a major version rewrite of the markdown renderer and build internals will affect every rendered page, content collection load, and custom plugin. The existing Astro 6-era integrations and Nimbus theme likely need companion upgrades, and without them the site may fail to build or produce different HTML.


Bumps [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) from 6.4.7 to 7.1.0.
- [Release notes](https://github.com/withastro/astro/releases)
- [Changelog](https://github.com/withastro/astro/blob/main/packages/astro/CHANGELOG.md)
- [Commits](https://github.com/withastro/astro/commits/astro@7.1.0/packages/astro)

---
updated-dependencies:
- dependency-name: astro
  dependency-version: 7.1.0
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot changed the title [Docs Site] Bump astro from 6.4.7 to 7.1.0 [Docs Site] bump astro from 6.4.7 to 7.1.0 Jul 22, 2026
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/astro-7.1.0 branch from 13db311 to d0c0b86 Compare July 22, 2026 14:15
@dependabot @github

dependabot Bot commented on behalf of github Jul 22, 2026

Copy link
Copy Markdown
Contributor Author

Looks like astro is up-to-date now, so this is no longer needed.

@dependabot dependabot Bot closed this Jul 22, 2026
@dependabot
dependabot Bot deleted the dependabot/npm_and_yarn/astro-7.1.0 branch July 22, 2026 16:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code size/l

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants