Releases: google/gts
gts v3.0.2
gts v3.0.1
gts v3.0.0
⚠ BREAKING CHANGES
Features
- Add TypeScript v4 support (#551) (0883956)
- change default
check
tolint
(#570) (c527b66) - generate .eslintignore when running init (#521) (8bce036)
Bug Fixes
- add build/.eslintrc.json to files field (#553) (3b516ad)
- deps: require TypeScript 4.x (#565) (cbc5267)
- deps: update dependency update-notifier to v5 (#574) (9a882bf)
- deps: update typescript-eslint monorepo to v2.34.0 (#509) (998a4ac)
- deps: update typescript-eslint monorepo to v3 (major) (#528) (e22e173)
- deps: update typescript-eslint monorepo to v4 (#556) (54148df)
- better error message for broken tsconfig.json (#501) (0c17a76)
- prohibit calls for it.only and describe.only (#499) (071c33c)
gts v2.0.2
gts v2.0.1
gts v2.0.0
⚠ BREAKING CHANGES ⚠
This is a major rewrite of the tool. Based on community guidance, we've switched from using tslint to eslint. Please read all of the steps below to upgrade.
Configuring eslint
With the shift to eslint
, gts
now will format and lint JavaScript as well as TypeScript. Upgrading will require a number of manual steps. To format JavaScript and TypeScript, you can run:
$ npx gts fix
To specify only TypeScript:
$ npx gts fix '**/*.ts'
Delete tslint.json
This file is no longer used, and can lead to confusion.
Create a .eslintrc.json
Now that we're using eslint, you need to extend the eslint configuration baked into the module. Create a new file named .eslintrc.json
, and paste the following:
{
"extends": "./node_modules/gts"
}
Create a .eslintignore
The .eslintignore
file lets you ignore specific directories. This tool now lints and formats JavaScript, so it's really important to ignore your build directory! Here is an example of a .eslintignore
file:
**/node_modules
build/
Create a .prettierrc.js
The formatting rules in gts
need to be extended. Create a file named .prettierrc.js
, and add the following:
module.exports = {
...require('gts/.prettierrc.json')
}
Rule changes
The underlying linter was changed, so naturally there are going to be a variety of rule changes along the way. To see the full list, check out .eslintrc.json.
Require Node.js 10.x and up
Node.js 8.x is now end of life - this module now requires Ndoe.js 10.x and up.
Features
- add the eol-last rule (#425) (50ebd4d)
- allow eslintrc to run over tsx files (#469) (a21db94)
- disable global rule for checking TODO comments (#459) (96aa84a)
- override require-atomic-updates (#468) (8105c93)
- prefer single quotes if possible (#475) (39a2705)
- use eslint instead of tslint (#400) (b3096fb)
Bug Fixes
- use .prettierrc.js (#437) (06efa84)
- deps: update dependency chalk to v4 (#477) (061d64e)
- deps: update dependency eslint-plugin-node to v11 (#426) (a394b7c)
- deps: update dependency execa to v4 (#427) (f42ef36)
- deps: update dependency prettier to v2 (#464) (20ef43d)
- disable no-use-before-define (#431) (dea2c22)
- deps: update dependency update-notifier to v4 (#403) (57393b7)
- deps: upgrade to meow 6.x (#423) (8f93d00)
- align back to the google style guide (#440) (8bd78c4)
- disable empty-function check (#467) (6455d7a)
- drop support for node 8 (#422) (888c686)
- emit .prettierrc.js with init (#462) (b114614)
- enable trailing comma (#470) (6518f58)
- include *.tsx and *.jsx in default fix command (#473) (0509780)
gts v1.1.2
gts v1.1.1
v1.1.0
Bug Fixes
- avoid conflicts between prettier and tslint (#348) (83cb107)
- npx command on Windows and make sure build/test work on Windows too (#306) (458be26), closes #2
- process less files in parallel preventing OOM errors (#369) (b48196d)
- deps: update dependency update-notifier to v3 (#339) (a6f9cfa)
Features
v1.0.0
This release contains breaking changes. Picking up this update most likely will cause a breaking change in your module. Take care when picking up this update.
Breaking Changes
- We have switched to prettier as the code formatting tool (#259).
gts run fix
should migrate your code over to the new style 💅. - This release drops support for Node 6 which will reach end-of-life in April 2019 (#256) 💀.
- This release defaults to ES2017 as the TypeScript code generation target. This means that the generated code needs a minimum of Node 8 to run. On the plus side this means that generated code would use native implementation of ES2017 features (e.g. async/await) rather than using poly-fills 🧬. This change is most likely a breaking change for your module. You can override this setting by customizing your
tsconfig.json
however. - The
tslint
configuration has been updated to pick up changes in the Google style guide🧐. - Assumes that target projects are using TypeScript 3.x+ 🎯.
Other features
- Support for yarn (#285)