-
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)
- If
-
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 inremix.config.js
to a root leveldev
config (#7002) -
Default to
serverModuleFormat: "esm"
and updateremix-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 "@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();
-
- Update
remix-serve
usage error message to support ESM projects (#7400) - Updated dependencies:
@remix-run/[email protected]
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
@remix-run/[email protected]
- Install
source-map-support
(#7039) - Updated dependencies:
@remix-run/[email protected]
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
@remix-run/[email protected]
- stabilize v2 dev server (#6615)
- fix(types): better tuple serialization types (#6616)
- Updated dependencies:
@remix-run/[email protected]
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
@remix-run/[email protected]
-
Add
HeadersArgs
type to be consistent with loaders/actions/meta and allows for using afunction
declaration in addition to an arrow function expression (#6247)import type { HeadersArgs } from "@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/[email protected]
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
@remix-run/[email protected]
- add
@remix-run/node/install
side-effect to allownode --require @remix-run/node/install
(#6132) - Updated dependencies:
@remix-run/[email protected]
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Allow configurable
NODE_ENV
withremix-serve
(#5540) - Sync
FutureConfig
interface between packages (#5398) - Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Added a new development server available in the Remix config under the
unstable_dev
flag. See the release notes for a full description. (#5133)
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
-
Introduces the
defer()
API from@remix-run/router
with support for server-rendering and HTTP streaming. This utility allows you to defer values returned fromloader
functions by returning promises instead of resolved values. This has been refered to as "sending a promise over the wire". (#4920)Informational Resources:
- https://gist.github.com/jacob-ebey/9bde9546c1aafaa6bc8c242054b1be26
- https://github.com/remix-run/remix/blob/main/decisions/0004-streaming-apis.md
Documentation Resources (better docs specific to Remix are in the works):
-
Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Fix
TypedResponse
so that Typescript correctly shows errors for incompatible types inloader
andaction
functions. (#4734) - Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- We've added a new type:
SerializeFrom
. This is used to infer the (#4013) JSON-serialized return type of loaders and actions. MetaFunction
type can now inferdata
andparentsData
types from route loaders (#4022)
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies:
@remix-run/[email protected]
- Updated dependencies
@remix-run/[email protected]