|
1 | 1 | # Changelog |
2 | 2 |
|
| 3 | +## 2.0.0 |
| 4 | + |
| 5 | +### Major Changes |
| 6 | + |
| 7 | +- ad1eede: Production-ready v1.0.0 release with enterprise features: |
| 8 | + - Job timeout & cancellation with AbortController support |
| 9 | + - Priority queue system (HIGH, NORMAL, LOW priorities) |
| 10 | + - Worker health monitoring and automatic restart on failure |
| 11 | + - Real-time metrics and performance monitoring |
| 12 | + - Auto-scaling thread pool with configurable thresholds |
| 13 | + - Strict mode security validation (enabled by default) |
| 14 | + - Comprehensive benchmark suite vs competitors (Piscina, Workerpool, Tinypool) |
| 15 | + - Full TypeScript strict mode with zero linter errors |
| 16 | + - 20+ new comprehensive tests covering all features |
| 17 | + - Complete documentation overhaul (README, SECURITY, CHANGELOG, CONTRIBUTING) |
| 18 | + - Advanced examples for all features |
| 19 | + - Event-driven pool closing (replaced inefficient polling) |
| 20 | + - Enhanced error handling with full stack trace preservation |
| 21 | + |
| 22 | +### Minor Changes |
| 23 | + |
| 24 | +- Add full ESM (ES Modules) and CommonJS dual module support: |
| 25 | + - Dual build system with separate CJS and ESM outputs |
| 26 | + - Proper package.json exports field with conditional exports |
| 27 | + - Module type hints in dist folders for better resolution |
| 28 | + - Universal worker path resolution for both module systems |
| 29 | + - Compatibility tests for both ESM and CJS |
| 30 | + - Tree-shaking support in ESM builds |
| 31 | + - Works seamlessly in modern bundlers (Vite, Rollup) and legacy tools (Webpack, Node CJS) |
| 32 | + - Fully backward compatible - existing CommonJS users unaffected |
| 33 | + |
| 34 | +## 1.1.0 |
| 35 | + |
| 36 | +### Minor Changes |
| 37 | + |
| 38 | +- **Full ESM (ES Modules) support**: Package now supports both ESM and CommonJS |
| 39 | +- **Dual build system**: Separate builds for CJS (`dist/cjs`) and ESM (`dist/esm`) with proper conditional exports |
| 40 | +- **Package.json exports field**: Proper conditional exports for modern tooling and tree-shaking |
| 41 | +- **Module type hints**: package.json files in dist folders for better module resolution |
| 42 | +- **Compatibility tests**: Dedicated ESM and CJS compatibility test suites |
| 43 | +- **Universal worker path resolution**: Works seamlessly in both ESM and CJS environments |
| 44 | + |
| 45 | +### Changed |
| 46 | + |
| 47 | +- Build system now outputs three separate builds: `dist/cjs`, `dist/esm`, `dist/types` |
| 48 | +- Worker path resolution improved to detect and handle both module systems automatically |
| 49 | +- Package exports configured for optimal tree-shaking in ESM |
| 50 | +- Documentation updated with both ESM and CJS usage examples |
| 51 | + |
| 52 | +### Technical Details |
| 53 | + |
| 54 | +- Main entry point (`require`): `./dist/cjs/index.js` |
| 55 | +- Module entry point (`import`): `./dist/esm/index.js` |
| 56 | +- TypeScript types: `./dist/types/index.d.ts` |
| 57 | +- Requires Node.js 12.20+ for conditional exports support |
| 58 | + |
| 59 | +### Benefits |
| 60 | + |
| 61 | +- ✅ Modern ESM support for Vite, Rollup, and modern bundlers |
| 62 | +- ✅ Tree-shaking support in ESM builds |
| 63 | +- ✅ Backward compatible with CommonJS projects |
| 64 | +- ✅ Future-proof module architecture |
| 65 | +- ✅ Works in both Next.js App Router (ESM) and Pages Router (CJS) |
| 66 | + |
3 | 67 | ## 1.0.0 |
4 | 68 |
|
5 | 69 | ### Major Changes |
|
0 commit comments