Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented May 1, 2024

This PR contains the following updates:

Package Change Age Confidence
@astrojs/preact (source) 3.0.1 -> 3.5.4 age confidence
@astrojs/react (source) 3.0.5 -> 3.6.3 age confidence
@astrojs/sitemap (source) 3.0.3 -> 3.6.0 age confidence

Release Notes

withastro/astro (@​astrojs/preact)

v3.5.4

Compare Source

Patch Changes

v3.5.3

Compare Source

Patch Changes

v3.5.2

Compare Source

Patch Changes
  • #​11834 5f2536b Thanks @​ph1p! - Preact signals are now serialized correctly in arrays when they are given to components.

v3.5.1

Compare Source

Patch Changes

v3.5.0

Compare Source

Minor Changes
  • #​11234 4385bf7 Thanks @​ematipico! - Adds a new function called addServerRenderer to the Container API. Use this function to manually store renderers inside the instance of your container.

    This new function should be preferred when using the Container API in environments like on-demand pages:

    import type { APIRoute } from 'astro';
    import { experimental_AstroContainer } from 'astro/container';
    import reactRenderer from '@​astrojs/react/server.js';
    import vueRenderer from '@​astrojs/vue/server.js';
    import ReactComponent from '../components/button.jsx';
    import VueComponent from '../components/button.vue';
    
    // MDX runtime is contained inside the Astro core
    import mdxRenderer from 'astro/jsx/server.js';
    
    // In case you need to import a custom renderer
    import customRenderer from '../renderers/customRenderer.js';
    
    export const GET: APIRoute = async (ctx) => {
      const container = await experimental_AstroContainer.create();
      container.addServerRenderer({ renderer: reactRenderer });
      container.addServerRenderer({ renderer: vueRenderer });
      container.addServerRenderer({ renderer: customRenderer });
      // You can pass a custom name too
      container.addServerRenderer({
        name: 'customRenderer',
        renderer: customRenderer,
      });
      const vueComponent = await container.renderToString(VueComponent);
      return await container.renderToResponse(Component);
    };

v3.4.0

Compare Source

Minor Changes
  • #​11144 803dd80 Thanks @​ematipico! - The integration now exposes a function called getContainerRenderer, that can be used inside the Container APIs to load the relative renderer.

    import { experimental_AstroContainer as AstroContainer } from 'astro/container';
    import ReactWrapper from '../src/components/ReactWrapper.astro';
    import { loadRenderers } from 'astro:container';
    import { getContainerRenderer } from '@​astrojs/react';
    
    test('ReactWrapper with react renderer', async () => {
      const renderers = await loadRenderers([getContainerRenderer()]);
      const container = await AstroContainer.create({
        renderers,
      });
      const result = await container.renderToString(ReactWrapper);
    
      expect(result).toContain('Counter');
      expect(result).toContain('Count: <!-- -->5');
    });

v3.3.0

Compare Source

Minor Changes
  • #​10938 fd508a0 Thanks @​florian-lefebvre! - Adds a devtools option

    You can enable Preact devtools in development by setting devtools: true in your preact() integration config:

    import { defineConfig } from 'astro/config';
    import preact from '@&#8203;astrojs/preact';
    
    export default defineConfig({
      integrations: [preact({ devtools: true })],
    });

v3.2.0

Compare Source

Minor Changes

v3.1.2

Compare Source

Patch Changes

v3.1.1

Compare Source

Patch Changes

v3.1.0

Compare Source

Minor Changes

v3.0.2

Compare Source

Patch Changes
withastro/astro (@​astrojs/react)

v3.6.3

Compare Source

Patch Changes

v3.6.2

Compare Source

Patch Changes
  • #​11624 7adb350 Thanks @​bluwy! - Prevents throwing errors when checking if a component is a React component in runtime

v3.6.1

Compare Source

Patch Changes
  • #​11571 1c3265a Thanks @​bholmesdev! - BREAKING CHANGE to the experimental Actions API only. Install the latest @astrojs/react integration as well if you're using React 19 features.

    Make .safe() the default return value for actions. This means { data, error } will be returned when calling an action directly. If you prefer to get the data while allowing errors to throw, chain the .orThrow() modifier.

    import { actions } from 'astro:actions';
    
    // Before
    const { data, error } = await actions.like.safe();
    // After
    const { data, error } = await actions.like();
    
    // Before
    const newLikes = await actions.like();
    // After
    const newLikes = await actions.like.orThrow();

v3.6.0

Compare Source

