diff --git a/packages/assets/.changes/minor.expand-script-targets.md b/packages/assets/.changes/minor.expand-script-targets.md deleted file mode 100644 index 6efbc75eeaf..00000000000 --- a/packages/assets/.changes/minor.expand-script-targets.md +++ /dev/null @@ -1,5 +0,0 @@ -BREAKING CHANGE: `target` configuration is now configured at the top level with an object format, supporting `es` version targets along with browser version targets. - -Browser targets are configured with string versions such as `target: { chrome: '109', safari: '16.4' }`, and scripts can specify `es` as a year of `2015` or higher such as `target: { es: '2020' }`. - -To migrate existing script configuration, replace `scripts.target` options like `scripts: { target: 'es2020' }` with `target: { es: '2020' }`. diff --git a/packages/assets/.changes/minor.hoist-compiler-options.md b/packages/assets/.changes/minor.hoist-compiler-options.md deleted file mode 100644 index 50536500641..00000000000 --- a/packages/assets/.changes/minor.hoist-compiler-options.md +++ /dev/null @@ -1,3 +0,0 @@ -BREAKING CHANGE: Shared compiler options are now provided at the top level of `createAssetServer()`. Use `sourceMaps`, `sourceMapSourcePaths`, and `minify` directly on the asset server options instead of being nested under `scripts`. This allows these options to also be used for styles as well as scripts. - -To migrate existing configuration, move `scripts.minify`, `scripts.sourceMaps`, `scripts.sourceMapSourcePaths` to the top-level asset server options. diff --git a/packages/assets/.changes/minor.styles-support.md b/packages/assets/.changes/minor.styles-support.md deleted file mode 100644 index e3deac92b7d..00000000000 --- a/packages/assets/.changes/minor.styles-support.md +++ /dev/null @@ -1 +0,0 @@ -`createAssetServer()` now compiles and serves `.css` files alongside scripts, including local `@import` rewriting, fingerprinting, and shared compiler options for minification, source maps, and browser compatibility targeting. diff --git a/packages/assets/.changes/patch.allow-globs-match-dot-paths.md b/packages/assets/.changes/patch.allow-globs-match-dot-paths.md deleted file mode 100644 index b88df7c98f7..00000000000 --- a/packages/assets/.changes/patch.allow-globs-match-dot-paths.md +++ /dev/null @@ -1 +0,0 @@ -Fix matching of dot-prefixed files and directories in `allow` and `deny` globs diff --git a/packages/assets/.changes/patch.improve-resolved-import-errors.md b/packages/assets/.changes/patch.improve-resolved-import-errors.md deleted file mode 100644 index e6688914051..00000000000 --- a/packages/assets/.changes/patch.improve-resolved-import-errors.md +++ /dev/null @@ -1 +0,0 @@ -Improve asset server import errors to include the resolved file path when a resolved import is later rejected by validation for allow/deny rules, supported file types and `fileMap` configuration. diff --git a/packages/assets/CHANGELOG.md b/packages/assets/CHANGELOG.md index 0cb97ea88c4..b7a6675bfde 100644 --- a/packages/assets/CHANGELOG.md +++ b/packages/assets/CHANGELOG.md @@ -2,6 +2,28 @@ This is the changelog for [`assets`](https://github.com/remix-run/remix/tree/main/packages/assets). It follows [semantic versioning](https://semver.org/). +## v0.2.0 + +### Minor Changes + +- BREAKING CHANGE: `target` configuration is now configured at the top level with an object format, supporting `es` version targets along with browser version targets. + + Browser targets are configured with string versions such as `target: { chrome: '109', safari: '16.4' }`, and scripts can specify `es` as a year of `2015` or higher such as `target: { es: '2020' }`. + + To migrate existing script configuration, replace `scripts.target` options like `scripts: { target: 'es2020' }` with `target: { es: '2020' }`. + +- BREAKING CHANGE: Shared compiler options are now provided at the top level of `createAssetServer()`. Use `sourceMaps`, `sourceMapSourcePaths`, and `minify` directly on the asset server options instead of being nested under `scripts`. This allows these options to also be used for styles as well as scripts. + + To migrate existing configuration, move `scripts.minify`, `scripts.sourceMaps`, `scripts.sourceMapSourcePaths` to the top-level asset server options. + +- `createAssetServer()` now compiles and serves `.css` files alongside scripts, including local `@import` rewriting, fingerprinting, and shared compiler options for minification, source maps, and browser compatibility targeting. + +### Patch Changes + +- Fix matching of dot-prefixed files and directories in `allow` and `deny` globs + +- Improve asset server import errors to include the resolved file path when a resolved import is later rejected by validation for allow/deny rules, supported file types and `fileMap` configuration. + ## v0.1.0 ### Minor Changes diff --git a/packages/assets/package.json b/packages/assets/package.json index bbc970214f4..6cd1f594ef7 100644 --- a/packages/assets/package.json +++ b/packages/assets/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/assets", - "version": "0.1.0", + "version": "0.2.0", "description": "Fetch-based server for compiling browser JS/TS and CSS assets on demand", "author": "Michael Jackson ", "license": "MIT", diff --git a/packages/auth/.changes/minor.refresh-external-auth.md b/packages/auth/.changes/minor.refresh-external-auth.md deleted file mode 100644 index 901a9c6cd1e..00000000000 --- a/packages/auth/.changes/minor.refresh-external-auth.md +++ /dev/null @@ -1,3 +0,0 @@ -Added `refreshExternalAuth()` to `@remix-run/auth` so apps can exchange stored refresh tokens for fresh OAuth and OIDC token bundles. - -The built-in OIDC providers and X now implement refresh-token exchange. Refreshed token bundles preserve the existing refresh token when the provider omits a rotated value. diff --git a/packages/auth/CHANGELOG.md b/packages/auth/CHANGELOG.md index 6d3fe737558..5c92d1481a3 100644 --- a/packages/auth/CHANGELOG.md +++ b/packages/auth/CHANGELOG.md @@ -2,6 +2,14 @@ This is the changelog for [`auth`](https://github.com/remix-run/remix/tree/main/packages/auth). It follows [semantic versioning](https://semver.org/). +## v0.2.0 + +### Minor Changes + +- Added `refreshExternalAuth()` to `@remix-run/auth` so apps can exchange stored refresh tokens for fresh OAuth and OIDC token bundles. + + The built-in OIDC providers and X now implement refresh-token exchange. Refreshed token bundles preserve the existing refresh token when the provider omits a rotated value. + ## v0.1.1 ### Patch Changes diff --git a/packages/auth/package.json b/packages/auth/package.json index 8462baf84c0..34941c02b41 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/auth", - "version": "0.1.1", + "version": "0.2.0", "description": "Browser login, OAuth, and OIDC helpers for Remix", "author": "Michael Jackson ", "license": "MIT", diff --git a/packages/component/.changes/minor.handle-props.md b/packages/component/.changes/minor.handle-props.md deleted file mode 100644 index 64c9bab11e5..00000000000 --- a/packages/component/.changes/minor.handle-props.md +++ /dev/null @@ -1,68 +0,0 @@ -BREAKING CHANGE: Components now receive props through a stable `handle.props` object using `Handle` instead of receiving a separate `setup` argument and render callback props. Move initialization values that previously used `` onto regular props, and read all props from `handle.props` in both the component function and render callback. - -Before: - -```tsx -function Counter(handle: Handle, setup: { initialCount: number }) { - let count = setup.initialCount - - return (props: { label: string }) => ( - - ) -} - -; -``` - -After: - -```tsx -function Counter(handle: Handle<{ initialCount: number; label: string }, CounterContext>) { - let count = handle.props.initialCount - - return () => ( - - ) -} - -; -``` - -The `handle.props` object keeps the same identity for the component lifetime while its values are updated before each render, so destructuring `let { props, update } = handle` remains safe. The `setup` prop is no longer special and is treated like any other prop. - -This also removes the old pattern where setup-scope helpers had to read from a mutable variable that was reassigned inside the render callback: - -```tsx -function Listbox(handle: Handle) { - let props: ListboxProps - - function select(value: string) { - props.onSelect(value) - } - - handle.context.set({ select }) - - return (nextProps: ListboxProps) => { - props = nextProps - return props.children - } -} -``` - -Helpers can now read the current props directly from the stable handle: - -```tsx -function Listbox(handle: Handle) { - function select(value: string) { - handle.props.onSelect(value) - } - - handle.context.set({ select }) - - return () => handle.props.children -} -``` diff --git a/packages/component/CHANGELOG.md b/packages/component/CHANGELOG.md index 482ac331a88..684469f62f8 100644 --- a/packages/component/CHANGELOG.md +++ b/packages/component/CHANGELOG.md @@ -2,6 +2,79 @@ This is the changelog for [`component`](https://github.com/remix-run/remix/tree/main/packages/component). It follows [semantic versioning](https://semver.org/). +## v0.8.0 + +### Minor Changes + +- BREAKING CHANGE: Components now receive props through a stable `handle.props` object using `Handle` instead of receiving a separate `setup` argument and render callback props. Move initialization values that previously used `` onto regular props, and read all props from `handle.props` in both the component function and render callback. + + Before: + + ```tsx + function Counter(handle: Handle, setup: { initialCount: number }) { + let count = setup.initialCount + + return (props: { label: string }) => ( + + ) + } + + ; + ``` + + After: + + ```tsx + function Counter(handle: Handle<{ initialCount: number; label: string }, CounterContext>) { + let count = handle.props.initialCount + + return () => ( + + ) + } + + ; + ``` + + The `handle.props` object keeps the same identity for the component lifetime while its values are updated before each render, so destructuring `let { props, update } = handle` remains safe. The `setup` prop is no longer special and is treated like any other prop. + + This also removes the old pattern where setup-scope helpers had to read from a mutable variable that was reassigned inside the render callback: + + ```tsx + function Listbox(handle: Handle) { + let props: ListboxProps + + function select(value: string) { + props.onSelect(value) + } + + handle.context.set({ select }) + + return (nextProps: ListboxProps) => { + props = nextProps + return props.children + } + } + ``` + + Helpers can now read the current props directly from the stable handle: + + ```tsx + function Listbox(handle: Handle) { + function select(value: string) { + handle.props.onSelect(value) + } + + handle.context.set({ select }) + + return () => handle.props.children + } + ``` + ## v0.7.0 ### Minor Changes diff --git a/packages/component/package.json b/packages/component/package.json index 2d74bf9b3a2..19ee401ce5b 100644 --- a/packages/component/package.json +++ b/packages/component/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/component", - "version": "0.7.0", + "version": "0.8.0", "description": "UI components for Remix", "author": "Ryan Florence ", "license": "MIT", diff --git a/packages/compression-middleware/CHANGELOG.md b/packages/compression-middleware/CHANGELOG.md index 93a34cefd3f..31cd3b7d251 100644 --- a/packages/compression-middleware/CHANGELOG.md +++ b/packages/compression-middleware/CHANGELOG.md @@ -2,6 +2,14 @@ This is the changelog for [`compression-middleware`](https://github.com/remix-run/remix/tree/main/packages/compression-middleware). It follows [semantic versioning](https://semver.org/). +## v0.1.6 + +### Patch Changes + +- Bumped `@remix-run/*` dependencies: + - [`mime@0.4.1`](https://github.com/remix-run/remix/releases/tag/mime@0.4.1) + - [`response@0.3.3`](https://github.com/remix-run/remix/releases/tag/response@0.3.3) + ## v0.1.5 ### Patch Changes diff --git a/packages/compression-middleware/package.json b/packages/compression-middleware/package.json index afff5435d6f..e63bd7a4647 100644 --- a/packages/compression-middleware/package.json +++ b/packages/compression-middleware/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/compression-middleware", - "version": "0.1.5", + "version": "0.1.6", "description": "Middleware for compressing HTTP responses", "author": "Michael Jackson ", "license": "MIT", diff --git a/packages/data-schema/.changes/minor.schema-transform.md b/packages/data-schema/.changes/minor.schema-transform.md deleted file mode 100644 index 727726f1ae8..00000000000 --- a/packages/data-schema/.changes/minor.schema-transform.md +++ /dev/null @@ -1 +0,0 @@ -Add `Schema.transform()` for mapping validated schema outputs to new values and output types. diff --git a/packages/data-schema/CHANGELOG.md b/packages/data-schema/CHANGELOG.md index 1ac4ca138d1..ace81a91c8e 100644 --- a/packages/data-schema/CHANGELOG.md +++ b/packages/data-schema/CHANGELOG.md @@ -2,6 +2,12 @@ This is the changelog for [`data-schema`](https://github.com/remix-run/remix/tree/main/packages/data-schema). It follows [semantic versioning](https://semver.org/). +## v0.3.0 + +### Minor Changes + +- Add `Schema.transform()` for mapping validated schema outputs to new values and output types. + ## v0.2.0 ### Minor Changes diff --git a/packages/data-schema/package.json b/packages/data-schema/package.json index c08c81d2ea0..810a73e7bb2 100644 --- a/packages/data-schema/package.json +++ b/packages/data-schema/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/data-schema", - "version": "0.2.0", + "version": "0.3.0", "description": "Tiny, standards-aligned schema validation", "author": "Michael Jackson ", "license": "MIT", diff --git a/packages/data-table-sqlite/.changes/minor.native-sqlite-clients.md b/packages/data-table-sqlite/.changes/minor.native-sqlite-clients.md deleted file mode 100644 index d5d488eb388..00000000000 --- a/packages/data-table-sqlite/.changes/minor.native-sqlite-clients.md +++ /dev/null @@ -1 +0,0 @@ -Widened `createSqliteDatabaseAdapter` to accept synchronous SQLite clients that match the shared `prepare`/`exec` surface used by Node's `node:sqlite`, Bun's `bun:sqlite`, and compatible clients. The package no longer requires `better-sqlite3` as an optional peer dependency. diff --git a/packages/data-table-sqlite/CHANGELOG.md b/packages/data-table-sqlite/CHANGELOG.md index 51008e9293a..fd297d19621 100644 --- a/packages/data-table-sqlite/CHANGELOG.md +++ b/packages/data-table-sqlite/CHANGELOG.md @@ -2,6 +2,12 @@ This is the changelog for [`data-table-sqlite`](https://github.com/remix-run/remix/tree/main/packages/data-table-sqlite). It follows [semantic versioning](https://semver.org/). +## v0.4.0 + +### Minor Changes + +- Widened `createSqliteDatabaseAdapter` to accept synchronous SQLite clients that match the shared `prepare`/`exec` surface used by Node's `node:sqlite`, Bun's `bun:sqlite`, and compatible clients. The package no longer requires `better-sqlite3` as an optional peer dependency. + ## v0.3.0 ### Minor Changes diff --git a/packages/data-table-sqlite/package.json b/packages/data-table-sqlite/package.json index 5f8888c52bc..534889f3673 100644 --- a/packages/data-table-sqlite/package.json +++ b/packages/data-table-sqlite/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/data-table-sqlite", - "version": "0.3.0", + "version": "0.4.0", "description": "SQLite adapter for remix/data-table", "author": "Michael Jackson ", "license": "MIT", diff --git a/packages/fetch-proxy/.changes/minor.x-forwarded-port.md b/packages/fetch-proxy/.changes/minor.x-forwarded-port.md deleted file mode 100644 index e0671bd5b1a..00000000000 --- a/packages/fetch-proxy/.changes/minor.x-forwarded-port.md +++ /dev/null @@ -1 +0,0 @@ -Add an `X-Forwarded-Port` header when `xForwardedHeaders` is enabled. diff --git a/packages/fetch-proxy/CHANGELOG.md b/packages/fetch-proxy/CHANGELOG.md index c9195eca299..11552d05adf 100644 --- a/packages/fetch-proxy/CHANGELOG.md +++ b/packages/fetch-proxy/CHANGELOG.md @@ -2,6 +2,12 @@ This is the changelog for [`fetch-proxy`](https://github.com/remix-run/remix/tree/main/packages/fetch-proxy). It follows [semantic versioning](https://semver.org/). +## v0.8.0 + +### Minor Changes + +- Add an `X-Forwarded-Port` header when `xForwardedHeaders` is enabled. + ## v0.7.1 ### Patch Changes diff --git a/packages/fetch-proxy/package.json b/packages/fetch-proxy/package.json index b60f7b105f2..2b5d4821237 100644 --- a/packages/fetch-proxy/package.json +++ b/packages/fetch-proxy/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/fetch-proxy", - "version": "0.7.1", + "version": "0.8.0", "description": "An HTTP proxy for the web Fetch API", "author": "Michael Jackson ", "license": "MIT", diff --git a/packages/file-storage-s3/CHANGELOG.md b/packages/file-storage-s3/CHANGELOG.md index 9a5845d0e62..312dc33ab00 100644 --- a/packages/file-storage-s3/CHANGELOG.md +++ b/packages/file-storage-s3/CHANGELOG.md @@ -2,6 +2,13 @@ This is the changelog for [`file-storage-s3`](https://github.com/remix-run/remix/tree/main/packages/file-storage-s3). It follows [semantic versioning](https://semver.org/). +## v0.1.1 + +### Patch Changes + +- Bumped `@remix-run/*` dependencies: + - [`file-storage@0.13.4`](https://github.com/remix-run/remix/releases/tag/file-storage@0.13.4) + ## v0.1.0 ### Minor Changes diff --git a/packages/file-storage-s3/package.json b/packages/file-storage-s3/package.json index d90c5116e16..9cb08d86676 100644 --- a/packages/file-storage-s3/package.json +++ b/packages/file-storage-s3/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/file-storage-s3", - "version": "0.1.0", + "version": "0.1.1", "description": "S3 backend for remix/file-storage", "author": "Michael Jackson ", "repository": { diff --git a/packages/file-storage/CHANGELOG.md b/packages/file-storage/CHANGELOG.md index 29048a26297..68267e944e1 100644 --- a/packages/file-storage/CHANGELOG.md +++ b/packages/file-storage/CHANGELOG.md @@ -2,6 +2,14 @@ This is the changelog for [`file-storage`](https://github.com/remix-run/remix/tree/main/packages/file-storage). It follows [semantic versioning](https://semver.org/). +## v0.13.4 + +### Patch Changes + +- Bumped `@remix-run/*` dependencies: + - [`fs@0.4.3`](https://github.com/remix-run/remix/releases/tag/fs@0.4.3) + - [`lazy-file@5.0.3`](https://github.com/remix-run/remix/releases/tag/lazy-file@5.0.3) + ## v0.13.3 ### Patch Changes diff --git a/packages/file-storage/package.json b/packages/file-storage/package.json index 8c0df66d4a8..80361974731 100644 --- a/packages/file-storage/package.json +++ b/packages/file-storage/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/file-storage", - "version": "0.13.3", + "version": "0.13.4", "description": "Key/value storage for JavaScript File objects", "author": "Michael Jackson ", "repository": { diff --git a/packages/form-data-middleware/CHANGELOG.md b/packages/form-data-middleware/CHANGELOG.md index 26b5fd3dbd5..e078d7df956 100644 --- a/packages/form-data-middleware/CHANGELOG.md +++ b/packages/form-data-middleware/CHANGELOG.md @@ -2,6 +2,13 @@ This is the changelog for [`form-data-middleware`](https://github.com/remix-run/remix/tree/main/packages/form-data-middleware). It follows [semantic versioning](https://semver.org/). +## v0.2.2 + +### Patch Changes + +- Bumped `@remix-run/*` dependencies: + - [`form-data-parser@0.17.0`](https://github.com/remix-run/remix/releases/tag/form-data-parser@0.17.0) + ## v0.2.1 ### Patch Changes diff --git a/packages/form-data-middleware/package.json b/packages/form-data-middleware/package.json index 754b92a0d78..d1c54e176b2 100644 --- a/packages/form-data-middleware/package.json +++ b/packages/form-data-middleware/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/form-data-middleware", - "version": "0.2.1", + "version": "0.2.2", "description": "Middleware for parsing FormData from request bodies", "author": "Michael Jackson ", "license": "MIT", diff --git a/packages/form-data-parser/.changes/minor.upload-handler-errors.md b/packages/form-data-parser/.changes/minor.upload-handler-errors.md deleted file mode 100644 index 10edc80bde7..00000000000 --- a/packages/form-data-parser/.changes/minor.upload-handler-errors.md +++ /dev/null @@ -1 +0,0 @@ -BREAKING CHANGE: Errors thrown or rejected by a `parseFormData()` upload handler now propagate directly instead of being wrapped in a `FormDataParseError`. diff --git a/packages/form-data-parser/.changes/patch.non-ascii-multipart-names.md b/packages/form-data-parser/.changes/patch.non-ascii-multipart-names.md deleted file mode 100644 index 701cc1281b2..00000000000 --- a/packages/form-data-parser/.changes/patch.non-ascii-multipart-names.md +++ /dev/null @@ -1 +0,0 @@ -Preserve non-ASCII multipart field names and filenames when parsing `multipart/form-data` requests. diff --git a/packages/form-data-parser/CHANGELOG.md b/packages/form-data-parser/CHANGELOG.md index 253dc8340b4..aada364e2ce 100644 --- a/packages/form-data-parser/CHANGELOG.md +++ b/packages/form-data-parser/CHANGELOG.md @@ -2,6 +2,19 @@ This is the changelog for [`form-data-parser`](https://github.com/remix-run/remix/tree/main/packages/form-data-parser). It follows [semantic versioning](https://semver.org/). +## v0.17.0 + +### Minor Changes + +- BREAKING CHANGE: Errors thrown or rejected by a `parseFormData()` upload handler now propagate directly instead of being wrapped in a `FormDataParseError`. + +### Patch Changes + +- Preserve non-ASCII multipart field names and filenames when parsing `multipart/form-data` requests. + +- Bumped `@remix-run/*` dependencies: + - [`multipart-parser@0.16.0`](https://github.com/remix-run/remix/releases/tag/multipart-parser@0.16.0) + ## v0.16.0 ### Minor Changes diff --git a/packages/form-data-parser/package.json b/packages/form-data-parser/package.json index 2cf61fe60b0..ba9b6111199 100644 --- a/packages/form-data-parser/package.json +++ b/packages/form-data-parser/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/form-data-parser", - "version": "0.16.0", + "version": "0.17.0", "description": "A request.formData() wrapper with streaming file upload handling", "author": "Michael Jackson ", "repository": { diff --git a/packages/fs/CHANGELOG.md b/packages/fs/CHANGELOG.md index 6904474bc4a..02ea65595d0 100644 --- a/packages/fs/CHANGELOG.md +++ b/packages/fs/CHANGELOG.md @@ -2,6 +2,14 @@ This is the changelog for [`fs`](https://github.com/remix-run/remix/tree/main/packages/fs). It follows [semantic versioning](https://semver.org/). +## v0.4.3 + +### Patch Changes + +- Bumped `@remix-run/*` dependencies: + - [`lazy-file@5.0.3`](https://github.com/remix-run/remix/releases/tag/lazy-file@5.0.3) + - [`mime@0.4.1`](https://github.com/remix-run/remix/releases/tag/mime@0.4.1) + ## v0.4.2 ### Patch Changes diff --git a/packages/fs/package.json b/packages/fs/package.json index 018c3e66312..5a61c1e5310 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/fs", - "version": "0.4.2", + "version": "0.4.3", "description": "Filesystem utilities using the Web File API", "author": "Michael Jackson ", "repository": { diff --git a/packages/lazy-file/CHANGELOG.md b/packages/lazy-file/CHANGELOG.md index ef10005464c..29bd6c4850b 100644 --- a/packages/lazy-file/CHANGELOG.md +++ b/packages/lazy-file/CHANGELOG.md @@ -2,6 +2,13 @@ This is the changelog for [`lazy-file`](https://github.com/remix-run/remix/tree/main/packages/lazy-file). It follows [semantic versioning](https://semver.org/). +## v5.0.3 + +### Patch Changes + +- Bumped `@remix-run/*` dependencies: + - [`mime@0.4.1`](https://github.com/remix-run/remix/releases/tag/mime@0.4.1) + ## v5.0.2 ### Patch Changes diff --git a/packages/lazy-file/package.json b/packages/lazy-file/package.json index 7856765d499..bc747a6283e 100644 --- a/packages/lazy-file/package.json +++ b/packages/lazy-file/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/lazy-file", - "version": "5.0.2", + "version": "5.0.3", "description": "Lazy, streaming files for JavaScript", "author": "Michael Jackson ", "repository": { diff --git a/packages/logger-middleware/.changes/minor.colorize-logger-output.md b/packages/logger-middleware/.changes/minor.colorize-logger-output.md deleted file mode 100644 index 8953c6de730..00000000000 --- a/packages/logger-middleware/.changes/minor.colorize-logger-output.md +++ /dev/null @@ -1 +0,0 @@ -Colorize high-signal logger tokens when terminal color detection allows it by default, with a `colors` option to force colorized output on or off and support for `CI`, `NO_COLOR`, `FORCE_COLOR`, `TERM=dumb`, and TTY output streams when the `process` global is defined. diff --git a/packages/logger-middleware/CHANGELOG.md b/packages/logger-middleware/CHANGELOG.md index 6d124f870c2..f2901f87e3e 100644 --- a/packages/logger-middleware/CHANGELOG.md +++ b/packages/logger-middleware/CHANGELOG.md @@ -2,6 +2,17 @@ This is the changelog for [`logger-middleware`](https://github.com/remix-run/remix/tree/main/packages/logger-middleware). It follows [semantic versioning](https://semver.org/). +## v0.2.0 + +### Minor Changes + +- Colorize high-signal logger tokens when terminal color detection allows it by default, with a `colors` option to force colorized output on or off and support for `CI`, `NO_COLOR`, `FORCE_COLOR`, `TERM=dumb`, and TTY output streams when the `process` global is defined. + +### Patch Changes + +- Bumped `@remix-run/*` dependencies: + - [`terminal@0.1.0`](https://github.com/remix-run/remix/releases/tag/terminal@0.1.0) + ## v0.1.5 ### Patch Changes diff --git a/packages/logger-middleware/package.json b/packages/logger-middleware/package.json index 30f055f1c73..19f67cf11b6 100644 --- a/packages/logger-middleware/package.json +++ b/packages/logger-middleware/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/logger-middleware", - "version": "0.1.5", + "version": "0.2.0", "description": "Middleware for logging HTTP requests and responses", "author": "Michael Jackson ", "license": "MIT", diff --git a/packages/mime/.changes/patch.prefer-common-mime-types.md b/packages/mime/.changes/patch.prefer-common-mime-types.md deleted file mode 100644 index 8ea999092bf..00000000000 --- a/packages/mime/.changes/patch.prefer-common-mime-types.md +++ /dev/null @@ -1 +0,0 @@ -Prefer `video/mp4` for `.mp4` files and `image/x-icon` for `.ico` files. diff --git a/packages/mime/CHANGELOG.md b/packages/mime/CHANGELOG.md index c896e024940..bd2259ec464 100644 --- a/packages/mime/CHANGELOG.md +++ b/packages/mime/CHANGELOG.md @@ -2,6 +2,12 @@ This is the changelog for [`mime`](https://github.com/remix-run/remix/tree/main/packages/mime). It follows [semantic versioning](https://semver.org/). +## v0.4.1 + +### Patch Changes + +- Prefer `video/mp4` for `.mp4` files and `image/x-icon` for `.ico` files. + ## v0.4.0 ### Minor Changes diff --git a/packages/mime/package.json b/packages/mime/package.json index 95e0900e4e3..923a062cb8a 100644 --- a/packages/mime/package.json +++ b/packages/mime/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/mime", - "version": "0.4.0", + "version": "0.4.1", "description": "Utilities for working with MIME types", "author": "Michael Jackson ", "license": "MIT", diff --git a/packages/multipart-parser/.changes/minor.multipart-part-headers-object.md b/packages/multipart-parser/.changes/minor.multipart-part-headers-object.md deleted file mode 100644 index 5d0649896da..00000000000 --- a/packages/multipart-parser/.changes/minor.multipart-part-headers-object.md +++ /dev/null @@ -1,3 +0,0 @@ -BREAKING CHANGE: `MultipartPart.headers` is now a plain decoded object keyed by lower-case header name instead of a native `Headers` instance. Access part headers with bracket notation like `part.headers['content-type']` instead of `part.headers.get('content-type')`. - -This lets multipart part headers preserve decoded UTF-8 field names and filenames that native `Headers` cannot store. diff --git a/packages/multipart-parser/CHANGELOG.md b/packages/multipart-parser/CHANGELOG.md index 4bbaa54fba7..b59b38ac3ad 100644 --- a/packages/multipart-parser/CHANGELOG.md +++ b/packages/multipart-parser/CHANGELOG.md @@ -2,6 +2,14 @@ This is the changelog for [`multipart-parser`](https://github.com/remix-run/remix/tree/main/packages/multipart-parser). It follows [semantic versioning](https://semver.org/). +## v0.16.0 + +### Minor Changes + +- BREAKING CHANGE: `MultipartPart.headers` is now a plain decoded object keyed by lower-case header name instead of a native `Headers` instance. Access part headers with bracket notation like `part.headers['content-type']` instead of `part.headers.get('content-type')`. + + This lets multipart part headers preserve decoded UTF-8 field names and filenames that native `Headers` cannot store. + ## v0.15.0 ### Minor Changes diff --git a/packages/multipart-parser/package.json b/packages/multipart-parser/package.json index 5008ceb809f..16de028addb 100644 --- a/packages/multipart-parser/package.json +++ b/packages/multipart-parser/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/multipart-parser", - "version": "0.15.0", + "version": "0.16.0", "description": "A fast, efficient parser for multipart streams in any JavaScript environment", "author": "Michael Jackson ", "repository": { diff --git a/packages/remix/.changes/minor.multipart-part-headers-object.md b/packages/remix/.changes/minor.multipart-part-headers-object.md deleted file mode 100644 index 68005e49720..00000000000 --- a/packages/remix/.changes/minor.multipart-part-headers-object.md +++ /dev/null @@ -1 +0,0 @@ -BREAKING CHANGE: `MultipartPart.headers` from `remix/multipart-parser` and `remix/multipart-parser/node` is now a plain decoded object keyed by lower-case header name instead of a native `Headers` instance. Access part headers with bracket notation like `part.headers['content-type']` instead of `part.headers.get('content-type')`. diff --git a/packages/remix/.changes/minor.remix.update-exports.md b/packages/remix/.changes/minor.remix.update-exports.md deleted file mode 100644 index d31496cffbe..00000000000 --- a/packages/remix/.changes/minor.remix.update-exports.md +++ /dev/null @@ -1,16 +0,0 @@ -Added `package.json` `exports`: - -- `remix/ui/accordion` to re-export APIs from `@remix-run/ui/accordion` -- `remix/ui/anchor` to re-export APIs from `@remix-run/ui/anchor` -- `remix/ui/breadcrumbs` to re-export APIs from `@remix-run/ui/breadcrumbs` -- `remix/ui/button` to re-export APIs from `@remix-run/ui/button` -- `remix/ui/combobox` to re-export APIs from `@remix-run/ui/combobox` -- `remix/ui/glyph` to re-export APIs from `@remix-run/ui/glyph` -- `remix/ui/listbox` to re-export APIs from `@remix-run/ui/listbox` -- `remix/ui/menu` to re-export APIs from `@remix-run/ui/menu` -- `remix/ui/on-outside-pointer-down` to re-export APIs from `@remix-run/ui/on-outside-pointer-down` -- `remix/ui/popover` to re-export APIs from `@remix-run/ui/popover` -- `remix/ui/scroll-lock` to re-export APIs from `@remix-run/ui/scroll-lock` -- `remix/ui/select` to re-export APIs from `@remix-run/ui/select` -- `remix/ui/separator` to re-export APIs from `@remix-run/ui/separator` -- `remix/ui/theme` to re-export APIs from `@remix-run/ui/theme` diff --git a/packages/remix/CHANGELOG.md b/packages/remix/CHANGELOG.md index a86794d4e29..3932f7cfff9 100644 --- a/packages/remix/CHANGELOG.md +++ b/packages/remix/CHANGELOG.md @@ -2,6 +2,53 @@ This is the changelog for [`remix`](https://github.com/remix-run/remix/tree/main/packages/remix). It follows [semantic versioning](https://semver.org/). +## v3.0.0-alpha.6 + +### Pre-release Changes + +- BREAKING CHANGE: `MultipartPart.headers` from `remix/multipart-parser` and `remix/multipart-parser/node` is now a plain decoded object keyed by lower-case header name instead of a native `Headers` instance. Access part headers with bracket notation like `part.headers['content-type']` instead of `part.headers.get('content-type')`. + +- Added `package.json` `exports`: + + - `remix/ui/accordion` to re-export APIs from `@remix-run/ui/accordion` + - `remix/ui/anchor` to re-export APIs from `@remix-run/ui/anchor` + - `remix/ui/breadcrumbs` to re-export APIs from `@remix-run/ui/breadcrumbs` + - `remix/ui/button` to re-export APIs from `@remix-run/ui/button` + - `remix/ui/combobox` to re-export APIs from `@remix-run/ui/combobox` + - `remix/ui/glyph` to re-export APIs from `@remix-run/ui/glyph` + - `remix/ui/listbox` to re-export APIs from `@remix-run/ui/listbox` + - `remix/ui/menu` to re-export APIs from `@remix-run/ui/menu` + - `remix/ui/on-outside-pointer-down` to re-export APIs from `@remix-run/ui/on-outside-pointer-down` + - `remix/ui/popover` to re-export APIs from `@remix-run/ui/popover` + - `remix/ui/scroll-lock` to re-export APIs from `@remix-run/ui/scroll-lock` + - `remix/ui/select` to re-export APIs from `@remix-run/ui/select` + - `remix/ui/separator` to re-export APIs from `@remix-run/ui/separator` + - `remix/ui/theme` to re-export APIs from `@remix-run/ui/theme` + +- Bumped `@remix-run/*` dependencies: + - [`assets@0.2.0`](https://github.com/remix-run/remix/releases/tag/assets@0.2.0) + - [`auth@0.2.0`](https://github.com/remix-run/remix/releases/tag/auth@0.2.0) + - [`component@0.8.0`](https://github.com/remix-run/remix/releases/tag/component@0.8.0) + - [`compression-middleware@0.1.6`](https://github.com/remix-run/remix/releases/tag/compression-middleware@0.1.6) + - [`data-schema@0.3.0`](https://github.com/remix-run/remix/releases/tag/data-schema@0.3.0) + - [`data-table-sqlite@0.4.0`](https://github.com/remix-run/remix/releases/tag/data-table-sqlite@0.4.0) + - [`fetch-proxy@0.8.0`](https://github.com/remix-run/remix/releases/tag/fetch-proxy@0.8.0) + - [`file-storage@0.13.4`](https://github.com/remix-run/remix/releases/tag/file-storage@0.13.4) + - [`file-storage-s3@0.1.1`](https://github.com/remix-run/remix/releases/tag/file-storage-s3@0.1.1) + - [`form-data-middleware@0.2.2`](https://github.com/remix-run/remix/releases/tag/form-data-middleware@0.2.2) + - [`form-data-parser@0.17.0`](https://github.com/remix-run/remix/releases/tag/form-data-parser@0.17.0) + - [`fs@0.4.3`](https://github.com/remix-run/remix/releases/tag/fs@0.4.3) + - [`lazy-file@5.0.3`](https://github.com/remix-run/remix/releases/tag/lazy-file@5.0.3) + - [`logger-middleware@0.2.0`](https://github.com/remix-run/remix/releases/tag/logger-middleware@0.2.0) + - [`mime@0.4.1`](https://github.com/remix-run/remix/releases/tag/mime@0.4.1) + - [`multipart-parser@0.16.0`](https://github.com/remix-run/remix/releases/tag/multipart-parser@0.16.0) + - [`response@0.3.3`](https://github.com/remix-run/remix/releases/tag/response@0.3.3) + - [`static-middleware@0.4.7`](https://github.com/remix-run/remix/releases/tag/static-middleware@0.4.7) + - [`tar-parser@0.7.1`](https://github.com/remix-run/remix/releases/tag/tar-parser@0.7.1) + - [`terminal@0.1.0`](https://github.com/remix-run/remix/releases/tag/terminal@0.1.0) + - [`test@0.2.0`](https://github.com/remix-run/remix/releases/tag/test@0.2.0) + - [`ui@0.0.1`](https://github.com/remix-run/remix/releases/tag/ui@0.0.1) + ## v3.0.0-alpha.5 ### Pre-release Changes diff --git a/packages/remix/package.json b/packages/remix/package.json index 54429d4d863..ff4d412f824 100644 --- a/packages/remix/package.json +++ b/packages/remix/package.json @@ -1,6 +1,6 @@ { "name": "remix", - "version": "3.0.0-alpha.5", + "version": "3.0.0-alpha.6", "description": "The Remix web framework", "author": "Michael Jackson ", "license": "MIT", diff --git a/packages/response/CHANGELOG.md b/packages/response/CHANGELOG.md index d75c3923d0e..8295eee03c3 100644 --- a/packages/response/CHANGELOG.md +++ b/packages/response/CHANGELOG.md @@ -2,6 +2,13 @@ This is the changelog for [`response`](https://github.com/remix-run/remix/tree/main/packages/response). It follows [semantic versioning](https://semver.org/). +## v0.3.3 + +### Patch Changes + +- Bumped `@remix-run/*` dependencies: + - [`mime@0.4.1`](https://github.com/remix-run/remix/releases/tag/mime@0.4.1) + ## v0.3.2 ### Patch Changes diff --git a/packages/response/package.json b/packages/response/package.json index 21f0818746a..bfef87182bf 100644 --- a/packages/response/package.json +++ b/packages/response/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/response", - "version": "0.3.2", + "version": "0.3.3", "description": "Response helpers for the web Fetch API", "author": "Michael Jackson ", "license": "MIT", diff --git a/packages/static-middleware/CHANGELOG.md b/packages/static-middleware/CHANGELOG.md index 7062b30c32c..4fa6fc38c6a 100644 --- a/packages/static-middleware/CHANGELOG.md +++ b/packages/static-middleware/CHANGELOG.md @@ -2,6 +2,15 @@ This is the changelog for [`static-middleware`](https://github.com/remix-run/remix/tree/main/packages/static-middleware). It follows [semantic versioning](https://semver.org/). +## v0.4.7 + +### Patch Changes + +- Bumped `@remix-run/*` dependencies: + - [`fs@0.4.3`](https://github.com/remix-run/remix/releases/tag/fs@0.4.3) + - [`mime@0.4.1`](https://github.com/remix-run/remix/releases/tag/mime@0.4.1) + - [`response@0.3.3`](https://github.com/remix-run/remix/releases/tag/response@0.3.3) + ## v0.4.6 ### Patch Changes diff --git a/packages/static-middleware/package.json b/packages/static-middleware/package.json index 1e9a40278ff..d32e617642d 100644 --- a/packages/static-middleware/package.json +++ b/packages/static-middleware/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/static-middleware", - "version": "0.4.6", + "version": "0.4.7", "description": "Middleware for serving static files from the filesystem", "author": "Michael Jackson ", "license": "MIT", diff --git a/packages/tar-parser/.changes/patch.body-chunk-boundary.md b/packages/tar-parser/.changes/patch.body-chunk-boundary.md deleted file mode 100644 index b7924b393df..00000000000 --- a/packages/tar-parser/.changes/patch.body-chunk-boundary.md +++ /dev/null @@ -1 +0,0 @@ -Fix parsing tar entries whose file body ends exactly at a chunk boundary. diff --git a/packages/tar-parser/CHANGELOG.md b/packages/tar-parser/CHANGELOG.md index 12b9422711b..1054cb18b86 100644 --- a/packages/tar-parser/CHANGELOG.md +++ b/packages/tar-parser/CHANGELOG.md @@ -2,6 +2,12 @@ This is the changelog for [`tar-parser`](https://github.com/remix-run/remix/tree/main/packages/tar-parser). It follows [semantic versioning](https://semver.org/). +## v0.7.1 + +### Patch Changes + +- Fix parsing tar entries whose file body ends exactly at a chunk boundary. + ## v0.7.0 (2025-11-20) - Update dev dependencies to use `@remix-run/fs` instead of `@remix-run/lazy-file/fs`. diff --git a/packages/tar-parser/package.json b/packages/tar-parser/package.json index 6280abc8835..a4b3876f4b5 100644 --- a/packages/tar-parser/package.json +++ b/packages/tar-parser/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/tar-parser", - "version": "0.7.0", + "version": "0.7.1", "description": "A fast, efficient parser for tar streams in any JavaScript environment", "author": "Michael Jackson ", "license": "MIT", diff --git a/packages/terminal/.changes/minor.initial-release.md b/packages/terminal/.changes/minor.initial-release.md deleted file mode 100644 index 4daef65de14..00000000000 --- a/packages/terminal/.changes/minor.initial-release.md +++ /dev/null @@ -1 +0,0 @@ -Initial release of terminal output utilities for ANSI styles, color capability detection, escape sequences, and testable terminal streams. Automatic color detection disables styles for CI, `NO_COLOR`, `TERM=dumb`, and non-TTY output streams by default, and can be overridden with the `colors` option. Style helpers include common modifiers, foreground colors, background colors, bright variants, and preserve outer styles when nested formatted strings close inner styles. diff --git a/packages/terminal/CHANGELOG.md b/packages/terminal/CHANGELOG.md index 0f7d3f7ecd9..6413fc009d8 100644 --- a/packages/terminal/CHANGELOG.md +++ b/packages/terminal/CHANGELOG.md @@ -2,4 +2,10 @@ This is the changelog for [`terminal`](https://github.com/remix-run/remix/tree/main/packages/terminal). It follows [semantic versioning](https://semver.org/). +## v0.1.0 + +### Minor Changes + +- Initial release of terminal output utilities for ANSI styles, color capability detection, escape sequences, and testable terminal streams. Automatic color detection disables styles for CI, `NO_COLOR`, `TERM=dumb`, and non-TTY output streams by default, and can be overridden with the `colors` option. Style helpers include common modifiers, foreground colors, background colors, bright variants, and preserve outer styles when nested formatted strings close inner styles. + ## Unreleased diff --git a/packages/terminal/package.json b/packages/terminal/package.json index dbacd173617..e2e5abf1a88 100644 --- a/packages/terminal/package.json +++ b/packages/terminal/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/terminal", - "version": "0.0.0", + "version": "0.1.0", "description": "Terminal output utilities for JavaScript libraries and CLIs", "author": "Michael Jackson ", "license": "MIT", diff --git a/packages/test/.changes/minor.add-glob-exclude-option.md b/packages/test/.changes/minor.add-glob-exclude-option.md deleted file mode 100644 index 6728ca0ca30..00000000000 --- a/packages/test/.changes/minor.add-glob-exclude-option.md +++ /dev/null @@ -1 +0,0 @@ -Add `glob.exclude` config for filtering paths during test discovery (defaults to `node_modules/**`) diff --git a/packages/test/.changes/minor.code-coverage.md b/packages/test/.changes/minor.code-coverage.md deleted file mode 100644 index 793bc43d96b..00000000000 --- a/packages/test/.changes/minor.code-coverage.md +++ /dev/null @@ -1,11 +0,0 @@ -Add code coverage reporting to `remix-test` - -- You can enable coverage with default settings vis `remix-test --coverage` or setting `coverage:true` in your `remix-test.config.ts` -- Or you can specify individual coverage settings via the following config fields: - - `coverage.dir`: Directory to store coverage information (default `.coverage`) - - `coverage.include`: Array of globs for files to include in coverage - - `coverage.exclude`: Array of globs for files to exclude from coverage - - `coverage.statements`: Percentage threshold for statement coverage - - `coverage.lines`: Percentage threshold for line coverage - - `coverage.branches`: Percentage threshold for branch coverage - - `coverage.functions`: Percentage threshold for function coverage diff --git a/packages/test/.changes/patch.bun-support.md b/packages/test/.changes/patch.bun-support.md deleted file mode 100644 index 3b68a67dfef..00000000000 --- a/packages/test/.changes/patch.bun-support.md +++ /dev/null @@ -1,5 +0,0 @@ -Internal refactor to test discovery to better support test execution in `bun`. - -- Unlike Node, Bun's `fs.promises.glob` _follows_ symbolic links and does not prune traversal via the `exclude` option, which can cause the test runner to enter `node_modules` symlink cycles in pnpm workspaces -- Refactored the internal test discovery logic to detect and use Bun's native `Glob` class when running under the Bun runtime. Bun's `Glob#scan` does not follow symlinks by default, avoiding the cycle. -- The Node runtime continues to use `fs.promises.glob` diff --git a/packages/test/.changes/patch.fix-test-runner-module-imports-in-bun.md b/packages/test/.changes/patch.fix-test-runner-module-imports-in-bun.md deleted file mode 100644 index 22683ece0d1..00000000000 --- a/packages/test/.changes/patch.fix-test-runner-module-imports-in-bun.md +++ /dev/null @@ -1 +0,0 @@ -Use native dynamic `import()` in Bun to load `.ts` and `.tsx` files in the test runner diff --git a/packages/test/CHANGELOG.md b/packages/test/CHANGELOG.md index a99df0c8fef..8450f225b37 100644 --- a/packages/test/CHANGELOG.md +++ b/packages/test/CHANGELOG.md @@ -1,3 +1,34 @@ +## v0.2.0 + +### Minor Changes + +- Add `glob.exclude` config for filtering paths during test discovery (defaults to `node_modules/**`) + +- Add code coverage reporting to `remix-test` + + - You can enable coverage with default settings vis `remix-test --coverage` or setting `coverage:true` in your `remix-test.config.ts` + - Or you can specify individual coverage settings via the following config fields: + - `coverage.dir`: Directory to store coverage information (default `.coverage`) + - `coverage.include`: Array of globs for files to include in coverage + - `coverage.exclude`: Array of globs for files to exclude from coverage + - `coverage.statements`: Percentage threshold for statement coverage + - `coverage.lines`: Percentage threshold for line coverage + - `coverage.branches`: Percentage threshold for branch coverage + - `coverage.functions`: Percentage threshold for function coverage + +### Patch Changes + +- Internal refactor to test discovery to better support test execution in `bun`. + + - Unlike Node, Bun's `fs.promises.glob` _follows_ symbolic links and does not prune traversal via the `exclude` option, which can cause the test runner to enter `node_modules` symlink cycles in pnpm workspaces + - Refactored the internal test discovery logic to detect and use Bun's native `Glob` class when running under the Bun runtime. Bun's `Glob#scan` does not follow symlinks by default, avoiding the cycle. + - The Node runtime continues to use `fs.promises.glob` + +- Use native dynamic `import()` in Bun to load `.ts` and `.tsx` files in the test runner + +- Bumped `@remix-run/*` dependencies: + - [`terminal@0.1.0`](https://github.com/remix-run/remix/releases/tag/terminal@0.1.0) + ## v0.1.0 ### Minor Changes diff --git a/packages/test/package.json b/packages/test/package.json index 9011d79e708..9396d21e7eb 100644 --- a/packages/test/package.json +++ b/packages/test/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/test", - "version": "0.1.0", + "version": "0.2.0", "description": "A test framework for JavaScript and TypeScript projects", "author": "Shopify Inc.", "license": "MIT", diff --git a/packages/ui/CHANGELOG.md b/packages/ui/CHANGELOG.md index a807956ad0a..c0c5a30250b 100644 --- a/packages/ui/CHANGELOG.md +++ b/packages/ui/CHANGELOG.md @@ -2,4 +2,11 @@ This is the changelog for [`ui`](https://github.com/remix-run/remix/tree/main/packages/ui). It follows [semantic versioning](https://semver.org/). +## v0.0.1 + +### Patch Changes + +- Bumped `@remix-run/*` dependencies: + - [`component@0.8.0`](https://github.com/remix-run/remix/releases/tag/component@0.8.0) + ## Unreleased diff --git a/packages/ui/package.json b/packages/ui/package.json index 33d0aeda43a..8270bef51ec 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/ui", - "version": "0.0.0", + "version": "0.0.1", "description": "UI tokens, mixins, and glyphs for Remix components", "author": "Ryan Florence ", "license": "MIT",