Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Sep 22, 2025

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@shopify/shopify-app-remix (source) ^3.4.0 -> ^4.0.0 age adoption passing confidence

Release Notes

Shopify/shopify-app-js (@​shopify/shopify-app-remix)

v4.0.6

Compare Source

Patch Changes

v4.0.5

Compare Source

Patch Changes

v4.0.4

Compare Source

Patch Changes

v4.0.3

Compare Source

Patch Changes

v4.0.2

Compare Source

Patch Changes
  • aad39bd: Make it clear that you should use @shopify/shopify-app-react-router

    Only use @shopify/shopify-app-remix if you have an existing Remix app and have not yet upgraded.

    If you are building a new Shopify app you should use React Router and not Remix. Please see the Quick start guide for React Router.

    If you already have a Remix app, you should upgrade to React Router. Please see the Upgrading to React Router guide.

v4.0.1

Compare Source

Patch Changes
  • 7488abc: [AppProvider] - automatically handle the "shopify:navigate" event for Remix apps using Polaris Web Components. If using Polars React, this has no effect.

v4.0.0

Compare Source

Major Changes
  • dc41d09: Require Node >= v20.10.0. Remove crypto dependency in favor of globalThis.crypto

    If you are using Node, make sure you are using Node version 20 or above

    If you are using setCrypto from '@​shopify/shopify-api' you can remove this code.

  • d7bd799: Remove REST entirely.

    9 months ago in version 3.5.0 we signalled our intent to remove REST (Shopify is all-in on GraphQL). At that time we added the removeRest flag to allow the small percentage of Remix apps that use REST to gradually migrate to GraphQL in preparation for this version.

    The time has now come to remove REST entirely from the Remix package. As such, you will need to migrate any remaining REST queries to GraphQL.

    If you previously adopted the removeRest flag, you'll need to remove that flag.

    BEFORE:

    import {shopifyApp} from '@​shopify/shopify-app-remix/server';
    
    const shopify = shopifyApp({
      future: {
        unstable_newEmbeddedAuthStrategy: true,
        removeRest: true,
      },
      // ...etc
    });

    AFTER:

    import {shopifyApp} from '@​shopify/shopify-app-remix/server';
    
    const shopify = shopifyApp({
      future: {
        unstable_newEmbeddedAuthStrategy: true,
      },
      // ...etc
    });

    If you have any REST queries in your app, you'll need to migrate those to GraphQL.

    BEFORE:

    import {json} from '@​remix-run/node';
    import {authenticate} from '../shopify.server';
    
    export const loader = async ({request}) => {
      const {admin} = await authenticate.admin(request);
    
      const response = await admin.rest.get({
        path: '/customers/count.json',
      });
      const customers = await response.json();
    
      return json({customers});
    };

    AFTER:

    import {json} from '@​remix-run/node';
    import {authenticate} from '../shopify.server';
    
    export const loader = async ({request}) => {
      const {admin} = await authenticate.admin(request);
    
      const response = await admin.graphql(QUERY);
      const customers = await response.json();
    
      return json({customers});
    };

    Please see the REST to GraphQL Migration guide for more detailed REST to GraphQL examples.

  • 762224d: The LATEST_API_VERSION and RELEASE_CANDIDATE_API_VERSION constants have been removed from the package. The apiVersion parameter is now required in the shopifyApp configuration.

    We are making this change to ensure the API versions do not change without the developer explicitly opting into the new version. This removes the potential for apps to break unexpectedly and should reduce overall maintenance.

Migration Steps
Step 1: Update Your Imports

Before:

import {
  LATEST_API_VERSION,
  shopifyApp,
} from '@​shopify/shopify-app-remix/server';
// or
import {
  RELEASE_CANDIDATE_API_VERSION,
  shopifyApp,
} from '@​shopify/shopify-app-remix/server';

After:

import {ApiVersion, shopifyApp} from '@​shopify/shopify-app-remix/server';
Step 2: Update Your Configuration

Before:

const shopify = shopifyApp({
  apiKey: process.env.SHOPIFY_API_KEY!,
  apiSecretKey: process.env.SHOPIFY_API_SECRET!,
  scopes: process.env.SCOPES?.split(',')!,
  appUrl: process.env.SHOPIFY_APP_URL!,
  apiVersion: LATEST_API_VERSION, // or omitted entirely
});