Minor Changes
  • #​11234 4385bf7 Thanks @​ematipico! - Adds a new function called addServerRenderer to the Container API. Use this function to manually store renderers inside the instance of your container.

    This new function should be preferred when using the Container API in environments like on-demand pages:

    import type { APIRoute } from 'astro';
    import { experimental_AstroContainer } from 'astro/container';
    import reactRenderer from '@&#8203;astrojs/react/server.js';
    import vueRenderer from '@&#8203;astrojs/vue/server.js';
    import ReactComponent from '../components/button.jsx';
    import VueComponent from '../components/button.vue';
    
    // MDX runtime is contained inside the Astro core
    import mdxRenderer from 'astro/jsx/server.js';
    
    // In case you need to import a custom renderer
    import customRenderer from '../renderers/customRenderer.js';
    
    export const GET: APIRoute = async (ctx) => {
      const container = await experimental_AstroContainer.create();
      container.addServerRenderer({ renderer: reactRenderer });
      container.addServerRenderer({ renderer: vueRenderer });
      container.addServerRenderer({ renderer: customRenderer });
      // You can pass a custom name too
      container.addServerRenderer({
        name: 'customRenderer',
        renderer: customRenderer,
      });
      const vueComponent = await container.renderToString(VueComponent);
      return await container.renderToResponse(Component);
    };

v3.5.0

Compare Source

Minor Changes
  • #​11144 803dd80 Thanks @​ematipico! - The integration now exposes a function called getContainerRenderer, that can be used inside the Container APIs to load the relative renderer.

    import { experimental_AstroContainer as AstroContainer } from 'astro/container';
    import ReactWrapper from '../src/components/ReactWrapper.astro';
    import { loadRenderers } from 'astro:container';
    import { getContainerRenderer } from '@&#8203;astrojs/react';
    
    test('ReactWrapper with react renderer', async () => {
      const renderers = await loadRenderers([getContainerRenderer()]);
      const container = await AstroContainer.create({
        renderers,
      });
      const result = await container.renderToString(ReactWrapper);
    
      expect(result).toContain('Counter');
      expect(result).toContain('Count: <!-- -->5');
    });

v3.4.0

Compare Source

Minor Changes
  • #​11071 8ca7c73 Thanks @​bholmesdev! - Adds two new functions experimental_getActionState() and experimental_withState() to support the React 19 useActionState() hook when using Astro Actions. This introduces progressive enhancement when calling an Action with the withState() utility.

    This example calls a like action that accepts a postId and returns the number of likes. Pass this action to the experimental_withState() function to apply progressive enhancement info, and apply to useActionState() to track the result:

    import { actions } from 'astro:actions';
    import { experimental_withState } from '@&#8203;astrojs/react/actions';
    
    export function Like({ postId }: { postId: string }) {
      const [state, action, pending] = useActionState(
        experimental_withState(actions.like),
        0, // initial likes
      );
    
      return (
        <form action={action}>
          <input type="hidden" name="postId" value={postId} />
          <button disabled={pending}>{state} ❤️</button>
        </form>
      );
    }

    You can also access the state stored by useActionState() from your action handler. Call experimental_getActionState() with the API context, and optionally apply a type to the result:

    import { defineAction, z } from 'astro:actions';
    import { experimental_getActionState } from '@&#8203;astrojs/react/actions';
    
    export const server = {
      like: defineAction({
        input: z.object({
          postId: z.string(),
        }),
        handler: async ({ postId }, ctx) => {
          const currentLikes = experimental_getActionState<number>(ctx);
          // write to database
          return currentLikes + 1;
        },
      }),
    };

v3.3.4

Compare Source

Patch Changes

v3.3.3

Compare Source

Patch Changes

v3.3.2

Compare Source

Patch Changes

v3.3.1

Compare Source

Patch Changes

v3.3.0

Compare Source

Minor Changes

v3.2.0

Compare Source

Minor Changes

v3.1.1

Compare Source

Patch Changes

v3.1.0

Compare Source

Minor Changes
  • #​10136 9cd84bd19b92fb43ae48809f575ee12ebd43ea8f Thanks @​matthewp! - Changes the default behavior of transition:persist to update the props of persisted islands upon navigation. Also adds a new view transitions option transition:persist-props (default: false) to prevent props from updating as needed.

    Islands which have the transition:persist property to keep their state when using the <ViewTransitions /> router will now have their props updated upon navigation. This is useful in cases where the component relies on page-specific props, such as the current page title, which should update upon navigation.

    For example, the component below is set to persist across navigation. This component receives a products props and might have some internal state, such as which filters are applied:

    <ProductListing transition:persist products={products} />

    Upon navigation, this component persists, but the desired products might change, for example if you are visiting a category of products, or you are performing a search.

    Previously the props would not change on navigation, and your island would have to handle updating them externally, such as with API calls.

    With this change the props are now updated, while still preserving state.

    You can override this new default behavior on a per-component basis using transition:persist-props=true to persist both props and state during navigation:

    <ProductListing transition:persist-props="true" products={products} />

v3.0.10

Compare Source

Patch Changes

v3.0.9

