GitPedia
jaredpalmer

jaredpalmer/tsdx

Zero-config CLI for TypeScript package development

30 Releases
Latest: 5mo ago
v2.0.0Latest
github-actions[bot]github-actions[bot]ยท5mo agoยทDecember 29, 2025
GitHub

๐Ÿ“‹ Major Changes

  • [#1202](https://github.com/jaredpalmer/tsdx/pull/1202) [`6fcfef1`](https://github.com/jaredpalmer/tsdx/commit/6fcfef1dcb1c1d7f9f2c04969ee208a702876140) Thanks [@jaredpalmer](https://github.com/jaredpalmer)! - Initial 2.0.0 release - complete rewrite with modern Rust-based tooling
  • Bundling with bunchee
  • Testing with vitest
  • Linting with oxlint
  • Formatting with oxfmt
  • Project scaffolding with basic and react templates
v0.14.1
agilgur5agilgur5ยท5y agoยทOctober 13, 2020
GitHub

๐Ÿ› Bugfixes

  • An upstream cache bug that affected certain combinations of build formats has been fixed
  • The error that was fixed would look similar to:
  • ```txt
  • ```
  • The built-in `lodash` -> `lodash-es` replacement no longer breaks imports of `lodash/fp`

๐Ÿ“ฆ Dependencies

  • The warning about incompatible peerDeps from `eslint-config-react-app` has been resolved
  • <hr>

๐Ÿ“ฆ Commits

  • <details>
  • <summary>Lists of commits:</summary>

๐Ÿ› Bugfixes

  • fix/deps: upgrade rpts2 to fix cache issue (#896) eaa1c3b
  • fix: don&#39;t replace lodash/fp imports with lodash-es/fp (#884) 8b91c74

๐Ÿ“ฆ Dependencies

  • Use compatible eslint-config-react-app and eslint-plugin-react-hooks. (#890) 57f7dcc

๐Ÿ“ฆ GitHub

  • Create CODE_OF_CONDUCT.md (#899) e3e80d6

๐Ÿ“ฆ Internal

  • test: add a smoke test that builds _all_ formats (#896) e2f1b76
  • test: ensure lodash-es replacement is done properly (#884) 9c4ce68

๐Ÿ“ฆ All Contributors

  • docs: add tanem as a contributor (#902) 81c8b2d
  • docs: add altrim as a contributor (#895) d292dd9
  • docs: add ludofischer as a contributor (#894) da53ea8

๐Ÿ“ฆ Commit Range

  • https://github.com/formium/tsdx/compare/v0.14.0...v0.14.1
  • </details>
v0.14.0
agilgur5agilgur5ยท5y agoยทSeptember 21, 2020
GitHub

๐Ÿ’ฅ Slightly Breaking Changes

  • Updated the required Node version from 8 to 10.
  • While previous versions of TSDX began deprecating support for Node 8, it was not officially dropped.
  • In this release, we have officially dropped Node 8: TSDX now requires Node 10+ as many dependencies that were upgraded similarly do.
  • This should not impact most users as Node 8 has been EoL for ~9 months now.
  • Many packages had already required Node 10+ and the vast majority already have support for it.
  • Most users are on Node 12 or Node 14 already.
  • Updated the Jest version used by `tsdx test` from 24 to 25.
  • The main breaking change in Jest 25 is the upgrade of the default JSDOM environment from JSDOM v11 to JSDOM v15.
  • + 9 more

๐Ÿ“ฆ Improvements

  • Jest 25 / JSDOM 15 usage per above
  • Due to the `babel-plugin-polyfill-regenerator` change above, TSDX now supports polyfilling generators out-of-the-box. Previously we only supported async/await with `babel-plugin-transform-async-to-promises` and required users to configure their own plugins for generator polyfilling
  • `styled-components/macro` support per above
  • A `--max-warnings` flag has been added to `tsdx lint`, which works the same as [ESLint's `--max-warnings` flag](https://eslint.org/docs/user-guide/command-line-interface#handling-warnings)

๐Ÿ“ฆ Template Improvements

  • Storybook template has been updated to Storybook v6, which significantly simplifies the config and adds some features
  • Storybook template has now been configured to type-check during Storybook builds
  • [`size-limit`](https://github.com/ai/size-limit) has been added to all templates for bundle analysis via NPM/Yarn scripts and a GitHub Action
  • All templates' GitHub Actions now have matrix testing for different Node versions and OSes out-of-the-box
  • All templates' GitHub Actions now have simplified config and improved caching using [`bahmutov/npm-install`](https://github.com/bahmutov/npm-install)
  • All templates' [`tsconfig.json`](https://www.typescriptlang.org/tsconfig) now set `skipLibCheck`, `forceConsistentCasingInFileNames`, and `noEmit`
  • The former two are now [recommended by TS](https://github.com/tsconfig/bases/blob/master/bases/recommended.json) and the latter one is just a usability improvement for those who use `tsc` for type-checking. `skipLibCheck` will also greatly increase performance of `tsc`'s type-checking
  • All templates' `tsconfig.json` now have detailed comments explaining nearly every configuration option in use

๐Ÿ“ Docs

  • [`patch-package`](https://github.com/ds300/patch-package) is now officially listed as a customization option

๐Ÿ“ฆ Dependencies

  • Jest 25 and Node 10+ per above. Most deps were updated by a major or two.
  • `@babel/preset-env` was updated to the latest minor to support nullish coalescing and optional chaining without additional plugins, as well as to update the compatibility table.
  • If you have snapshots that rely on specific output from `preset-env` or Autoprefixer, as TSDX's internal test suite does, you may need to update those snapshots.
  • All vulnerabilities and deprecation warnings should now be resolved
  • Due to some upgrades, clean-up, and use of [`yarn-deduplicate`](https://github.com/atlassian/yarn-deduplicate/), overall install size should have decreased a good bit
  • <hr>

๐Ÿ“ฆ Commits

  • <details>
  • <summary>Lists of commits:</summary>

๐Ÿ“ฆ Improvements

  • Add `--max-warnings` flag to `tsdx lint` (#858) dd92fec

๐Ÿ› Bugfixes

  • change: replace useBuiltIns with polyfill-regenerator (#795) 6e405d5
  • change: replace async-to-promises with regenerator (#795) 2aefc3d
  • (fix): change plugin order to make styled-components/macro work (#644) 6d7257c

๐Ÿ“ฆ Template Improvements

  • feat: type-check stories during Storybook build (#876) f1ddccb
  • feat: add test matrix to all templates' CI (#882) 8449699
  • fix: use @bahmutov/npm-install in templates' CI (#882) f109fe9
  • Remove redundant CI=true from templates' github workflows (#870) 6ba173f
  • docs: add comment that noUnused* overlaps with an ESLint rule (#864) e50bc51
  • docs: add comments for nearly all tsconfig options in use (#864) 10a6137
  • feat: add noEmit to templates' tsconfigs (#864) c802b8b
  • feat: add skipLibCheck and forceConsistentCasingInFileNames (#864) e0f79fe
  • + 2 more

๐Ÿ“ Docs

  • docs: remove reference to Node 10+ req for create (#881) a95d2d8
  • multi-entry: temporarily change docs to singular "module" (#862) ac98a73
  • docs: capitalize 'S' in TypeScript (#752) da4b189
  • docs: add `patch-package` reference to Customization section (#855) 08a8ef8
  • docs: update features and comparison with changes from past year (#847) 1619bc1
  • docs/fix: missing "to" infinitive marker (#843) 49fb303

๐Ÿ“ฆ Dependencies

  • deps: upgrade several more deps' majors (#879) a9434f9
  • deps: update extractErrors plugin's evalToString file (#878) 0e45050
  • deps: update extractErrors Babel plugins to Babel 7 (#878) 33a6bde
  • license: add FB License header to all extractErrors code (#878) 2caad24
  • Migrate from rollup-plugin-babel to @rollup/plugin-babel (#789) f592595
  • fix/deps: dependabot YAML doesn't support anchors/aliases (#850) f8b8317
  • env/deps: remove greenkeeper.json, configure dependabot.yml (#846) 45aea66
  • deps: upgrade Babel preset-env, remove now redundant plugins (#838) 8e2d750
  • + 5 more

๐Ÿ“ฆ GitHub

  • github: use envinfo for getting versions in issue reports (#820) 349f299

๐Ÿ“ฆ Internal

  • ci: make internal job names more consistent w/ templates' (#882) 49a3521
  • ci: update matrix to use Node 14 instead of Node 13 (#880) dac1fd7
  • clean: bad whitespace and Flow types in extractErrors (#878) 2d0f279
  • test: compatible targets shouldn't insert regeneratorRuntime (#795) 794e5ad
  • test: add an async syntax regression test (#795) 814c83b
  • refactor/test: move generator test to build-default (#795) 2f8544d
  • ci: add deduplicate:check script and run on precommit and CI (#683) 22133ce
  • deps: update np to fix MFA bug during publishes (#816) fff9a43

๐Ÿ“ฆ All Contributors

  • docs: add felixmosh as a contributor (#883) 427e5ad
  • docs: add vladdy-moses as a contributor (#877) 7edf7ea
  • docs: add in19farkt as a contributor (#875) ade9483
  • docs: add CyriacBr as a contributor (#874) 0032086
  • docs: add seungdols as a contributor (#873) ae15bd3
  • docs: add hb-seb as a contributor (#872) 33c8317
  • docs: add KATT as a contributor (#868) f6c296a
  • docs: add thany as a contributor (#867) d996a0e
  • + 9 more

๐Ÿ“ฆ Commit Range

  • https://github.com/formium/tsdx/compare/v0.13.3...v0.14.0
  • </details>
  • <hr>

๐Ÿ“ฆ Postscript

  • Best wishes and stay safe to everyone!
v0.13.3
agilgur5agilgur5ยท5y agoยทAugust 23, 2020
GitHub

๐Ÿ“ฆ Optimizations

  • Types are only checked once now, type declarations are only emitted once now, and cache is shared with all formats
  • Previously it was once per each format
  • This was a roughly 15-30% perf boost altogether on the TSDX test suite, but YMMV

๐Ÿ› Template Bugfixes

  • Templates no longer have `baseUrl` or `paths` set in their `tsconfig`, fixing a long-standing bug

๐Ÿ“ Template Docs

  • Template READMEs have been significantly improved, adding consistency between all 3, fixing outdated portions, and better describing certain behaviors

๐Ÿ“ฆ Commits

  • <details>
  • <summary>Lists of commits: </summary>

๐Ÿ“ฆ Optimizations

  • optim: only check types once (#758) 79dddc4
  • (optim): no need for separate cacheRoot per format (#691) 3357cbf
  • (optim/fix): only emit type declarations once (#691) 6929300

๐Ÿ“ฆ Template Improvements

  • deps: upgrade actions/cache to v2 in all templates (#750) 984e024

๐Ÿ› Template Bugfixes

  • (fix): templates should not have baseUrl or paths set (#707) 17ffcd2

๐Ÿ“ Template Docs

  • (docs): basic template README should be like React ones (#706) e7128f8
  • (docs): add GitHub Actions info to template CI READMEs (#706) effdc31
  • (docs): remove duplicative &quot;Using the Playground&quot; section (#706) f360f9b
  • (docs): improve consistency in template READMEs (#706) 356bbda
  • (docs): remove version/permalink refs in template READMEs (#706) 76a0530
  • (docs): update outdated Jest info in template READMEs (#706) d4ff914

๐Ÿ“ Docs

  • lint: manually fix new website ESLint errors and warnings (#794) 9fea19d
  • format: auto-fix new website formatting errors (#794) 3dfdafb
  • format: auto-fix help dialog formatting error (#794) 99d982a
  • Update features.js f0963cb
  • Fix edit link e85b9ab
  • Remove unused image 4f6bdb4
  • Remove docusaurus site 1b3452b
  • Put up redirect at old docs site 5f49acd
  • + 7 more

๐Ÿ“ฆ GitHub

  • github: disable blank issues without an issue template (#814) 0139cae

๐Ÿ“ฆ Internal

  • greenkeeper: remove website from greenkeeper config (#815) fc22471
  • (clean): remove redundant tsconfig strict opts in tests (#690) 5c73483
  • Simplify getInputs function (#745) 14bfa39

๐Ÿ“ฆ All Contributors

  • docs: add devrelm as a contributor (#777) 5e5c3f8
  • docs: add jssee as a contributor (#776) 1225a92
  • docs: add yuriy636 as a contributor (#775) 267e488
  • docs: add dandv as a contributor (#774) b344c9e
  • docs: add bmihelac as a contributor (#773) 32126c3
  • docs: add Semperia as a contributor (#772) f1335f1
  • docs: update org for all-contributors (#772) 12971e5

๐Ÿ“ฆ Commit Range

  • https://github.com/formium/tsdx/compare/v0.13.2...v0.13.3
  • </details>
  • <hr>

๐Ÿ“ฆ Postscript

  • Wishing everyone well! Please stay safe and please do your part to follow public health guidelines!
  • โœŠ Quoting from [a Chromium release](https://bodhi.fedoraproject.org/updates/FEDORA-2020-08561721ad) โœŠ :
  • > Open Source proves that many voices, many contributions, together can change the world. It depends on it. This is my voice.
v0.13.2
agilgur5agilgur5ยท6y agoยทApril 13, 2020
GitHub

๐Ÿ› Bugfixes

  • `@types/jest` was moved to be a dependency instead of a devDependency. It has also been removed from the templates.
  • This should fix any version mismatch issues that were occuring, like using `@types/jest` v25 but Jest v24.
  • Stay tuned for an upgrade to Jest v25 in the next minor release of TSDX
  • `semver` was also moved from devDependency to dependency. It's used in `tsdx create`, so it was misplaced.

๐Ÿ“ฆ Template Improvements

  • Several redundant `tsconfig` `compilerOptions` have been removed. `strict` already includes all of these.
  • <hr>

๐Ÿ“ฆ Commits:

  • <details>
  • <summary>Lists of commits: </summary>

๐Ÿ› Bugfixes

  • (fix/deps): semver should be a dep, not a devDep (#677) 094fe5e
  • (fix): @types/jest should be a dep, not a devDep (#672) 2930943

๐Ÿ“ฆ Template Improvements

  • (clean): remove redundant tsconfig strict opts in templates (#673) 2dd4396

๐Ÿ“ฆ Internal

  • (docs/types): add comments to some remaining declarations (#675) 72092c8
  • (deps/types/clean): remove extraneous typings (#675) c9a719a
  • (deps/clean): remove unused @types/ms devDep (#674) eaa5da7
  • (clean): remove redundant set of watch opts (#671) 351936e

๐Ÿ“ฆ All Contributors

  • docs: add kotarella1110 as a contributor (#680) 51cd32f
  • docs: add rockmandash as a contributor (#676) 92747f8
  • docs: add ambroseus as a contributor (#670) 72c06b9

๐Ÿ“ฆ Commit Range

  • https://github.com/jaredpalmer/tsdx/compare/v0.13.1...v0.13.2
  • </details>
  • <hr>

๐Ÿ“ฆ Postscript

  • Wishing everyone well during the pandemic! Please stay safe and please do your part to follow public health guidelines!
  • If you're looking for more ways to help out, there are many, many around and likely local initiatives where you live. I also included a small few I stumbled upon in the previous release postscript.
v0.13.1
agilgur5agilgur5ยท6y agoยทMarch 29, 2020
GitHub

๐Ÿ› Template Bugfix

  • `tsconfig.json` `include` was changed to remove `test` from the array. This faulty include resulted in declarations being generated in `dist/` for test files as well as slowing down builds. It was also the cause of TS errors around v0.13.0's change to `rootDir: './src'`

๐Ÿงช Tests

  • Testing has been significantly improved in the commits leading up to this release, including:
  • creating an integration test set-up
  • creating many integration tests
  • migrating the tests to TypeScript (they were previously 99% JS)
  • <hr>

๐Ÿ“ฆ Commits:

  • <details>
  • <summary>Lists of commits: </summary>

๐Ÿ› Template Bugfix

  • (fix): remove faulty tsconfig.json include of test dir (#646) aa09dcb

๐Ÿ“ฆ Internal

  • (format): format all files, not just src/ and test/ (#648) 3cb3841
  • (refactor): make preset-env variable naming more explicit (#643) 477a6dd
  • (clean): remove unused test/utils/psKill and its deps (#627) 9f559fa
  • (clean): remove some unnecessary internal declarations (#637) 985a97b
  • (clean): remove all references to --define (#636) 6e34b20
  • (refactor): migrate all tests and test helper code to TS (#649) 863c56d
  • (docs/fix): remove erroneous Test README sub-header 9fde343
  • (test): ensure Babel presets are merged and applied (#627) ee391e4
  • + 11 more

๐Ÿ“ฆ All Contributors

  • docs: add lookfirst as a contributor (#651) 7364efe

๐Ÿ“ฆ Commit Range

  • https://github.com/jaredpalmer/tsdx/compare/v0.13.0...v0.13.1
  • </details>
  • <hr>

๐Ÿ“ฆ Postscript

  • Wishing everyone well during the pandemic! Please stay safe and follow the guidelines of public health officials, for yourself, for your family, and for everyone else and their families!
  • There's also lots of ways to help out, here's just a few I've stumbled upon:
  • https://foldingathome.org/
  • https://stackoverflow.blog/2020/03/26/ways-to-help-the-fight-against-covid-19-from-home/
  • http://hackathon.gogcrc.org/
  • [#BuildforCOVID19](https://twitter.com/hashtag/buildforcovid19)
  • https://covid19responsefund.org/
  • https://www.gofundme.com/c/act/covid19
  • + 1 more
v0.13.0
agilgur5agilgur5ยท6y agoยทMarch 20, 2020
GitHub

๐Ÿ—‘๏ธ 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
  • <hr>

๐Ÿ“ฆ Commits:

  • <details>
  • <summary>Lists of commits: </summary>

โœจ 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
  • + 5 more

๐Ÿ“ฆ 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
  • + 1 more

๐Ÿ“ฆ 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
  • + 4 more

๐Ÿ“ฆ All Contributors

  • <details>
  • <summary> Expand very long list. All historical contributors were added during this release. </summary>
  • docs: add justingrant as a contributor (#622) 3a6e098
  • docs: add github as a contributor (#616) d4dd010
  • docs: add dependabot[bot] as a contributor (#615) 6b9f205
  • docs: add allcontributors[bot] as a contributor (#614) e0e1a79
  • docs: add greenkeeper[bot] as a contributor (#613) 60cc280
  • docs: add Carl-Foster as a contributor (#611) 8b2fb0c
  • + 70 more

๐Ÿ“ฆ Commit Range

  • https://github.com/jaredpalmer/tsdx/compare/v0.12.3...v0.13.0
  • <hr>

๐Ÿ“ฆ Postscript

  • Wishing everyone well during the pandemic!
v0.12.3
jaredpalmerjaredpalmerยท6y agoยทJanuary 13, 2020
GitHub

๐Ÿ“ฆ Patch

  • `tsdx test` no longer defaults to watch mode in interactive environments. This reverts previous behavior which caused bugs.
  • Commits
  • Run tests in series with --runInBand (#429) 367a7a5
  • Deprecate Node 8 support (#426) bd35f65
  • Revert "default jest watch unless in CI" PR #366 (#421) 95ac3f4
  • Drop Node 8 from test matrix f1cf8b1
  • https://github.com/jaredpalmer/tsdx/compare/v0.12.2...v0.12.3
v0.12.2
jaredpalmerjaredpalmerยท6y agoยทJanuary 13, 2020
GitHub

๐Ÿ“ฆ Patch

  • Fix issue with TS compilation. Please upgrade to 12.2, as builds are inconsistent.
  • Commits
  • (docs): add contributing guidelines (#417) e5747fd
  • Fix onFailure example (#416) 9e8ab92
  • (fix): revert #130's breaking change of tsconfig options (#415) 00f80ac
  • (refactor): replace ensureDistFolder with fs.outputFile (#406) ea124bc
  • upgraded rollup-plugin-'s to @rollup/plugin-'s. (#411) cfc1e76
  • (docs): add warning to tsdx.config.js usage (#400) 35fa947
  • + 4 more
v0.12.1
jaredpalmerjaredpalmerยท6y agoยทDecember 29, 2019
GitHub

๐Ÿ“ฆ Improvements

  • Add success/failure flags
  • Add `transpileOnly` flag
  • ```diff
  • Description
  • Rebuilds on any change
  • Usage
  • $ tsdx watch [options]
  • Options
  • + 24 more

๐Ÿ› Bugfixes

  • Fixed jest watch mode
  • Commits
  • (refactor): invert if in run function (#404) e1370de
  • (optim/test): use node testEnvironment (#405) ec0f285
  • (clean): remove --env=jsdom as JSDOM is Jest's default (#396) 7c79b74
  • (format): alphabetize package.json deps (#398) 27ba1dd
  • (docs/fix): fix ToC changes / bugs introduced in #307 (#397) 387f3c2
  • (docs): improve test watch mode docs (#395) 531010e
  • + 6 more
v0.12.0
jaredpalmerjaredpalmerยท6y agoยทDecember 19, 2019
GitHub

๐Ÿ“ฆ Improvements

  • Added Storybook template
  • Upgraded to Ts 3.7.x
  • Updated rollup deps / plugins
  • Moved the cache root to be inside of `node_modules`, you can delete the .rts2_cache_xxx folders from root and remove them from your .gitignore files
  • (internals) Made internal methods async where possible, should result in a minor speed boost.
  • Added optional chaining and nullish coalescing operators support
  • When running in an interactive shell (i.e. if `process.env.CI` `false`), `tsdx test` now runs Jest in watch mode. Note: Most CI services set `CI` env variable to true by default. Our implementation is exactly how create-react-app does it.
  • `tsdx test` will pass in cases where no tests exist
  • + 1 more

๐Ÿ› Bugfixes

  • Fix error when providing babel/preset-env without options
  • Got rid of eslint warning upon install
  • (Internal) Tests now run on PRs
  • Do not output warning about react on non-react projects

๐Ÿ“ฆ Roadmap

  • Add Closure Compiler
  • Better support for "preshaking" and top level exports
  • Monorepo support. Note: Formik is now using lerna and TSDX, so we'll be using it as a playground
  • Commits
  • (deps/lint): upgrade @typescript-eslint to support ?. and ?? (#377) 843c676
  • (ci): add a lint job so PRs will require passing lint (#378) 930feb9
  • (clean): remove .rts_cache_* from storybook gitignore (#375) c5df5ac
  • Add optional chaining and nullish coalescing operators support (#370) a736c77
  • + 42 more
v0.11.0
jaredpalmerjaredpalmerยท6y agoยทOctober 29, 2019
GitHub

๐Ÿ› Bugfixes

  • Rollback to `rollup-plugin-typescript2`. TSDX now generates types properly--again. SORRY about that folks.

๐Ÿ“ฆ Improvements

  • Added support for eslint report: new flag `--report-file`
  • Added `--noClean` option for watch
  • Commits
  • Update to @types/react 16.9.11 (#288) 870d05a
  • Remove confusing comment (#286) 3352220
  • fix: rollback typescript plugin to avoid babel config conflicts (#287) 3989277
  • --noClean option for watch (#282) 9c10c70
  • docs: clarify effect of propertyReadSideEffects (#280) 5becff1
  • + 5 more
v0.10.3
jaredpalmerjaredpalmerยท6y agoยทOctober 16, 2019
GitHub

๐Ÿ“‹ Changes

  • Fix #263. Move shelljs to deps 7030097
v0.10.2
jaredpalmerjaredpalmerยท6y agoยทOctober 16, 2019
GitHub

๐Ÿ“ฆ Improvements

  • `tsdx create` will now default to an MIT license
  • `tsdx create` will try to pull author info for `package.json` from git and npm configs or fallback to a cute lil' prompt. This is to ensure that the bootstrapped package is publishable immediately.
  • Commits
  • feat: MIT License by default (#244) 0f965a6
  • https://github.com/jaredpalmer/tsdx/compare/v0.10.1...v0.10.2
v0.10.1
jaredpalmerjaredpalmerยท6y agoยทOctober 16, 2019
GitHub

๐Ÿ› Bugfixes

  • Remove TypeScript as peer-dep (this fixes `npx tsdx create` if you don't have TS installed globally)
  • Updated deps
  • Add back support for Node 8.12+

๐Ÿ“ฆ Improvements

  • Move progress estimator cache location to `node_moudles/.cache/.progress-estimator`.
  • Commits
  • Lazily initialize progress estimator cache (#262) 7d8c0cf
  • Fix logger integration (#256) fcfc3ac
  • Remove TS as peer dep (#261) a59d62a
  • Add back support for node 8 (#250) eb0383b
  • Update execa to the latest version ๐Ÿš€ (#257) a15630a
  • Use dist path config (#251) e44cbde
  • + 6 more
v0.10.0
jaredpalmerjaredpalmerยท6y agoยทOctober 15, 2019
GitHub

๐Ÿ“ฆ Improvements

  • Support for async/await in rollup plugins
  • Added `system` to `format` options
  • Added support for `jest.config.js` (it will merge with the defaults)
  • TSDX will now clean the `dist` directory on `tsdx build`

๐Ÿ› Bugfixes

  • Fixed missing `eslint` deps

๐Ÿ’ฅ POSSIBLY BREAKING

  • Dropped support for Node 8 because we moved to @wessberg/rollup-plugin-ts
  • Commits
  • Merge pull request #242 from audiolion/patch-1 1a62579
  • fix: failing builds 90ecbfc
  • fix(testing): add support for jest.config.js (#229) 22c2416
  • feat: clean dist dir on build (#240) b86f715
  • docs: add skvale as a contributor (#237) dbc3d70
  • docs: add JasonEtco as a contributor (#236) 543c8d0
  • + 8 more
v0.9.3
jaredpalmerjaredpalmerยท6y agoยทSeptember 30, 2019
GitHub

๐Ÿ› Bugfixes

  • `tsdx lint` command no longer swallows errors
  • Commits
  • remove async; fix test (#212) afb0281
  • Merge pull request #209 from skvale/fix/196-npx-lint-without-input-files 727f71c
  • feat(lint): Use src test as default input files if none are specified 3d202cf
  • [Deploy Playground] Fix Netlify build command (#207) 24a1fdc
  • Update README.md 0111130
  • [Deploy Playground] Fix Netlify build command 26ee608
  • + 1 more
v0.9.2
jaredpalmerjaredpalmerยท6y agoยทSeptember 9, 2019
GitHub

๐Ÿ› Bugfixes

  • Fix lint command by allowing use --write-file flag

๐Ÿ“ฆ Internals

  • Using TS 3.6.2 internally
  • Fix race condition between build and lint tests
  • The test suite now runs against Node 8, 10, 12 x macOs, ubuntu, and windows latest (yay GitHub CI!)
  • Alpha website! (https://tsdx.netlify.com) (needs some design love and dark mode)
  • Commits
  • Remove --runInBand flag 9082695
  • Fix race condition btwn build and lint tests 6e77e91
  • Upgrade typescript to 3.6.2 (#205) c1197d7
  • + 7 more
v0.9.1
jaredpalmerjaredpalmerยท6y agoยทSeptember 3, 2019
GitHub

๐Ÿ› Bugfix

  • Fixed regression where lodash imports were being rewritten in CommonJS builds.
  • Fixed lint command
  • Commits
  • Don't replace imports in cjs build (#192) 790e781
  • Fix lint command usage by husky and required files (#189) 8197e0f
  • Add local react fix to gitignore c6d2ef3
  • https://github.com/jaredpalmer/tsdx/compare/v0.9.0...v0.9.1
v0.9.0
jaredpalmerjaredpalmerยท6y agoยทAugust 27, 2019
GitHub

๐Ÿ“ฆ Improvements

  • `--extractErrors` has been changed to a boolean. It will just default to use a dummy URL in the `ErrorProd.js` component.
  • You can now extend TSDX's rollup configuration with `tsdx.config.js`. TSDX uses Rollup under the hood. The defaults are solid for most packages (Formik uses the defaults!). However, if you do wish to alter the rollup configuration, you can do so by creating a file called `tsdx.config.js` at the root of your project like so:
  • ```js
  • // Not transpiled with TypeScript or Babel, so use plain Es6/Node.js!
  • module.exports = {
  • // This function will run for each entry/format/env combination
  • rollup(config, options) {
  • return config; // always return a config.
  • + 49 more

๐Ÿ“ฆ Babel

  • You can add your own `.babelrc` to the root of your project and TSDX will merge it with its own babel transforms (which are mostly for optimization).
  • Commits
  • Merge branch 'master' of github.com:jaredpalmer/tsdx 19c2834
  • Extensible Rollup configuration (#183) cb2cf7c
  • Merge branch 'master' into v0.9 a1827e4
  • Merge pull request #185 from honzabrecka/update-babel-plugin-transform-async-to-promises 7bf3032
  • update babel-plugin-transform-async-to-promises dependency 5838fe7
  • add fixture 990f115
  • + 8 more
v0.8.0
jaredpalmerjaredpalmerยท6y agoยทAugust 14, 2019
GitHub

๐Ÿ“ฆ Improvements

  • Added experimental `--extractErrors` flag
  • Added ability to specify path to a custom `tsconfig.json`
  • Added `--template` flag to `tsdx create` So you can run `npx tsdx create --template=react` now.
  • Relaxed Jest's `testMatch` flag and made it overridable..
  • Added `tsdx lint` command with eslint x typescript x prettier.

๐Ÿ› Bugfixes

  • Gracefully exit with code 1 when build failed (breaking change)
  • Ignore ESM cache

๐Ÿ“ฆ Internal Stuff

  • Dropped CircleCI for GitHub CI!

๐Ÿ“ฆ Migration Guide

  • To take advantage of `tsdx lint`, simply add a npm script to your `package.json` like so.
  • ```diff
  • {
  • "scripts": {
  • "start": "tsdx watch",
  • "build": "tsdx build",
  • + "lint": "tsdx lint"
  • }
  • + 23 more
v0.7.2
jaredpalmerjaredpalmerยท7y agoยทJune 19, 2019
GitHub

๐Ÿ“ฆ Patch

  • Updated .gitignore in the templates to ignore the new esm cache
  • Commits
  • fixed issue mentioned in #148 - Gitignore contains '.rts2_cache_esm' (#149) 98cf1db
  • https://github.com/jaredpalmer/tsdx/compare/v0.7.1...v0.7.2
v0.7.1
jaredpalmerjaredpalmerยท7y agoยทJune 18, 2019
GitHub

๐Ÿ“ฆ Patch

  • Fixed the module field in templates to reflect the new name of the ESM output bundle.
  • Commits
  • HOTFIX: Fix module field in template pkg.json ab22779
  • https://github.com/jaredpalmer/tsdx/compare/v0.7.0...v0.7.1
v0.7.0
jaredpalmerjaredpalmerยท7y agoยทJune 18, 2019
GitHub

๐Ÿ’ฅ Breaking Changes ๐Ÿšจ

  • TSDX will no longer build a UMD bundle by default, you now must specify it using the `--format=umd,esm,cjs`
  • Renamed `es` format to `esm`. So `--format=es` -> `--format=esm`. In addition, the ESM output bundle is now named `<packagename>.esm.js`, so update your `package.json` `module` field accordingly.
  • ```diff
  • {
  • "name": "formik",
  • "main":"dist/index.js",
  • "module": "dist/formik.es.production.js",
  • + "module": "dist/formik.esm.js",
  • + 5 more

๐Ÿ“ฆ Improvements โœจ

  • Builds will be much faster by default since TSDX no longer builds UMD by default.
  • New spiffy ascii art when bootstrapping a new project
  • The react example now aliases the profiler build of react-dom so you can more easily do perf analysis and profiling.
  • Commits
  • strip package scope in safePackageName function (#146) 4422366
  • No env specific bundle for ESM (#142) 0f9d964
  • Don't depend on specific TS version (#147) 830e104
  • Merge pull request #145 from quentin-sommer/patch-1 2fb7e05
  • + 9 more
v0.6.1
jaredpalmerjaredpalmerยท7y agoยทMay 31, 2019
GitHub

โœจ What's New?

  • Add ability to specify custom tsconfig.json by passing `--tsconfig` flag

๐Ÿ› Bugfixes

  • Fixed `@babel/preset-env` resolution
  • Commits
  • Use `require.resolve` for `@babel/preset-env` 823acc9
  • feat(custom-tsconfig): Add ability to specify custom tsconfig.json (#124) 22ee1d0
  • Fix React template .gitignore (#123) 8d9d478
  • Document react template usage with lerna (#119) 2567ff8
  • https://github.com/jaredpalmer/tsdx/compare/v0.6.0...v0.6.1
v0.6.0
jaredpalmerjaredpalmerยท7y agoยทMay 29, 2019
GitHub

๐Ÿ“ฆ Improvements

  • Better transpilation via babel-preset-env and a few generator plugins.
  • Fixed shebang woes so making CLI's should work again
  • Commits
  • Better compilation via Babel (#117) b6492a1
  • @babel/preset-env (#102) 988cc1f
  • https://github.com/jaredpalmer/tsdx/compare/v0.5.12...v0.6.0
v0.5.12
jaredpalmerjaredpalmerยท7y agoยทMay 28, 2019
GitHub

๐Ÿ› Bugfix

  • Make `es5` the default target for typescript.
  • Commits
  • Remove esnext target override from ts rollup config. Make es5 the default target. (#111) e06d690
  • Update CONTRIBUTING.md e040514
  • Update CONTRIBUTING.md 9cc322e
  • Create CONTRIBUTING.md (#108) 779e156
  • Add prepare npm task 74c9a9d
  • https://github.com/jaredpalmer/tsdx/compare/v0.5.11...v0.5.12
v0.5.11
jaredpalmerjaredpalmerยท7y agoยทMay 16, 2019
GitHub

๐Ÿ“‹ Changes

  • Cosmetic change 57cb370
v0.5.10
jaredpalmerjaredpalmerยท7y agoยทMay 16, 2019
GitHub

๐Ÿ“‹ Changes

  • Fix rollup config 71817a3
  • Turn off lodash replacement in cjs af526a5
  • add initial React user guide (#74) f01da2e
  • document rollup config treeshaking (#98) 73daf23
  • fix minor typo d98c6df
  • Document some of the optimizations (#97) 71212dd
v0.5.9
jaredpalmerjaredpalmerยท7y agoยทMay 10, 2019
GitHub

๐Ÿ“‹ Changes

  • Added `build` npm task to example
  • Fixed babel optimizations!
  • Explicitly specify ts and tsx extensions in babel options (#96) 6512b46
  • Merge pull request #93 from slorber/patch-1 517b8fa
  • add "yarn build" for example 8033699