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

⬆️ Bump remix monorepo to v1.19.3 #592

Closed
wants to merge 1 commit into from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jan 28, 2024

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@remix-run/dev (source) 1.15.0 -> 1.19.3 age adoption passing confidence
@remix-run/node (source) 1.15.0 -> 1.19.3 age adoption passing confidence
@remix-run/react (source) 1.15.0 -> 1.19.3 age adoption passing confidence
@remix-run/serve (source) 1.15.0 -> 1.19.3 age adoption passing confidence
@remix-run/server-runtime (source) 1.15.0 -> 1.19.3 age adoption passing confidence

Release Notes

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

v1.19.3

Compare Source

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

v1.19.2

Compare Source

Patch Changes
  • Update proxy-agent to resolve npm audit security vulnerability (#​7027)
  • Updated dependencies:
    • @remix-run/server-runtime@1.19.2

v1.19.1

Compare Source

Patch Changes
  • Add a heartbeat ping to prevent the WebSocket connection from being closed due to inactivity when using a proxy like Cloudflare (#​6904, #​6927)
  • Treeshake out HMR code from production builds (#​6894)
  • Updated dependencies:
    • @remix-run/server-runtime@1.19.1

v1.19.0

Compare Source

Minor Changes
  • improved networking options for v2_dev (#​6724)

    deprecate the --scheme and --host options and replace them with the REMIX_DEV_ORIGIN environment variable

  • Output esbuild metafiles for bundle analysis (#​6772)

    Written to server build directory (build/ by default):

    • metafile.css.json
    • metafile.js.json (browser JS)
    • metafile.server.json (server JS)

    Metafiles can be uploaded to https://esbuild.github.io/analyze/ for analysis.

  • Add serverNodeBuiltinsPolyfill config option. In remix.config.js you can now disable polyfills of Node.js built-in modules for non-Node.js server platforms, or opt into a subset of polyfills. (#​6814, #​6859, #​6877)

    // Disable all polyfills
    exports.serverNodeBuiltinsPolyfill = { modules: {} };
    
    // Enable specific polyfills
    exports.serverNodeBuiltinsPolyfill = {
      modules: {
        crypto: true, // Provide a JSPM polyfill
        fs: "empty", // Provide an empty polyfill
      },
    };
Patch Changes
  • ignore missing react-dom/client for react 17 (#​6725)

  • Warn if not using v2_dev (#​6818)

    Also, rename --no-restart to --manual to match intention and documentation.
    --no-restart remains an alias for --manual in v1 for backwards compatibility.

  • ignore errors when killing already dead processes (#​6773)

  • Always rewrite css-derived assets during builds (#​6837)

  • fix sourcemaps for v2_dev (#​6762)

  • Do not clear screen when dev server starts (#​6719)

    On some terminal emulators, "clearing" only scrolls the next line to the
    top. on others, it erases the scrollback.

    Instead, let users call clear themselves (clear && remix dev) if
    they want to clear.

  • Updated dependencies:

    • @remix-run/server-runtime@1.19.0

v1.18.1

Compare Source

Patch Changes
  • Ignore missing react-dom/client for React 17 (#​6725)
  • Updated dependencies:
    • @remix-run/server-runtime@1.18.1

v1.18.0

Compare Source

Minor Changes
  • stabilize v2 dev server (#​6615)
  • improved logging for remix build and remix dev (#​6596)
Patch Changes
  • fix docs links for msw and mkcert (#​6672)
  • fix remix dev -c: kill all descendant processes of specified command when restarting (#​6663)
  • Add caching to regular stylesheet compilation (#​6638)
  • Rename Architect (AWS Lambda) -> Architect in the create-remix CLI to avoid confusion for other methods of deploying to AWS (i.e., SST) (#​6484)
  • Improve CSS bundle build performance by skipping unused Node polyfills (#​6639)
  • Improve performance of CSS bundle build by skipping compilation of Remix/React packages that are known not to contain CSS imports (#​6654)
  • Cache CSS side-effect imports transform when using HMR (#​6622)
  • Fix bug with pathless layout routes beneath nested path segments (#​6649)
  • Add caching to PostCSS for CSS Modules (#​6604)
  • Add caching to PostCSS for side-effect imports (#​6554)
  • cache getRouteModuleExports calls to significantly speed up build and HMR rebuild times (#​6629)
  • group rebuild logs with surrounding whitespace (#​6607)
  • instructions for integrating with msw (#​6669)
  • Update minimum version of esbuild-plugins-node-modules-polyfill to 1.0.16 to ensure that the plugin is cached (#​6652)
  • Updated dependencies:
    • @remix-run/server-runtime@1.18.0

v1.17.1

Compare Source

Patch Changes
  • Replace esbuild-plugin-polyfill-node with esbuild-plugins-node-modules-polyfill (#​6562)
  • Lazily generate CSS bundle when import of @remix-run/css-bundle is detected (#​6535)
  • Updated dependencies:
    • @remix-run/server-runtime@1.17.1

v1.17.0

Compare Source

Minor Changes
  • built-in tls support (#​6483)

    New options:

    • --tls-key / tlsKey: TLS key
    • --tls-cert / tlsCert: TLS Certificate

    If both TLS options are set, scheme defaults to https

v1.16.1

Compare Source

Patch Changes
  • Cross-module loader change detection for HDR (#​6299)
  • Normalize path for dev server PATH envvar so that it works cross-platform (e.g. Windows) (#​6310)
  • Fix CSS imports in JS files that use JSX (#​6309)
  • Kill app server when dev server exits (#​6395)
  • Wait until app server is killed before starting a new app server (#​6289)
  • Ensure CSS bundle changes result in a new manifest hash (#​6374)
  • Normalize file paths before testing if a changed file is a route entry (#​6293)
  • Fix race where app server responds with updated manifest version before dev server is listening for it (#​6294)
    • dev server now listens for updated versions before writing the server changes, guaranteeing that it is listening before the app server gets a chance to send its 'ready' message
  • Only process .css.ts/.css.js files with Vanilla Extract if @vanilla-extract/css is installed (#​6345)
  • Stop modifying a user's tsconfig.json when running using getConfig (remix dev, remix routes, remix build, etc) (#​6156)
  • Cancel previous build when rebuild is kicked off to prevent rebuilds from hanging (#​6295)
  • Update minimum version of Babel dependencies to avoid errors parsing decorators (#​6390)
  • Support asset imports when detecting loader changes for HDR (#​6396)
  • Updated dependencies:
    • @remix-run/server-runtime@1.16.1

v1.16.0

Compare Source

Minor Changes
  • Enable support for CSS Modules, Vanilla Extract and CSS side-effect imports (#​6046)

    These CSS bundling features were previously only available via future.unstable_cssModules, future.unstable_vanillaExtract and future.unstable_cssSideEffectImports options in remix.config.js, but they have now been stabilized.

    In order to use these features, check out our guide to CSS bundling in your project.

  • Stabilize built-in PostCSS support via the new postcss option in remix.config.js. As a result, the future.unstable_postcss option has also been deprecated. (#​5960)

    The postcss option is false by default, but when set to true will enable processing of all CSS files using PostCSS if postcss.config.js is present.

    If you followed the original PostCSS setup guide for Remix, you may have a folder structure that looks like this, separating your source files from its processed output:

    .
    ├── app
    │   └── styles (processed files)
    │       ├── app.css
    │       └── routes
    │           └── index.css
    └── styles (source files)
        ├── app.css
        └── routes
            └── index.css
    

    After you've enabled the new postcss option, you can delete the processed files from app/styles folder and move your source files from styles to app/styles:

    .
    ├── app
    │   └── styles (source files)
    │       ├── app.css
    │       └── routes
    │           └── index.css
    

    You should then remove app/styles from your .gitignore file since it now contains source files rather than processed output.

    You can then update your package.json scripts to remove any usage of postcss since Remix handles this automatically. For example, if you had followed the original setup guide:

    {
      "scripts": {
    -    "dev:css": "postcss styles --base styles --dir app/styles -w",
    -    "build:css": "postcss styles --base styles --dir app/styles --env production",
    -    "dev": "concurrently \"npm run dev:css\" \"remix dev\""
    +    "dev": "remix dev"
      }
    }
  • Stabilize built-in Tailwind support via the new tailwind option in remix.config.js. As a result, the future.unstable_tailwind option has also been deprecated. (#​5960)

    The tailwind option is false by default, but when set to true will enable built-in support for Tailwind functions and directives in your CSS files if tailwindcss is installed.

    If you followed the original Tailwind setup guide for Remix and want to make use of this feature, you should first delete the generated app/tailwind.css.

    Then, if you have a styles/tailwind.css file, you should move it to app/tailwind.css.

    rm app/tailwind.css
    mv styles/tailwind.css app/tailwind.css

    Otherwise, if you don't already have an app/tailwind.css file, you should create one with the following contents:

    @​tailwind base;
    @​tailwind components;
    @​tailwind utilities;

    You should then remove /app/tailwind.css from your .gitignore file since it now contains source code rather than processed output.

    You can then update your package.json scripts to remove any usage of tailwindcss since Remix handles this automatically. For example, if you had followed the original setup guide:

    {
      // ...
      "scripts": {
    -    "build": "run-s \"build:*\"",
    +    "build": "remix build",
    -    "build:css": "npm run generate:css -- --minify",
    -    "build:remix": "remix build",
    -    "dev": "run-p \"dev:*\"",
    +    "dev": "remix dev",
    -    "dev:css": "npm run generate:css -- --watch",
    -    "dev:remix": "remix dev",
    -    "generate:css": "npx tailwindcss -o ./app/tailwind.css",
        "start": "remix-serve build"
      }
      // ...
    }
  • The Remix dev server spins up your app server as a managed subprocess. (#​6133)
    This keeps your development environment as close to production as possible.
    It also means that the Remix dev server is compatible with any app server.

    By default, the dev server will use the Remix App Server, but you opt to use your own app server by specifying the command to run it via the -c/--command flag:

    remix dev # uses `remix-serve <serve build path>` as the app server
    remix dev -c "node ./server.js" # uses your custom app server at `./server.js`

    The dev server will:

    • force NODE_ENV=development and warn you if it was previously set to something else
    • rebuild your app whenever your Remix app code changes
    • restart your app server whenever rebuilds succeed
    • handle live reload and HMR + Hot Data Revalidation
App server coordination

In order to manage your app server, the dev server needs to be told what server build is currently being used by your app server.
This works by having the app server send a "I'm ready!" message with the Remix server build hash as the payload.

This is handled automatically in Remix App Server and is set up for you via calls to broadcastDevReady or logDevReady in the official Remix templates.

If you are not using Remix App Server and your server doesn't call broadcastDevReady, you'll need to call it in your app server after it is up and running.
For example, in an Express server:

// server.js
// <other imports>
import { broadcastDevReady } from "@&#8203;remix-run/node";

// Path to Remix's server build directory ('build/' by default)
const BUILD_DIR = path.join(process.cwd(), "build");

// <code setting up your express server>

app.listen(3000, () => {
  const build = require(BUILD_DIR);
  console.log("Ready: http://localhost:" + port);

  // in development, call `broadcastDevReady` _after_ your server is up and running
  if (process.env.NODE_ENV === "development") {
    broadcastDevReady(build);
  }
});
Options

Options priority order is: 1. flags, 2. config, 3. defaults.

Option flag config default
Command -c / --command command remix-serve <server build path>
HTTP(S) scheme --http-scheme httpScheme http
HTTP(S) host --http-host httpHost localhost
HTTP(S) port --http-port httpPort Dynamically chosen open port
Websocket port --websocket-port websocketPort Dynamically chosen open port
No restart --no-restart restart: false restart: true

🚨 The --http-* flags are only used for internal dev server <-> app server communication.
Your app will run on your app server's normal URL.

To set unstable_dev configuration, replace unstable_dev: true with unstable_dev: { <options> }.
For example, to set the HTTP(S) port statically:

// remix.config.js
module.exports = {
  future: {
    unstable_dev: {
      httpPort: 8001,
    },
  },
};
SSL and custom hosts

You should only need to use the --http-* flags and --websocket-port flag if you need fine-grain control of what scheme/host/port for the dev server.
If you are setting up SSL or Docker networking, these are the flags you'll want to use.

🚨 Remix will not set up SSL and custom host for you.
The --http-scheme and --http-host flag are for you to tell Remix how you've set things up.
It is your task to set up SSL certificates and host files if you want those features.

--no-restart and require cache purging

If you want to manage server changes yourself, you can use the --no-restart flag to tell the dev server to refrain from restarting your app server when builds succeed:

remix dev -c "node ./server.js" --no-restart

For example, you could purge the require cache of your app server to keep it running while picking up server changes.
If you do so, you should watch the server build path (build/ by default) for changes and only purge the require cache when changes are detected.

🚨 If you use --no-restart, it is your responsibility to call broadcastDevReady when your app server has picked up server changes.
For example, with chokidar:

// server.dev.js
const BUILD_PATH = path.resolve(__dirname, "build");

const watcher = chokidar.watch(BUILD_PATH);

watcher.on("change", () => {
  // 1. purge require cache
  purgeRequireCache();
  // 2. load updated server build
  const build = require(BUILD_PATH);
  // 3. tell dev server that this app server is now ready
  broadcastDevReady(build);
});
Patch Changes
  • Fix absolute paths in CSS url() rules when using CSS Modules, Vanilla Extract and CSS side-effect imports (#​5788)
  • look for @​remix-run/serve in devDependencies when running remix dev (#​6228)
  • add warning for v2 "cjs"->"esm" serverModuleFormat default change (#​6154)
  • write mjs server output files (#​6225)
  • fix(react,dev): dev chunking and refresh race condition (#​6201)
  • Use correct require context in bareImports plugin. (#​6181)
  • use minimatch for regex instead of glob-to-regexp (#​6017)
  • add logDevReady as replacement for platforms that can't initialize async I/O outside of the request response lifecycle. (#​6204)
  • Use the "automatic" JSX runtime when processing MDX files. (#​6098)
  • forcibly kill app server during dev (#​6197)
  • show first compilation error instead of cancelation errors (#​6202)
  • Resolve imports from route modules across the graph back to the virtual module created by the v2 routes plugin. This fixes issues where we would duplicate portions of route modules that were imported. (#​6098)
  • Updated dependencies:
    • @remix-run/server-runtime@1.16.0
remix-run/remix (@​remix-run/node)

v1.19.3

Compare Source

Patch Changes
  • Updated dependencies:
    • @remix-run/server-runtime@1.19.3

v1.19.2

Compare Source

Patch Changes
  • Update to latest @remix-run/web-* packages (#​7026)
  • Updated dependencies:
    • @remix-run/server-runtime@1.19.2

v1.19.1

Compare Source

Patch Changes
  • Updated dependencies:
    • @remix-run/server-runtime@1.19.1

v1.19.0

Compare Source

Patch Changes
  • Upgrade to @remix-run/web-fetch@4.3.5. Submitted empty file inputs are now correctly parsed out as empty File instances instead of being surfaced as an empty string via request.formData() (#​6816)
  • Updated dependencies:
    • @remix-run/server-runtime@1.19.0

v1.18.1

Compare Source

Patch Changes
  • Updated dependencies:
    • @remix-run/server-runtime@1.18.1

v1.18.0

Compare Source

Patch Changes
  • Updated dependencies:
    • @remix-run/server-runtime@1.18.0

v1.17.1

Compare Source

Patch Changes
  • Updated dependencies:
    • @remix-run/server-runtime@1.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",
      };
    }
  • Fix request.clone() instanceof Request returning false. (#​6512)

  • Updated dependencies:

    • @remix-run/server-runtime@1.17.0

v1.16.1

Compare Source

Patch Changes
  • Updated dependencies:
    • @remix-run/server-runtime@1.16.1

v1.16.0

Compare Source

Patch Changes
  • add @remix-run/node/install side-effect to allow node --require @&#8203;remix-run/node/install (#​6132)
  • add logDevReady as replacement for platforms that can't initialize async I/O outside of the request response lifecycle. (#​6204)
  • add missing files to published package (#​6179)
  • Updated dependencies:
    • @remix-run/server-runtime@1.16.0
remix-run/remix (@​remix-run/react)

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

Minor Changes
  • improved networking options for v2_dev (#​6724)

    deprecate the --scheme and --host options and replace them with the REMIX_DEV_ORIGIN environment variable

  • Added some missing react-router exports to @remix-run/react (#​6856)

Patch Changes
  • Narrowed the type of fetcher.formEncType to use FormEncType from react-router-dom instead of string (#​6810)
  • Deferred promises that return undefined/void now surface a serialization error. (#​6793)
  • Properly handle ?_data HTTP/Network errors that don't reach the Remix server and ensure they bubble to the ErrorBoundary (#​6783)
  • Support proper hydration of Error subclasses such as ReferenceError/TypeError in development mode (#​6675)
  • fix router race condition for hmr (#​6767)
  • Avoid re-prefetching stylesheets for active routes during a revalidation (#​6679)
  • Add generic type for useRouteLoaderData() (#​5157)
  • Bump RR 6.14.2 (#​6854)
  • Updated dependencies:

v1.18.1

Compare Source

Patch Changes

v1.18.0

Compare Source

Minor Changes
  • stabilize v2 dev server (#​6615)
  • Support application/json and text/plain submission encodings in useSubmit/fetcher.submit (#​6570)
  • Add support for <Link prefetch="viewport"> to prefetch links when they enter the viewport via an Intersection Observer (#​6433)
Patch Changes
  • Bump router 6.14.0-pre.1 (#​6662)
  • Detect mismatches between the initially loaded URL and the URL at the time we hydrate and trigger a hard reload if they do not match. This is an edge-case that can happen when the network is slowish and the user clicks forward into a Remix app and then clicks forward again while the initial JS chunks are loading. (#​6409)
  • Lock in react router 6.14.0 (#​6677)
  • properly pass props to inline script tags for deferred data (#​6389)

v1.17.1

Compare Source

Patch Changes

v1.17.0

Compare Source

Minor Changes
  • Faster server export removal for routes when unstable_dev is enabled. (#​6455)

    Also, only render modulepreloads on SSR.
    Do not render modulepreloads when hydrated.

  • Force Typescript to simplify type produced by Serialize. (#​6449)

    As a result, the following types and functions have simplified return types:

    • SerializeFrom
    • useLoaderData
    • useActionData
    • useFetcher
    type Data = { hello: string; when: Date };
    
    // BEFORE
    type Unsimplified = SerializeFrom<Data>;
    //   ^? SerializeObject<UndefinedToOptional<{ hello: string; when: Date }>>
    
    // AFTER
    type Simplified = SerializeFrom<Data>;
    //   ^? { hello: string; when: string }
  • Reuse dev server port for WebSocket (Live Reload,HMR,HDR) (#​6476)

    As a result the webSocketPort/--websocket-port option has been obsoleted.
    Additionally, scheme/host/port options for the dev server have been renamed.

    Available options are:

    Option flag config default
    Command -c / --command command remix-serve <server build path>
    Scheme --scheme scheme http
    Host --host host localhost
    Port --port port Dynamically chosen open port
    No restart --no-restart restart: false restart: true

    Note that scheme/host/port options are for the dev server, not your app server.
    You probably don't need to use scheme/host/port option if you aren't configuring networking (e.g. for Docker or SSL).

Patch Changes

v1.16.1

Compare Source

Patch Changes
  • Cross-module loader change detection for HDR (#​6299)
  • Better opt-out of loader revalidation on UI only changes (#​6278)
  • Add useMatch re-export from react-router-dom (#​5257)
  • Fix data parameter typing on V2_MetaFunction to include undefined for scenarios in which the loader threw to it's own boundary. (#​6231)
  • Updated dependencies:

v1.16.0

Compare Source

Minor Changes
  • Enable support for CSS Modules, Vanilla Extract and CSS side-effect imports (#​6046)

    These CSS bundling features were previously only available via future.unstable_cssModules, future.unstable_vanillaExtract and future.unstable_cssSideEffectImports options in remix.config.js, but they have now been stabilized.

    In order to use these features, check out our guide to CSS bundling in your project.

  • Stabilize built-in PostCSS support via the new postcss option in remix.config.js. As a result, the future.unstable_postcss option has also been deprecated. (#​5960)

    The postcss option is false by default, but when set to true will enable processing of all CSS files using PostCSS if postcss.config.js is present.

    If you followed the original PostCSS setup guide for Remix, you may have a folder structure that looks like this, separating your source files from its processed output:

    .
    ├── app
    │   └── styles (processed files)
    │       ├── app.css
    │       └── routes
    │           └── index.css
    └── styles (source files)
        ├── app.css
        └── routes
            └── index.css
    

    After you've enabled the new postcss option, you can delete the processed files from app/styles folder and move your source files from styles to app/styles:

    .
    ├── app
    │   └── styles (source files)
    │       ├── app.css
    │       └── routes
    │           └── index.css
    

    You should then remove app/styles from your .gitignore file since it now contains source files rather than processed output.

    You can then update your package.json scripts to remove any usage of postcss since Remix handles this automatically. For example, if you had followed the original setup guide:

    {
      "scripts": {
    -    "dev:css": "postcss styles --base styles --dir app/styles -w",
    -    "build:css": "postcss styles --base styles --dir app/styles --env production",
    -    "dev": "concurrently \"npm run dev:css\" \"remix dev\""
    +    "dev": "remix dev"
      }
    }
  • Stabilize built-in Tailwind support via the new tailwind option in remix.config.js. As a result, the future.unstable_tailwind option has also been deprecated. (#​5960)

    The tailwind option is false by default, but when set to true will enable built-in support for Tailwind functions and directives in your CSS files if tailwindcss is installed.

    If you followed the original Tailwind setup guide for Remix and want to make use of this feature, you should first delete the generated app/tailwind.css.

    Then, if you have a styles/tailwind.css file, you should move it to app/tailwind.css.

    rm app/tailwind.css
    mv styles/tailwind.css app/tailwind.css

    Otherwise, if you don't already have an app/tailwind.css file, you should create one with the following contents:

    @&#8203;tailwind base;
    @&#8203;tailwind components;
    @&#8203;tailwind utilities;

    You should then remove /app/tailwind.css from your .gitignore file since it now contains source code rather than processed output.

    You can then update your package.json scripts to remove any usage of tailwindcss since Remix handles this automatically. For example, if you had followed the original setup guide:

    {
      // ...
      "scripts": {
    -    "build": "run-s \"build:*\"",
    +    "build": "remix build",
    -    "build:css": "npm run generate:css -- --minify",
    -    "build:remix": "remix build",
    -    "dev": "run-p \"dev:*\"",
    +    "dev": "remix dev",
    -    "dev:css": "npm run generate:css -- --watch",
    -    "dev:remix": "remix dev",
    -    "generate:css": "npx tailwindcss -o ./app/tailwind.css",
        "start": "remix-serve build"
      }
      // ...
    }
Patch Changes
  • fix(react,dev): dev chunking and refresh race condition (#​6201)
  • Revalidate loaders only when a change to one is detected. (#​6135)
  • short circuit links and meta for routes that are not rendered due to errors (#​6107)
  • don't warn about runtime deprecation warnings in production (#​4421)
  • Update Remix for React Router no longer relying on useSyncExternalStore (#​6121)
  • Fix false-positive resource route identification if a route only exports a boundary (#​6125)
  • better type discrimination when unwrapping loader return types (#​5516)
  • Updated dependencies:
remix-run/remix (@​remix-run/serve)

v1.19.3

Compare Source

Patch Changes
  • Updated dependencies:
    • @remix-run/express@1.19.3
    • @remix-run/node@1.19.3

v1.19.2

Compare Source

Patch Changes
  • Install source-map-support (#​7039)
  • Updated dependencies:
    • @remix-run/node@1.19.2
    • @remix-run/express@1.19.2

v1.19.1

Compare Source

Patch Changes
  • Updated dependencies:
    • @remix-run/express@1.19.1
    • @remix-run/node@1.19.1

v1.19.0

Compare Source

Patch Changes
  • Updated dependencies:
    • @remix-run/node@1.19.0
    • @remix-run/express@1.19.0

v1.18.1

Compare Source

Patch Changes
  • Updated dependencies:
    • @remix-run/node@1.18.1
    • @remix-run/express@1.18.1

v1.18.0

Compare Source

Minor Changes
Patch Changes
  • fix(types): better tuple serialization types (#​6616)
  • Updated dependencies:
    • @remix-run/node@1.18.0
    • @remix-run/express@1.18.0

v1.17.1

Compare Source

Patch Changes
  • Updated dependencies:
    • @remix-run/express@1.17.1
    • @remix-run/node@1.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",
      };
    }
  • Updated dependencies:

    • @remix-run/node@1.17.0
    • @remix-run/express@1.17.0

v1.16.1

Compare Source

Patch Changes
  • Updated dependencies:
    • @remix-run/node@1.16.1
    • @remix-run/express@1.16.1

v1.16.0

Compare Source

Patch Changes
  • add @remix-run/node/install side-effect to allow node --require @&#8203;remix-run/node/install (#​6132)
  • Updated dependencies:
    • @remix-run/express@1.16.0
    • @remix-run/node@1.16.0
remix-run/remix (@​remix-run/server-runtime)

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

Patch Changes
  • Update to latest @remix-run/web-* packages (#​7026)

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

Minor Changes
  • improved networking options for v2_dev (#​6724)

    deprecate the --scheme and --host options and replace them with the REMIX_DEV_ORIGIN environment variable

Patch Changes
  • Properly handle ?_data HTTP/Network errors that don't reach the Remix server and ensure they bubble to the ErrorBoundary (#​6783)
  • Support proper hydration of Error subclasses such as ReferenceError/TypeError in development mode (#​6675)
  • Properly return a 404 for a ?_data request that doesn't match routes (#​6820)
  • Bump RR 6.14.2 (#​6854)
  • Updated dependencies:

v1.18.1

Compare Source

Patch Changes
  • Fix reload loops in scenarios where CDNs ignore search params (#​6707)
  • Avoid circular references and infinite recursion in types (#​6736)
    • "Pretty" or simplified Typescript types are evaluated by eagerly resolving types. For complex types with circular references, this can cause TS to recurse infinitely.
    • To fix this, pretty types are reverted as a built-in DX feature of useLoaderData, useActionData, etc...
  • Updated dependencies:

v1.18.0

Compare Source

Minor Changes
Patch Changes
  • Fix typing issues when using React 17 stemming from @remix/server-runtime including @types/react as a devDependency when it doesn't actually do anything React-specific and was just re-exporting ComponentType in values such as CatchBoundaryComponent/ErrorBoundaryComponent/V2_ErrorBoundaryComponent. These types are more correctly exported from @remix-run/react which is React-aware so that is the correct place to be importing those types from. In order to avoid breaking existing builds, the types in @remix/server-runtime have been loosened to any and @deprecated warnings have been added informing users to switch to the corresponding types in @remix-run/react. (#​5713)
  • fix(types): better tuple serialization types (#​6616)
  • Move @types/cookie to dependencies since we re-export types from there (#​5713)

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

Minor Changes
  • Add errorHeaders parameter to the leaf headers() function to expose headers from thrown responses that bubble up to ancestor route boundaries. If the throwing route contains the boundary, then errorHeaders will be the same object as loaderHeaders/actionHeaders for that route. (#​6425, #​6475)

  • Add optional handleError export for custom server-side error processing. This is a new optional export from your entry.server.tsx that will be called with any encountered error on the Remix server (loader, action, or render error) (#​6495, #​6524):

    // entry.server.tsx
    export function handleError(
      error: unknown,
      { request, params, context }: DataFunctionArgs
    ): void {
      if (error instanceof Error) {
        sendErrorToBugReportingService(error);
        console.error(formatError(error));
      } else {
        const unknownError = new Error("Unknown Server Error");
        sendErrorToBugReportingService(unknownError);
        console.error(unknownError);
      }
    }
  • Force Typescript to simplify type produced by Serialize. (#​6449)

    As a result, the following types and functions have simplified return types:

    • SerializeFrom
    • useLoaderData
    • useActionData
    • useFetcher
    type Data = { hello: string; when: Date };
    
    // BEFORE
    type Unsimplified = SerializeFrom<Data>;
    //   ^? SerializeObject<UndefinedToOptional<{ hello: string; when: Date }>>
    
    // AFTER
    type Simplified = SerializeFrom<Data>;
    //   ^? { hello: string; when: string }
  • Added a new future.v2_headers future flag to opt into automatic inheriting of ancestor route headers functions so you do not need to export a headers function from every possible leaf route if you don't wish to. (#​6431)

  • Reuse dev server port for WebSocket (Live Reload,HMR,HDR) (#​6476)

    As a result the `webSocketPor


Configuration

📅 Schedule: 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.

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

@renovate renovate bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code js minor labels Jan 28, 2024
@renovate renovate bot enabled auto-merge (squash) January 28, 2024 09:41
Copy link

vercel bot commented Jan 28, 2024

Deployment failed with the following error:

Resource is limited - try again in 5 hours (more than 100, code: "api-deployments-free-per-day").

@renovate renovate bot force-pushed the renovate/remix-monorepo branch 3 times, most recently from 2ee6a0f to 1796fe2 Compare January 28, 2024 09:53
Copy link

sonarcloud bot commented Jan 28, 2024

Quality Gate Passed Quality Gate passed

Kudos, no new issues were introduced!

0 New issues
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code

See analysis details on SonarCloud

@chrillep chrillep closed this Jan 28, 2024
auto-merge was automatically disabled January 28, 2024 09:58

Pull request was closed

Copy link
Contributor Author

renovate bot commented Jan 28, 2024

Renovate Ignore Notification

Because you closed this PR without merging, Renovate will ignore this update (1.19.3). You will get a PR once a newer version is released. To ignore this dependency forever, add it to the ignoreDeps array of your Renovate config.

If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.

@renovate renovate bot deleted the renovate/remix-monorepo branch January 28, 2024 10:01
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 js minor
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant