Skip to content

v0.13.0

Compare
Choose a tag to compare
@agilgur5 agilgur5 released this 20 Mar 01:18
· 152 commits to master since this release

Deprecations

  • tsconfig.json rootDir has been changed to ./src. ./ is now deprecated and will give a warning

Improvements

  • Async Rollup Plugins for tsdx.config.js are now supported out-of-the-box (no more need for hacks like objectHashIgnoreUnknownHack)
  • Jest's --config flag is now respected
  • tsconfig.json's declarationDir is now respected
  • Much better support of JS & JSX files in build, test, and lint. This should enhance the gradual migration experience quite a bit
  • Co-located test files are ignored during build by default now (so unnecessary declarations aren't generated for them)

Bugfixes

  • Babel presets should no longer be ignored and will be merged with TSDX's defaults
  • Multiple JSX -> JSX imports should resolve correctly now
  • src/index.jsx will now be parsed as an entry file (previously only .ts, .tsx, and .js were)
  • esModuleInterop should be properly read now for the purposes of configuring Rollup's esModule / CJS __esModule -- a bug made it so these were always added previously. This does not impact parsing of esModuleInterop for anything else, which worked correctly and still does.
  • Jest transform regexes are now properly anchored, non-TS/TSX files shouldn't be passed to ts-jest anymore
  • Jest config parsing now errors loudly instead of silently during failures
  • Async Rollup Plugins in tsdx.config.js don't bug out anymore

Templates

  • Storybook template has been significantly upgraded and patched
  • GH Actions have been added to all templates
  • tsconfig.json rootDir has been changed to ./src. ./ is now deprecated and will give a warning
  • Confusing tsconfig.json target has been removed as it is not currently configurable (configured with @babel/preset-env instead)
  • src is now included in package.json files to improve debugging
  • Node version requirement is enforced when creating templates

Commits:

Lists of commits:

Features

  • (feat): support custom jest config paths via --config (#526) 16459df
  • (feat): use tsconfig declarationDir is set (#468) b23f158
  • (feat): support JS & JSX files in tsdx test (#486) 424fc25
  • (feat): support JS & JSX files in tsdx lint (#487) 655bb53
  • Ensure co-located test files don't have definitions generated (#472) a56894f

Bugfixes

  • Add JSX extension to @rollup/plugin-node-resolve options (#524) 735f301
  • (fix): correctly read tsconfig esModuleInterop (#555) c12f92c
  • (fix): parse tsconfig extends, trailing commas, and comments (#489) ad33c01
  • (fix): if custom jest config path, use its dir as rootDir (#526) f19fa61
  • (fix/types): fix internal & external declaration errors (#542) d164dd2
  • (deps/fix/types): upgrade rollup & fix event type issues (#544) edd8045
  • (fix): watch examples should only show watch command (#537) e2a91ad
  • anchor regexps for jest transforms (#513) 1b1b9f8
  • fix: respect custom tsconfig path for esModuleInterop (#436) 4ec56fc
  • (fix): upgrade rpts2 / object-hash to support async rollup plugins (#506) b17a0be
  • (fix): jest config parsing shouldn't silently fail on error (#499) a97a5af
  • (fix): check for JSX extension for entry files (#474) 67a07bd
  • (fix): ensure Babel presets are merged (#473) 40ba936

Templates

  • Add 'src' to package.json files to improve source maps (#620) 287dc44
  • (remove): redundant/confusing tsconfig target in templates (#466) 670cc56
  • (fix): set rootDir to './src', not './'. deprecate moveTypes (#504) 68f26c9
  • Add GH Action configs for each template (#457) 21893b8
  • (fix) Enforce Node version for tsdx create, update documentation to express requirement. (#433) 9f183e7
  • Integrate new Storybook config (#435) 1d8f123

Docs

  • (fix/docs): test script doesn't run Jest in interactive mode (#536) a2e4b78
  • (docs/fix): remove outdated language about custom Babel configs (#467) 1269115

Dependencies

  • Bump acorn from 5.7.3 to 5.7.4 (#580) 3462576
  • (deps): remove unused cross-env, cross-spawn, chokidar-cli (#553) ab73e25
  • (refactor): replace rimraf, mkdirp, util.promisify with fs-extra funcs (#501) 3a6d42f
  • Update husky to the latest version 🚀 (#507) 6a0a2c5
  • Update cross-env to the latest version 🚀 (#459) 4f6de10
  • Update @rollup/plugin-node-resolve to the latest version 🚀 (#477) 1a7d816
  • Revert "chore(package): update @types/jest to version 25.1.0 (#462)" (#470) f12fcdf
  • chore(package): update @types/jest to version 25.1.0 (#462) 95ff6da
  • Update @types/semver to the latest version 🚀 (#463) 23c8826

Internal

  • (ci/optim): add caching for yarn install (#625) 18e3c05
  • Add publish npm script (#582) 77e7c70
  • (clean): remove unused fixture test directories (#626) 82e764f
  • (ci): remove experimental --runInBand as tests pass now (#624) 0f72117
  • (optim/ci): don't build a second time for lint or test (#623) 6679c23
  • (refactor): use outputFile instead of mkdirs + writeFile (#617) b21d7af
  • (test): ensure custom --tsconfig path is correctly read (#556) 3530265
  • (types): improve typings for Jest config (#526) 9fef652
  • (test): dogfood tsdx test for internal testing (#526) fec415e
  • (test): always run build before running tests (#493) df22fe3
  • (types): add @types/sade, fix transpileOnly default (#476) b3632fe
  • (types): enforce stricter typings (#475) 4e5e48a

All Contributors

Expand very long list. All historical contributors were added during this release.

Commit Range

v0.12.3...v0.13.0


Postscript

Sorry for the long delay on this release everyone, I was recently added as an official maintainer (a week ago) and just given publishing privileges (yesterday). See #512 for more details.

Wishing everyone well during the pandemic!