After:

const shopify = shopifyApp({
  apiKey: process.env.SHOPIFY_API_KEY!,
  apiSecretKey: process.env.SHOPIFY_API_SECRET!,
  scopes: process.env.SCOPES?.split(',')!,
  appUrl: process.env.SHOPIFY_APP_URL!,
  apiVersion: ApiVersion.July25, // Now required - choose your desired version
});
Patch Changes

Configuration

📅 Schedule: Branch creation - "on monday before 8am" (UTC), 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.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


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

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

@renovate renovate bot requested a review from a team as a code owner September 22, 2025 02:04
@renovate renovate bot force-pushed the renovate/shopify-shopify-app-remix-4.x branch 2 times, most recently from 4ab3c92 to 34c20d8 Compare September 25, 2025 19:34
@renovate
Copy link
Contributor Author

renovate bot commented Sep 25, 2025

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: examples/shopify-integration/package-lock.json
npm warn Unknown env config "store". This will stop working in the next major version of npm.
npm warn Unknown project config "auto-install-peers". This will stop working in the next major version of npm.
npm warn Unknown project config "shamefully-hoist". This will stop working in the next major version of npm.
npm warn Unknown project config "enable-pre-post-scripts". This will stop working in the next major version of npm.
npm error code ERESOLVE
npm error ERESOLVE could not resolve
npm error
npm error While resolving: @remix-run/[email protected]
npm error Found: [email protected]
npm error node_modules/vite
npm error   dev vite@"^7.0.0" from the root project
npm error   vite@"^5.0.0 || ^6.0.0 || ^7.0.0-0" from [email protected]
npm error   node_modules/@remix-run/dev/node_modules/vite-node
npm error     vite-node@"^3.1.3" from @remix-run/[email protected]
npm error     node_modules/@remix-run/dev
npm error       @remix-run/dev@"^2.7.1" from the root project
npm error       2 more (@remix-run/fs-routes, @remix-run/route-config)
npm error   1 more (vite-tsconfig-paths)
npm error
npm error Could not resolve dependency:
npm error peerOptional vite@"^5.1.0 || ^6.0.0" from @remix-run/[email protected]
npm error node_modules/@remix-run/dev
npm error   @remix-run/dev@"^2.7.1" from the root project
npm error   peer @remix-run/dev@"^2.17.0" from @remix-run/[email protected]
npm error   node_modules/@remix-run/fs-routes
npm error     @remix-run/fs-routes@"^2.15.0" from the root project
npm error   1 more (@remix-run/route-config)
npm error
npm error Conflicting peer dependency: [email protected]
npm error node_modules/vite
npm error   peerOptional vite@"^5.1.0 || ^6.0.0" from @remix-run/[email protected]
npm error   node_modules/@remix-run/dev
npm error     @remix-run/dev@"^2.7.1" from the root project
npm error     peer @remix-run/dev@"^2.17.0" from @remix-run/[email protected]
npm error     node_modules/@remix-run/fs-routes
npm error       @remix-run/fs-routes@"^2.15.0" from the root project
npm error     1 more (@remix-run/route-config)
npm error
npm error Fix the upstream dependency conflict, or retry
npm error this command with --force or --legacy-peer-deps
npm error to accept an incorrect (and potentially broken) dependency resolution.
npm error
npm error
npm error For a full report see:
npm error /runner/cache/others/npm/_logs/2025-12-03T17_07_35_894Z-eresolve-report.txt
npm error A complete log of this run can be found in: /runner/cache/others/npm/_logs/2025-12-03T17_07_35_894Z-debug-0.log

@renovate renovate bot force-pushed the renovate/shopify-shopify-app-remix-4.x branch from 34c20d8 to 02f4bc8 Compare October 20, 2025 21:17
@renovate renovate bot force-pushed the renovate/shopify-shopify-app-remix-4.x branch 2 times, most recently from fad8dcf to a59505a Compare November 6, 2025 09:03
@renovate renovate bot force-pushed the renovate/shopify-shopify-app-remix-4.x branch from a59505a to 5d8d4f5 Compare November 10, 2025 19:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant