- Restored missing license in the distributed package.json.
- Technical update:
- Upgraded all dependencies and tested on latest MUI 6;
- Implemented workspaces to avoid duplicated dependencies for the integration test;
- Releasing using
bun publish
.
- Dependencies update:
- Tested with MUI 6.1;
- Documentation adjustment;
- There is now an opportunity to support the project with sponsorship: https://github.com/sponsors/RobinTail
- JSDoc restored on the distributed declaration files (since 3.0.0).
- Technical update:
- Faster CI with bun lock-file diff control;
- Reduced dev dependencies;
- Upgraded dependencies.
- Builder changed to
tsdown
thanks to @ryoppippi.
- Supporting Material UI v6.
- Fixed peer dependency: the minimal
@mui/material
version set back to5.1.0
.
- There are no breaking changes (*), but the distribution build process has changed:
- ESM is built using bun;
- DTS is built using bun plugin Isolated Declarations that runs oxc transformer under the hood;
- CJS is built using tsc and minified using uglify-js.
- (*) — a peer dependency increase was found later and fixed in 3.0.1.
- Technical release before v3: several chores, no changes.
- Replaced
any
withunknown
for internally used type.
- Optimization for consumption in browser.
- Breaking changes:
- Targeting ES6,
- Default export removed,
- IIFE build removed.
- The distribution becomes ESM first, while remaining dual (CJS support remains).
- The right files should be chosen automatically from the
dist
folder:- for ESM:
index.js
andindex.d.ts
, - for CJS:
index.cjs
andindex.d.cts
.
- for ESM:
- The right files should be chosen automatically from the
- Features:
- Performance improvement: 1.6 times faster.
- How to migrate:
- Replace default import with a named one.
// before:
import mergeSx from "merge-sx";
// after:
import { mergeSx } from "merge-sx";
- Upgraded dependencies.
- Tested on MUI versions up to 5.15.0.
- Fixed issue #205 reported by @mwskwong.
- The issue was introduced in v1.3.0.
- Next.js and Webpack used to complain on importing the module with the following error message:
Module not found: Error: Default condition should be last one
- Both CJS and ESM bundles have their own declaration files:
/dist/index.d.ts
for CJS,/dist/index.d.mts
for ESM.- The
exports
entry ofpackage.json
is adjusted accordingly.
- Just a technical update, no new features or fixes.
- Tested on MUI versions from
5.1.0
to5.12.0
.
- Just a technical update, no new features or fixes.
- Tested on MUI versions from
5.1.0
to5.11.0
.
- First stable release according to SemVer.
- No breaking changes.
- Tested on MUI versions from
5.1.0
to5.10.13
.
- Fixing the installation warning introduced in v0.1.1.
- The required peer dependency changed back from
@mui/system@^5.1.0
to@mui/material@^5.1.0
.
warning " > merge-sx@0.1.4" has unmet peer dependency "@mui/system@^5.1.0".
- Another performance improvement. This time by
878%
for 10 arguments. - I switched from using reducer to
for..of
syntax.
┌─────────────┬─────────┬────────┬───────┬───────┐
│ N arguments │ 10 │ 100 │ 1000 │ 10000 │
├─────────────┼─────────┼────────┼───────┼───────┤
│ ops/s │ 6475799 │ 718229 │ 74589 │ 7636 │
└─────────────┴─────────┴────────┴───────┴───────┘
- The performance has been improved by
24%
for 10 arguments.
┌─────────────┬────────┬───────┬──────┬───────┐
│ N arguments │ 10 │ 100 │ 1000 │ 10000 │
├─────────────┼────────┼───────┼──────┼───────┤
│ ops/s │ 601463 │ 48255 │ 2068 │ 25 │
└─────────────┴────────┴───────┴──────┴───────┘
- No changes to the code. Descriptive works only.
- The required peer dependency changed from
@mui/material@^5.1.0
to@mui/system@^5.1.0
.
- The first release of the utility.