Skip to content

v2.0.0

Choose a tag to compare

@fenying fenying released this 31 Mar 14:52
· 26 commits to master since this release
v2.0.0
0222454

What's Changed

New Features

  • build(project): migrate the project to ESM module system
  • feat(pkg:object): added API Object.isClassConstructor to check if a value is a native ES2015 class constructor
  • feat(pkg:string): added API String.parseKeyValue
  • feat(pkg:string): added API String.parseBooleanValue
  • feat(pkg:object): added class Object.PropertyPathParser
  • feat(pkg:object): added API Object.getPropertyByPath
  • feat(pkg:test): added new API Test.autoTickMs to tick timers by a specified ms interval instead of ticking all timers immediately.
  • feat(pkg:test): added new API Test.withEnv to run tests with temporary environment variables.

Bug Fixes

  • fix(pkg:async): Async.sleep should throw error immediately if an aborted signal is passed in.
  • fix(pkg:async): Async.sleep should sleep for 0ms if 0ms is passed in, instead of resolving immediately in the next tick.

Breaking Changes

  • build(project): increased the minimum required Node.js version to v20.0.0, to support ESM modules
  • fix(pkg:object): API Object.deepMerge should not mutate the both input objects
  • deprecate(pkg:ts-types): removed type IJsonSafeValue.
  • deprecate(pkg:string): mark API String.regexpEscape as deprecated since RegExp.escape is now widely supported in modern environments.

Other Changes

  • build(deps-dev): bump minimatch from 3.1.2 to 3.1.5 in the npm_and_yarn group across 1 directory by @dependabot[bot] in #2
  • build(deps-dev): bump flatted from 3.3.3 to 3.4.2 in the npm_and_yarn group across 1 directory by @dependabot[bot] in #3
  • build(deps): bump the npm_and_yarn group across 1 directory with 1 update by @dependabot[bot] in #4

Full Changelog: v1.7.0...v2.0.0