Skip to content
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

fix(deps): update remix to v2 (major) #107

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

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Sep 25, 2023

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@remix-run/css-bundle (source) ^1.19.2 -> ^2.0.0 age adoption passing confidence
@remix-run/dev (source) ^1.19.2 -> ^2.0.0 age adoption passing confidence
@remix-run/eslint-config ^1.16.1 -> ^2.0.0 age adoption passing confidence
@remix-run/node ^1.19.2 -> ^2.0.0 age adoption passing confidence
@remix-run/react ^1.19.2 -> ^2.0.0 age adoption passing confidence
@remix-run/serve ^1.19.2 -> ^2.0.0 age adoption passing confidence

Release Notes

remix-run/remix (@​remix-run/css-bundle)

v2.1.0

Compare Source

No significant changes to this package were made in this release. See the releases page on GitHub for an overview of all changes in v2.1.0.

v2.0.1

Compare Source

No significant changes to this package were made in this release. See the releases page on GitHub for an overview of all changes in v2.0.1.

v2.0.0

Compare Source

Major Changes
Patch Changes
  • Decouple the @remix-run/dev package from the contents of the @remix-run/css-bundle package (#​6982)
    • The contents of the @remix-run/css-bundle package are now entirely managed by the Remix compiler. Even though it's still recommended that your Remix dependencies all share the same version, this change ensures that there are no runtime errors when upgrading @remix-run/dev without upgrading @remix-run/css-bundle.

v1.19.3

Compare Source

No significant changes to this package were made in this release. See the releases page on GitHub for an overview of all changes in v1.19.3.

remix-run/remix (@​remix-run/dev)

v2.1.0

Compare Source

Patch Changes

v2.0.1

Compare Source

Patch Changes
  • Fix types for MDX files when using pnpm (#​7491)
  • Update getDependenciesToBundle to handle ESM packages without main exports (#​7272)
    • Note that these packages must expose package.json in their exports field so that their path can be resolved
  • Fix server builds where serverBuildPath extension is .cjs (#​7180)
  • Updated dependencies:

v2.0.0

Compare Source

Major Changes
  • The create-remix CLI has been rewritten to feature a cleaner interface, Git repo initialization and optional remix.init script execution. The interactive template prompt and official Remix stack/template shorthands have also been removed so that community/third-party templates are now on a more equal footing. (#​6887)

    • The code for create-remix has been moved out of the Remix CLI since it's not intended for use within an existing Remix application
    • This means that the remix create command is no longer available.
  • Enable built-in PostCSS and Tailwind support by default. (#​6909)

    • These tools are now automatically used within the Remix compiler if PostCSS and/or Tailwind configuration files are present in your project.
    • If you have a custom PostCSS and/or Tailwind setup outside of Remix, you can disable these features in your remix.config.js via the postcss:false and/or tailwind:false flags
  • Drop React 17 support (#​7121)

  • Require Node >=18.0.0 (#​6939)

  • Compile server build to Node 18 (#​7292)

    • This allows features like top-level await to be used within a Remix app
  • Remove default Node.js polyfills - you must now opt-into polyfills via the serverNodeBuiltinsPolyfill and browserNodeBuiltinsPolyfill configs (#​7269)

  • Remove v2_errorBoundary flag and CatchBoundary implementation (#​6906)

  • Remove v2_normalizeFormMethod future flag - all formMethod values will be normalized in v2 (#​6875)

  • Remove v2_routeConvention flag - the flat route file convention is now standard (#​6969)

  • Remove v2_headers flag - it is now the default behavior to use the deepest headers function in the route tree (#​6979)

  • The route meta API now defaults to the new "V2 Meta" API (#​6958)

  • Default to serverModuleFormat: "esm" and update remix-serve to use dynamic import to support ESM and CJS build outputs (#​6949)

  • Remove serverBuildTarget config option (#​6896)

  • Remove deprecated REMIX_DEV_HTTP_ORIGIN env var - use REMIX_DEV_ORIGIN instead (#​6963)

  • Remove devServerBroadcastDelay config option (#​7063)

  • Remove deprecated devServerPort option - use --port / dev.port instead (#​7078)

  • Remove deprecated REMIX_DEV_SERVER_WS_PORT env var - use remix dev's '--port / port option instead (#​6965)

  • Stop passing isTypeScript to remix.init script (#​7099)

  • Remove replace-remix-magic-imports codemod (#​6899)

  • Remove deprecated --no-restart/restart cli args/flags - use --manual/manual instead (#​6962)

  • Remove deprecated --scheme/scheme and --host/host cli args/flags - use REMIX_DEV_ORIGIN instead (#​6962)

  • Promote the future.v2_dev flag in remix.config.js to a root level dev config (#​7002)

  • Remove browserBuildDirectory config option (#​6900)

  • Remove serverBuildDirectory config option ([#​6897](https://github.com/remix-run/remix/pull/- Remove codemod command (#​6918)
    6897))

  • Removed support for "magic exports" from the remix package. This package can be removed from your package.json and you should update all imports to use the source @remix-run/* packages: (#​6895)

    - import type { ActionArgs } from "remix";
    - import { json, useLoaderData } from "remix";
    + import type { ActionArgs } from "@​remix-run/node";
    + import { json } from "@​remix-run/node";
    + import { useLoaderData } from "@​remix-run/react";
Minor Changes
  • Warn users about obsolete future flags in remix.config.js (#​7048)

  • Detect built mode via build.mode (#​6964)

    • Prevents mode mismatch between built Remix server entry and user-land server
    • Additionally, all runtimes (including non-Node runtimes) can use build.mode to determine if HMR should be performed
  • Support bun package manager (#​7074)

  • The serverNodeBuiltinsPolyfill option (along with the newly added browserNodeBuiltinsPolyfill) now supports defining global polyfills in addition to module polyfills (#​7269)

    • For example, to polyfill Node's Buffer global:

      module.exports = {
        serverNodeBuiltinsPolyfill: {
          globals: {
            Buffer: true,
          },
          // You'll probably need to polyfill the "buffer" module
          // too since the global polyfill imports this:
          modules: {
            buffer: true,
          },
        },
      };
Patch Changes
  • Fix importing of PNGs, SVGs, and other assets from packages in node_modules (#​6813, #​7182)

  • Decouple the @remix-run/dev package from the contents of the @remix-run/css-bundle package. (#​6982)

    • The contents of the @remix-run/css-bundle package are now entirely managed by the Remix compiler
    • Even though it's still recommended that your Remix dependencies all share the same version, this change ensures that there are no runtime errors when upgrading @remix-run/dev without upgrading @remix-run/css-bundle
  • Allow non-development modes for remix watch (#​7117)

  • Stop remix dev when esbuild is not running (#​7158)

  • Do not interpret JSX in .ts files (#​7306)

    • While JSX is supported in .js files for compatibility with existing apps and libraries,
      .ts files should not contain JSX. By not interpreting .ts files as JSX, .ts files
      can contain single-argument type generics without needing a comma to disambiguate from JSX:

      // this works in .ts files
      const id = <T>(x: T) => x;
      //          ^ single-argument type generic
      // this doesn't work in .tsx files
      const id = <T,>(x: T) => x;
      //          ^ is this a JSX element? or a single-argument type generic?
      // this works in .tsx files
      const id = <T,>(x: T) => x;
      //           ^ comma: this is a generic, not a JSX element
      const component = <h1>hello</h1>;
      //                   ^ no comma: this is a JSX element
  • Enhance obsolete flag warning for future.v2_dev if it was an object, and prompt users to lift it to the root dev config (#​7427)

  • Allow decorators in app code (#​7176)

  • Allow JSX in .js files during HMR (#​7112)

  • Kill app server when remix dev terminates (#​7280)

  • Support dependencies that import polyfill packages for Node built-ins via a trailing slash (e.g. importing the buffer package with var Buffer = require('buffer/').Buffer as recommended in their README) (#​7198)

    • These imports were previously marked as external
    • This meant that they were left as dynamic imports in the client bundle and would throw a runtime error in the browser (e.g. Dynamic require of "buffer/" is not supported)
  • Surface errors when PostCSS config is invalid (#​7391)

  • Restart dev server when Remix config changes (#​7269)

  • Remove outdated ESM import warnings (#​6916)

    • Most of the time these warnings were false positives.
    • Instead, we now rely on built-in Node warnings for ESM imports.
  • Do not trigger rebuilds when .DS_Store changes (#​7172)

  • Remove warnings for stabilized flags: (#​6905)

    • unstable_cssSideEffectImports
    • unstable_cssModules
    • unstable_vanillaExtract
  • Allow any mode (NODE_ENV) (#​7113)

  • Replace the deprecated xdm package with @mdx-js/mdx (#​4054)

  • Write a version.txt sentinel file after server build is completely written (#​7299)

  • Updated dependencies:

v1.19.3

Compare Source

Patch Changes
  • Show deprecation warning when using devServerBroadcastDelay and devServerPort config options (#​7064)
  • Updated dependencies:
remix-run/remix (@​remix-run/eslint-config)

v2.1.0

Compare Source

No significant changes to this package were made in this release. See the releases page on GitHub for an overview of all changes in v2.1.0.

v2.0.1

Compare Source

No significant changes to this package were made in this release. See the releases page on GitHub for an overview of all changes in v2.0.1.

v2.0.0

Compare Source

Major Changes
  • Remove @remix-run/eslint-config/jest ESLint config (#​6903)
  • Drop React 17 support (#​7121)
  • Remove magic imports ESLint warnings (#​6902)
  • Remove v2_normalizeFormMethod future flag - all formMethod values will be normalized in v2 (#​6875)

v1.19.3

Compare Source

No significant changes to this package were made in this release. See the releases page on GitHub for an overview of all changes in v1.19.3.

v1.19.2

Compare Source

No significant changes to this package were made in this release. See the releases page on GitHub for an overview of all changes in v1.19.2.

v1.19.1

Compare Source

No significant changes to this package were made in this release. See the releases page on GitHub for an overview of all changes in v1.19.1.

v1.19.0

Compare Source

No significant changes to this package were made in this release. See the releases page on GitHub for an overview of all changes in v1.19.0.

v1.18.1

Compare Source

No significant changes to this package were made in this release. See the releases page on GitHub for an overview of all changes in v1.18.1.

v1.18.0

Compare Source

No significant changes to this package were made in this release. See the releases page on GitHub for an overview of all changes in v1.18.0.

v1.17.1

Compare Source

No significant changes to this package were made in this release. See the releases page on GitHub for an overview of all changes in v1.17.1.

v1.17.0

Compare Source

Patch Changes
  • Add HeadersArgs type to be consistent with loaders/actions/meta and allows for using a function declaration in addition to an arrow function expression (#​6247)

    import type { HeadersArgs } from "@&#8203;remix-run/node"; // or cloudflare/deno
    
    export function headers({ loaderHeaders }: HeadersArgs) {
      return {
        "x-my-custom-thing": loaderHeaders.get("x-my-custom-thing") || "fallback",
      };
    }
remix-run/remix (@​remix-run/node)

v2.1.0

Compare Source

Patch Changes

v2.0.1

Compare Source

Patch Changes

v2.0.0

Compare Source

Major Changes
  • Require Node >=18.0.0 (#​6939)

  • Stop exporting the fetch API in favor of using the version in the global scope - which can be polyfilled via installGlobals (#​7293)

  • Removed/adjusted types to prefer unknown over any and to align with underlying React Router types (#​7319, #​7354):

    • Renamed the useMatches() return type from RouteMatch to UIMatch
    • Renamed LoaderArgs/ActionArgs to LoaderFunctionArgs/ActionFunctionArgs
    • AppData changed from any to unknown
    • Location["state"] (useLocation.state) changed from any to unknown
    • UIMatch["data"] (useMatches()[i].data) changed from any to unknown
    • UIMatch["handle"] (useMatches()[i].handle) changed from { [k: string]: any } to unknown
    • Fetcher["data"] (useFetcher().data) changed from any to unknown
    • MetaMatch.handle (used in meta()) changed from any to unknown
    • AppData/RouteHandle are no longer exported as they are just aliases for unknown
  • The route meta API now defaults to the new "V2 Meta" API (#​6958)

  • For preparation of using Node's built in fetch implementation, installing the fetch globals is now a responsibility of the app server (#​7009)

    • If you are using remix-serve, nothing is required

    • If you are using your own app server, you will need to install the globals yourself

      import { installGlobals } from "@&#8203;remix-run/node";
      
      installGlobals();
  • source-map-support is now a responsibility of the app server (#​7009)

    • If you are using remix-serve, nothing is required

    • If you are using your own app server, you will need to install source-map-support yourself.

      npm i source-map-support
      import sourceMapSupport from "source-map-support";
      sourceMapSupport.install();
  • Removed support for "magic exports" from the remix package. This package can be removed from your package.json and you should update all imports to use the source @remix-run/* packages: (#​6895)

    - import type { ActionArgs } from "remix";
    - import { json, useLoaderData } from "remix";
    + import type { ActionArgs } from "@&#8203;remix-run/node";
    + import { json } from "@&#8203;remix-run/node";
    + import { useLoaderData } from "@&#8203;remix-run/react";
Minor Changes
Patch Changes
  • Remove atob/btoa polyfills in favor of built-in versions (#​7206)
  • Export proper ErrorResponse type for usage alongside isRouteErrorResponse (#​7244)
  • Add the rest of the Web Streams API to installGlobals (#​7321)
  • Ensures fetch() return is instanceof global Response by removing extended classes for NodeRequest and NodeResponse in favor of custom interface type cast (#​7109)
  • Remove recursion from stream utilities (#​7245)
  • Updated dependencies:

v1.19.3

Compare Source

Patch Changes
remix-run/remix (@​remix-run/react)

v2.1.0

Compare Source

Minor Changes
Patch Changes
  • Avoid mutating meta object when tagName is specified (#​7594)
  • Fix FOUC on subsequent client-side navigations to route.lazy routes (#​7576)
  • Emulate types for JSON.parse(JSON.stringify(x)) in SerializeFrom (#​7605)
    • Notably, type fields that are only assignable to undefined after serialization are now omitted since JSON.stringify |> JSON.parse will omit them -- see test cases for examples
    • Also fixes type errors when upgrading to v2 from 1.19
  • Export the proper Remix useMatches wrapper to fix UIMatch typings (#​7551)
  • Updated dependencies:

v2.0.1

Compare Source

Patch Changes
  • Add second generic to UIMatch for handle field (#​7464)
  • Fix resource routes being loaded through route.lazy (#​7498)
  • Throw a semantically correct 405 ErrorResponse instead of just an Error when submitting to a route without an action (#​7423)
  • Updated dependencies:

v2.0.0

Compare Source

Major Changes
  • Drop React 17 support (#​7121)

  • Require Node >=18.0.0 (#​6939)

  • Remove unstable_shouldReload, which has been replaced by shouldRevalidate (#​6865)

  • The route meta API now defaults to the new "V2 Meta" API (#​6958)

  • Promote the future.v2_dev flag in remix.config.js to a root level dev config (#​7002)

  • Remove v2_errorBoundary flag and CatchBoundary implementation (#​6906)

  • Remove back-compat layer for useFetcher/useFetchers, which includes a few small breaking changes (#​6874)

    • fetcher.type has been removed since it can be derived from other available information
    • "Submission" fields have been flattened from fetcher.submission down onto the root fetcher object, and prefixed with form in some cases (fetcher.submission.action => fetcher.formAction)
    • <fetcher.Form method="get"> is now more accurately categorized as state:"loading" instead of state:"submitting" to better align with the underlying GET request
  • Remove v2_normalizeFormMethod future flag - all formMethod values will be normalized in v2 (#​6875)

  • Remove deprecated useTransition hook in favor of useNavigation - useNavigation is almost identical with a few exceptions: (#​6870)

    • useTransition.type has been removed since it can be derived from other available information
    • "Submission" fields have been flattened from useTransition().submission down onto the root useNavigation() object
    • <Form method="get"> is now more accurately categorized as state:"loading" instead of state:"submitting" to better align with the underlying GET navigation
  • Remove v2_routeConvention flag - the flat route file convention is now standard. (#​6969)

  • Remove v2_headers flag - it is now the default behavior to use the deepest headers function in the route tree. (#​6979)

  • Removed/adjusted types to prefer unknown over any and to align with underlying React Router types (#​7319, #​7354):

    • Renamed the useMatches() return type from RouteMatch to UIMatch
    • Renamed LoaderArgs/ActionArgs to LoaderFunctionArgs/ActionFunctionArgs
    • AppData changed from any to unknown
    • Location["state"] (useLocation.state) changed from any to unknown
    • UIMatch["data"] (useMatches()[i].data) changed from any to unknown
    • UIMatch["handle"] (useMatches()[i].handle) changed from { [k: string]: any } to unknown
    • Fetcher["data"] (useFetcher().data) changed from any to unknown
    • MetaMatch.handle (used in meta()) changed from any to unknown
    • AppData/RouteHandle are no longer exported as they are just aliases for unknown
  • Remove imagesizes & imagesrcset properties from HtmlLinkDescriptor, LinkDescriptor & PrefetchPageDescriptor types (#​6936)

  • Remove deprecated REMIX_DEV_SERVER_WS_PORT env var (#​6965)

    • use remix dev's '--port/port option instead
  • Removed support for "magic exports" from the remix package. This package can be removed from your package.json and you should update all imports to use the source @remix-run/* packages: (#​6895)

    - import type { ActionArgs } from "remix";
    - import { json, useLoaderData } from "remix";
    + import type { ActionArgs } from "@&#8203;remix-run/node";
    + import { json } from "@&#8203;remix-run/node";
    + import { useLoaderData } from "@&#8203;remix-run/react";
Minor Changes
  • Export the Navigation type returned from useNavigation (#​7136)
  • Update Remix to use React Router route.lazy for module loading (#​7133)
Patch Changes
  • Add error to meta() params so you can render error titles, etc. (#​7105)

    export function meta({ error }) {
      return [{ title: error.message }];
    }
  • Re-Export ShouldRevalidateFunctionArgs type from React Router (#​7316)

  • Deduplicate prefetch link tags (#​7060)

  • Skip preloading of stylesheets on client-side route transitions if the browser does not support <link rel=preload> (#​7106)

    • This prevents us from hanging on client-side navigations when we try to preload stylesheets and never receive a load/error event on the link tag
  • Export proper ErrorResponse type for usage alongside isRouteErrorResponse (#​7244)

  • Use the hostname from REMIX_DEV_ORIGIN to connect to the live reload socket (#​6923)

  • Use unique key for script:ld+json meta descriptors (#​6954)

  • Fix live reload port when set explicitly as a prop (#​7358)

  • Fix types for useLoaderData when using Yarn PnP (#​7137)

  • Updated dependencies:

v1.19.3

Compare Source

No significant changes to this package were made in this release. See the releases page on GitHub for an overview of all changes in v1.19.3.

remix-run/remix (@​remix-run/serve)

v2.1.0

Compare Source

Patch Changes

v2.0.1

Compare Source

Patch Changes
  • Fix HMR for CJS projects using remix-serve and manual mode (remix dev --manual) (#​7487)
    • By explicitly busting the require cache, remix-serve now correctly re-imports new server changes in CJS
    • ESM projects were already working correctly and are not affected by this.
  • Fix error caused by partially written server build (#​7470)
    • Previously, it was possible to trigger a reimport of the app server code before the new server build had completely been written. Reimporting the partially written server build caused issues related to build.assets being undefined and crashing when reading build.assets.version
  • Updated dependencies:

v2.0.0

Compare Source

Major Changes
  • remix-serve now picks an open port if 3000 is taken (#​7278)

    • If PORT env var is set, remix-serve will use that port
    • Otherwise, remix-serve picks an open port (3000 unless that is already taken)
  • Integrate manual mode in remix-serve (#​7231)

  • Remove undocumented createApp Node API (#​7229)

    • remix-serve is a CLI, not a library
  • Require Node >=18.0.0 (#​6939)

  • Promote the future.v2_dev flag in remix.config.js to a root level dev config (#​7002)

  • Default to serverModuleFormat: "esm" and update remix-serve to use dynamic import to support ESM and CJS build outputs (#​6949)

  • Preserve dynamic imports in remix-serve for external bundle (#​7173)

  • For preparation of using Node's built in fetch implementation, installing the fetch globals is now a responsibility of the app server (#​7009)

    • If you are using remix-serve, nothing is required

    • If you are using your own app server, you will need to install the globals yourself

      import { installGlobals } from "@&#8203;remix-run/node";
      
      installGlobals();
  • source-map-support is now a responsibility of the app server (#​7009)

    • If you are using remix-serve, nothing is required

    • If you are using your own app server, you will need to install source-map-support yourself.

      npm i source-map-support
      import sourceMapSupport from "source-map-support";
      sourceMapSupport.install();
Patch Changes

v1.19.3

Compare Source

Patch Changes

Configuration

📅 Schedule: Branch creation - "before 8am on Monday" (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 these updates again.


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

This PR has been generated by Mend Renovate. View repository job log here.

@railway-app
Copy link

railway-app bot commented Sep 25, 2023

This PR was not deployed automatically as @renovate[bot] does not have access to the Railway project.

In order to get automatic PR deploys, please add @renovate[bot] to the project inside the project settings page.

@changeset-bot
Copy link

changeset-bot bot commented Sep 25, 2023

⚠️ No Changeset found

Latest commit: 1048147

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@vercel
Copy link

vercel bot commented Sep 25, 2023

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

Name Status Preview Comments Updated (UTC)
storybook ✅ Ready (Inspect) Visit Preview 💬 Add feedback Sep 26, 2023 2:15pm
website ❌ Failed (Inspect) Sep 26, 2023 2:15pm

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.

None yet

0 participants