Compare Source

Patch Changes

v3.0.8

Compare Source

Patch Changes

v3.0.7

Compare Source

Patch Changes

v3.0.6

Compare Source

Patch Changes
  • #​9141 af43fb517 Thanks @​lilnasy! - Fixes an issue where slotting self-closing elements (img, br, hr) into react components with experimentalReactChildren enabled led to an error.
withastro/astro (@​astrojs/sitemap)

v3.6.0

Compare Source

Minor Changes
  • #​14285 bedc31b Thanks @​jdcolombo! - Adds a new configuration option namespaces for more control over XML namespaces used in sitemap generation

    Excluding unused namespaces can help create cleaner, more focused sitemaps that are faster for search engines to parse and use less bandwidth. If your site doesn't have news content, videos, or multiple languages, you can exclude those namespaces to reduce XML bloat.

    The namespaces option allows you to configure news, xhtml, image, and video namespaces independently. All namespaces are enabled by default for backward compatibility and no change to existing projects is necessary. But now, you can choose to streamline your XML and avoid unnecessary code.

    For example, to exclude the video namespace from your sitemap, set video: false in your configuration:

    // astro.config.mjs
    import { sitemap } from '@&#8203;astrojs/sitemap';
    
    export default {
      integrations: [
        sitemap({
          namespaces: {
            video: false,
            // other namespaces remain enabled by default
          }
        })
      ]
    };
    

    The generated XML will not include the xmlns:video namespace:

    <?xml version="1.0" encoding="UTF-8"?>
    <urlset
      xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
      xmlns:news="http://www.google.com/schemas/sitemap-news/0.9"
      xmlns:xhtml="http://www.w3.org/1999/xhtml"
      xmlns:image="http://www.google.com/schemas/sitemap-image/1.1"
    >
      <!-- ... -->
    </urlset>
    

v3.5.1

Compare Source

Patch Changes
  • #​14233 896886c Thanks @​gouravkhunger! - Fixes the issue with the option lastmod where if it is defined it applies correctly to <url> entries in each sitemap-${i}.xml file but not the <sitemap> entries in the root sitemap-index.xml file.

v3.5.0

Compare Source

Minor Changes
  • #​13682 5824b32 Thanks @​gouravkhunger! - Adds a customSitemaps option to include extra sitemaps in the sitemap-index.xml file generated by Astro.

    This is useful for multi-framework setups on the same domain as your Astro site (example.com), such as a blog at example.com/blog whose sitemap is generated by another framework.

    The following example shows configuring your Astro site to include sitemaps for an externally-generated blog and help center along with the generated sitemap entries in sitemap-index.xml:

    Example:

    import { defineConfig } from 'astro/config';
    import sitemap from '@&#8203;astrojs/sitemap';
    
    export default defineConfig({
      site: 'https://example.com',
      integrations: [
        sitemap({
          customSitemaps: [
            'https://example.com/blog/sitemap.xml',
            'https://example.com/helpcenter/sitemap.xml',
          ],
        }),
      ],
    });

    Learn more in the @astrojs/sitemap configuration documentation.

v3.4.2

Compare Source

Patch Changes

v3.4.1

Compare Source

Patch Changes

v3.4.0

Compare Source

Minor Changes
  • #​13753 90293de Thanks @​mattyoho! - Customize the filenames of sitemap XML files generated by the @astro/sitemap integration by setting filenameBase in the integration configuration settings. This may be useful when deploying an Astro site at a path on a domain with preexisting sitemap files.

    Generated sitemap files will appear at /sitemap-0.xml and /sitemap-index.xml by default, which may conflict with preexisting files. Set filenameBase to a custom value to avoid that if so:

    import { defineConfig } from 'astro/config';
    import sitemap from '@&#8203;astrojs/sitemap';
    
    export default defineConfig({
      site: 'https://example.com',
      integrations: [
        sitemap({
          filenameBase: 'astronomy-sitemap',
        }),
      ],
    });

    This will yield sitemap and index files as https://example.com/astronomy-sitemap-0.xml and https://example.com/astronomy-sitemap-index.xml.

v3.3.1

Patch Changes

v3.3.0

Minor Changes

v3.2.1

Compare Source

Patch Changes

v3.2.0

Compare Source

Minor Changes

v3.1.6

Compare Source

Patch Changes

v3.1.5

Compare Source

Patch Changes

v3.1.4

Compare Source

Patch Changes

v3.1.3

Compare Source

Patch Changes

v3.1.2

Compare Source

Patch Changes

v3.1.1

Compare Source

Patch Changes

v3.1.0

Compare Source

Minor Changes
  • #​9846 9b78c992750cdb99c40a89a00ea2a0d1c00877d7 Thanks @​ktym4a! - Adds a new configuration option prefix that allows you to change the default sitemap-*.xml file name.

    By default, running astro build creates both sitemap-index.xml and sitemap-0.xml in your output directory.

    To change the names of these files (e.g. to astrosite-index.xml and astrosite-0.xml), set the prefix option in your sitemap integration configuration:

    import { defineConfig } from 'astro/config';
    import sitemap from '@&#8203;astrojs/sitemap';
    export default defineConfig({
      site: 'https://example.com',
      integrations: [
        sitemap({
          prefix: 'astrosite-',
        }),
      ],
    });
    

    This option is useful when Google Search Console is unable to fetch your default sitemap files, but can read renamed files.

v3.0.5

Compare Source

Patch Changes

v3.0.4

Compare Source

Patch Changes

Configuration

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

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

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.

@bolt-new-by-stackblitz
Copy link

Review PR in StackBlitz Codeflow Run & review this pull request in StackBlitz Codeflow.

@netlify
Copy link

netlify bot commented May 1, 2024

Deploy Preview for advanced-astro-docs failed.

Name Link
🔨 Latest commit e461d9e
🔍 Latest deploy log https://app.netlify.com/sites/advanced-astro-docs/deploys/663210fc3d318e0008447337

@netlify
Copy link

netlify bot commented May 1, 2024

Deploy Preview for astro-docs failed.

Name Link
🔨 Latest commit e461d9e
🔍 Latest deploy log https://app.netlify.com/sites/astro-docs/deploys/663210fca4ffeb0008a23ead

@socket-security
Copy link

socket-security bot commented May 1, 2024

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updated@​astrojs/​preact@​3.0.1 ⏵ 3.5.494 +410081 -1992 +4100
Updated@​astrojs/​sitemap@​3.0.3 ⏵ 3.6.0100 +110082 -1888 -2100
Updated@​astrojs/​react@​3.0.5 ⏵ 3.6.3100 +110082 -1893 +5100

View full report

@renovate renovate bot force-pushed the renovate/astro-monorepo branch from e461d9e to 222a257 Compare January 23, 2025 19:44
@netlify
Copy link

netlify bot commented Jan 23, 2025

Deploy Preview for astro-docs failed.

Name Link
🔨 Latest commit 2582b13
🔍 Latest deploy log https://app.netlify.com/projects/astro-docs/deploys/68f7e24bb59be5000845cb69

@netlify
Copy link

netlify bot commented Jan 23, 2025

Deploy Preview for advanced-astro-docs failed.

Name Link
🔨 Latest commit 2582b13
🔍 Latest deploy log https://app.netlify.com/projects/advanced-astro-docs/deploys/68f7e24b298d950008368f30

@renovate renovate bot force-pushed the renovate/astro-monorepo branch from 222a257 to 5729ccf Compare January 30, 2025 16:29
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from 5729ccf to 1f607f9 Compare February 9, 2025 16:06
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from 1f607f9 to 0cacf17 Compare March 3, 2025 13:04
@renovate renovate bot force-pushed the renovate/astro-monorepo branch 3 times, most recently from 85dca9e to ef1850a Compare March 17, 2025 15:07
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from ef1850a to 3c7241a Compare March 18, 2025 17:46
@renovate renovate bot force-pushed the renovate/astro-monorepo branch 2 times, most recently from b8f8023 to 6db57b7 Compare April 8, 2025 15:54
@renovate renovate bot force-pushed the renovate/astro-monorepo branch 2 times, most recently from 3a58d6d to 191856d Compare April 24, 2025 11:53
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from 191856d to d46bba0 Compare May 12, 2025 13:34
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from d46bba0 to 4a4de16 Compare May 19, 2025 18:23
@renovate renovate bot force-pushed the renovate/astro-monorepo branch 2 times, most recently from 84f73b0 to 571f51e Compare June 4, 2025 08:11
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from 571f51e to 984a06e Compare June 4, 2025 14:13
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from 984a06e to 247f9c9 Compare June 22, 2025 11:24
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from 247f9c9 to dbbe4d2 Compare July 2, 2025 20:48
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from dbbe4d2 to 8471271 Compare July 28, 2025 19:11
@renovate renovate bot force-pushed the renovate/astro-monorepo branch 3 times, most recently from 7ad8afa to 14101e2 Compare August 14, 2025 15:34
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from 14101e2 to 4cb0292 Compare August 19, 2025 11:27
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from 4cb0292 to 3618b19 Compare August 22, 2025 20:22
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from 3618b19 to 24c6d90 Compare August 31, 2025 11:58
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from 24c6d90 to 1a74930 Compare September 17, 2025 11:55
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from 1a74930 to 32ea28c Compare September 25, 2025 17:55
@renovate renovate bot force-pushed the renovate/astro-monorepo branch from 32ea28c to 2582b13 Compare October 21, 2025 19:43
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.

1 participant