Skip to content

Commit

Permalink
Merge branch 'master' into feat-init-declarations
Browse files Browse the repository at this point in the history
  • Loading branch information
bradzacher committed Apr 20, 2020
2 parents af0a091 + 369978e commit 53c4b3d
Show file tree
Hide file tree
Showing 104 changed files with 2,568 additions and 1,956 deletions.
7 changes: 5 additions & 2 deletions .github/workflows/ci.yml
Expand Up @@ -93,10 +93,13 @@ jobs:
- name: Check code formatting
run: yarn format-check

- name: Run linting
- name: Lint code
run: yarn lint

- name: Validate spelling
- name: Lint markdown
run: yarn lint:markdown

- name: Check spelling
run: yarn check:spelling

integration_tests:
Expand Down
95 changes: 95 additions & 0 deletions .markdownlint.json
@@ -0,0 +1,95 @@
{
"default": false,

// MD001/heading-increment/header-increment - Heading levels should only increment by one level at a time
"MD001": true,
// MD002/first-heading-h1/first-header-h1 - First heading should be a top level heading
"MD002": false,
// MD003/heading-style/header-style - Heading style
"MD003": false,
// MD004/ul-style - Unordered list style
"MD004": false,
// MD005/list-indent - Inconsistent indentation for list items at the same level
"MD005": false,
// MD006/ul-start-left - Consider starting bulleted lists at the beginning of the line
"MD006": false,
// MD007/ul-indent - Unordered list indentation
"MD007": false,
// MD009/no-trailing-spaces - Trailing spaces
"MD009": false,
// MD010/no-hard-tabs - Hard tabs
"MD010": false,
// MD011/no-reversed-links - Reversed link syntax
"MD011": true,
// MD012/no-multiple-blanks - Multiple consecutive blank lines
"MD012": false,
// MD013/line-length - Line length
"MD013": { "line_length": 99999 }, // no line length
// MD014/commands-show-output - Dollar signs used before commands without showing output
"MD014": false,
// MD018/no-missing-space-atx - No space after hash on atx style heading
"MD018": true,
// MD019/no-multiple-space-atx - Multiple spaces after hash on atx style heading
"MD019": false,
// MD020/no-missing-space-closed-atx - No space inside hashes on closed atx style heading
"MD020": false,
// MD021/no-multiple-space-closed-atx - Multiple spaces inside hashes on closed atx style heading
"MD021": false,
// MD022/blanks-around-headings/blanks-around-headers - Headings should be surrounded by blank lines
"MD022": true,
// MD023/heading-start-left/header-start-left - Headings must start at the beginning of the line
"MD023": false,
// MD024/no-duplicate-heading/no-duplicate-header - Multiple headings with the same content
"MD024": false,
// MD025/single-title/single-h1 - Multiple top level headings in the same document
"MD025": true,
// MD026/no-trailing-punctuation - Trailing punctuation in heading
"MD026": { "punctuation": ".,;:!。,;:!?" }, // specifically allow "?"
// MD027/no-multiple-space-blockquote - Multiple spaces after blockquote symbol
"MD027": false,
// MD028/no-blanks-blockquote - Blank line inside blockquote
"MD028": true,
// MD029/ol-prefix - Ordered list item prefix
"MD029": false,
// MD030/list-marker-space - Spaces after list markers
"MD030": true,
// MD031/blanks-around-fences - Fenced code blocks should be surrounded by blank lines
"MD031": false,
// MD032/blanks-around-lists - Lists should be surrounded by blank lines
"MD032": false,
// MD033/no-inline-html - Inline HTML
"MD033": { "allowed_elements": ["a", "img", "br", "sup", "h1", "p"] },
// MD034/no-bare-urls - Bare URL used
"MD034": false,
// MD035/hr-style - Horizontal rule style
"MD035": false,
// MD036/no-emphasis-as-heading/no-emphasis-as-header - Emphasis used instead of a heading
"MD036": true,
// MD037/no-space-in-emphasis - Spaces inside emphasis markers
"MD037": true,
// MD038/no-space-in-code - Spaces inside code span elements
"MD038": true,
// MD039/no-space-in-links - Spaces inside link text
"MD039": true,
// MD040/fenced-code-language - Fenced code blocks should have a language specified
"MD040": true,
// MD041/first-line-heading/first-line-h1 - First line in file should be a top level heading
"MD041": false, // would love to do this, but our README files use `<h1 center>` as their heading
// MD042/no-empty-links - No empty links
"MD042": true,
// MD043/required-headings/required-headers - Required heading structure
"MD043": false,
// MD044/proper-names - Proper names should have the correct capitalization
"MD044": {
"names": ["JavaScript", "TypeScript", "TSLint", "ESLint"],
"code_blocks": false
},
// MD045/no-alt-text - Images should have alternate text (alt text)
"MD045": true,
// MD046/code-block-style - Code block style
"MD046": { "style": "fenced" },
// MD047/single-trailing-newline - Files should end with a single newline character
"MD047": false,
// MD048/code-fence-style - Code fence style
"MD048": { "style": "backtick" }
}
3 changes: 3 additions & 0 deletions .markdownlintignore
@@ -0,0 +1,3 @@
node_modules
CHANGELOG.md
tests/integration/fixtures/markdown
3 changes: 2 additions & 1 deletion .vscode/extensions.json
Expand Up @@ -3,7 +3,8 @@
"esbenp.prettier-vscode",
"dbaeumer.vscode-eslint",
"editorconfig.editorconfig",
"streetsidesoftware.code-spell-checker"
"streetsidesoftware.code-spell-checker",
"davidanson.vscode-markdownlint"
],
"unwantedRecommendations": ["hookyqr.beautify", "dbaeumer.jshint"]
}
2 changes: 1 addition & 1 deletion .vscode/settings.json
Expand Up @@ -17,5 +17,5 @@
"typescript.preferences.importModuleSpecifier": "auto",
"javascript.preferences.quoteStyle": "single",
"typescript.preferences.quoteStyle": "single",
"editor.defaultFormatter": "esbenp.prettier-vscode"
"editor.defaultFormatter": "esbenp.prettier-vscode",
}
29 changes: 29 additions & 0 deletions CHANGELOG.md
Expand Up @@ -3,6 +3,35 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

# [2.28.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.27.0...v2.28.0) (2020-04-13)


### Bug Fixes

* **eslint-plugin:** [method-signature-style] handle multiline params ([#1861](https://github.com/typescript-eslint/typescript-eslint/issues/1861)) ([5832a86](https://github.com/typescript-eslint/typescript-eslint/commit/5832a8643bbe174ec02df5966bb333e506e45f5d))
* **eslint-plugin:** [no-empty-interface] use suggestion fixer for ambient contexts ([#1880](https://github.com/typescript-eslint/typescript-eslint/issues/1880)) ([62b2278](https://github.com/typescript-eslint/typescript-eslint/commit/62b2278aec0011c93eae17bed8b278114d3379a2))
* **eslint-plugin:** [unbound-method] false positive on property function initializer ([#1890](https://github.com/typescript-eslint/typescript-eslint/issues/1890)) ([f1c3b18](https://github.com/typescript-eslint/typescript-eslint/commit/f1c3b18f7aadc81f7dca7aa32aa1a8fe424e04e7))
* **eslint-plugin:** [unbound-method] ignore assignments _to_ methods ([#1736](https://github.com/typescript-eslint/typescript-eslint/issues/1736)) ([6b4680b](https://github.com/typescript-eslint/typescript-eslint/commit/6b4680b6e7343d9d98fa1de170f387a36d98b73e))
* **eslint-plugin:** no-empty-interface autofix ([#1865](https://github.com/typescript-eslint/typescript-eslint/issues/1865)) ([829a2f7](https://github.com/typescript-eslint/typescript-eslint/commit/829a2f728f876d356908e2338c2d6620e58f9943)), closes [#1864](https://github.com/typescript-eslint/typescript-eslint/issues/1864)
* **eslint-plugin:** use `isTypeArrayTypeOrUnionOfArrayTypes` util for checking if type is array ([#1728](https://github.com/typescript-eslint/typescript-eslint/issues/1728)) ([05030f8](https://github.com/typescript-eslint/typescript-eslint/commit/05030f8d2bd5a50e95053bc61380891da71cc567))


### Features

* **eslint-plugin:** [ban-ts-comment] support `ts-expect-error` ([#1706](https://github.com/typescript-eslint/typescript-eslint/issues/1706)) ([469cff3](https://github.com/typescript-eslint/typescript-eslint/commit/469cff332c041f38f60de052769287342455cff1))
* **eslint-plugin:** [consistent-type-assertions] always allow `const` assertions ([#1713](https://github.com/typescript-eslint/typescript-eslint/issues/1713)) ([af2c00d](https://github.com/typescript-eslint/typescript-eslint/commit/af2c00de62f7e31eaeb88996ebf3f330cc8473b9))
* **eslint-plugin:** [explicit-function-return-type] add option to allow concise arrows that start with void ([#1732](https://github.com/typescript-eslint/typescript-eslint/issues/1732)) ([2e9c202](https://github.com/typescript-eslint/typescript-eslint/commit/2e9c2028a8a0b226e0f87d4bcc997fa259ca3ebd))
* **eslint-plugin:** [explicit-module-boundary-types] add optio… ([#1778](https://github.com/typescript-eslint/typescript-eslint/issues/1778)) ([3eee804](https://github.com/typescript-eslint/typescript-eslint/commit/3eee804461d017ea6189cd7f64fcd473623684b4))
* **eslint-plugin:** [no-base-to-string] add option to ignore tagged templates ([#1763](https://github.com/typescript-eslint/typescript-eslint/issues/1763)) ([f5edb99](https://github.com/typescript-eslint/typescript-eslint/commit/f5edb9938c33f8b68f026eba00db3abe9359ced3))
* **eslint-plugin:** [restrict-template-expressions] add option `allowAny` ([#1762](https://github.com/typescript-eslint/typescript-eslint/issues/1762)) ([d44c0f9](https://github.com/typescript-eslint/typescript-eslint/commit/d44c0f9bed2404ca00b020b35fd825929e213398))
* **eslint-plugin:** add rule `prefer-reduce-type-parameter` ([#1707](https://github.com/typescript-eslint/typescript-eslint/issues/1707)) ([c92d240](https://github.com/typescript-eslint/typescript-eslint/commit/c92d240e49113779053eac32038382b282812afc))
* **eslint-plugin:** add rule `prefer-ts-expect-error` ([#1705](https://github.com/typescript-eslint/typescript-eslint/issues/1705)) ([7021f21](https://github.com/typescript-eslint/typescript-eslint/commit/7021f2151a25db2a8edf17e06cd6f21e90761ec8))
* **eslint-plugin:** add rule no-unsafe-assignment ([#1694](https://github.com/typescript-eslint/typescript-eslint/issues/1694)) ([a49b860](https://github.com/typescript-eslint/typescript-eslint/commit/a49b860cbbb2c7d718b99f561e2fb6eaadf16f17))





# [2.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.26.0...v2.27.0) (2020-04-06)


Expand Down
3 changes: 2 additions & 1 deletion CONTRIBUTING.md
Expand Up @@ -50,6 +50,7 @@ We have a sophisticated CI process setup which gets run on every PR. You must pa
- Coverage reports should automatically be generated locally, and the `codecov` bot should also comment on your PR with the percentage, as well as links to the line-by-line coverage of each file touched by your PR.
- Ensure you have no lint errors.
- You can run `yarn lint` in any package or in the root.
- You can run `yarn lint:markdown` in the root.
- If you have made changes to any markdown documentation, ensure there are no spelling errors
- You can run `yarn check:spelling` in the root.
- Or if you are using vscode, you can use [`Code Spell Checker`](https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker) plugin.
Expand All @@ -60,7 +61,7 @@ We have a sophisticated CI process setup which gets run on every PR. You must pa

Once your changes are ready, you can raise a PR. The title of your PR should match the following format:

```
```text
<tag>(<package>): <short description>
```

Expand Down
4 changes: 2 additions & 2 deletions docs/getting-started/README.md
Expand Up @@ -6,6 +6,6 @@ The goal of these docs are to give you a quick overview of the project and all o

The docs are broken down into the following categories:

### [I want to lint my TypeScript codebase.](./linting/README.md)
## [I want to lint my TypeScript codebase.](./linting/README.md)

### [(TODO) I want to write an ESLint plugin in TypeScript.](./plugin-development/README.md)
## [(TODO) I want to write an ESLint plugin in TypeScript.](./plugin-development/README.md)
2 changes: 1 addition & 1 deletion lerna.json
@@ -1,5 +1,5 @@
{
"version": "2.27.0",
"version": "2.28.0",
"npmClient": "yarn",
"useWorkspaces": true,
"stream": true
Expand Down
3 changes: 3 additions & 0 deletions package.json
Expand Up @@ -30,6 +30,8 @@
"kill-integration-test-containers": "docker-compose -f tests/integration/docker-compose.yml down -v --rmi local",
"lint": "eslint . --ext .js,.ts",
"lint-fix": "eslint . --ext .js,.ts --fix",
"lint:markdown": "markdownlint '**/*.md' --config=.markdownlint.json --ignore-path=.markdownlintignore",
"lint:markdown:fix": "lint:markdown --fix",
"pre-commit": "yarn lint-staged",
"pre-push": "yarn format-check",
"postinstall": "lerna bootstrap && yarn build && lerna link",
Expand Down Expand Up @@ -70,6 +72,7 @@
"jest": "^25.1.0",
"lerna": "^3.20.2",
"lint-staged": "^9.4.3",
"markdownlint-cli": "^0.22.0",
"prettier": "^1.19.1",
"ts-jest": "^25.0.0",
"ts-node": "^8.5.0",
Expand Down
8 changes: 8 additions & 0 deletions packages/eslint-plugin-internal/CHANGELOG.md
Expand Up @@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

# [2.28.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.27.0...v2.28.0) (2020-04-13)

**Note:** Version bump only for package @typescript-eslint/eslint-plugin-internal





# [2.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.26.0...v2.27.0) (2020-04-06)


Expand Down
4 changes: 2 additions & 2 deletions packages/eslint-plugin-internal/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/eslint-plugin-internal",
"version": "2.27.0",
"version": "2.28.0",
"private": true,
"main": "dist/index.js",
"scripts": {
Expand All @@ -12,7 +12,7 @@
"typecheck": "tsc -p tsconfig.json --noEmit"
},
"dependencies": {
"@typescript-eslint/experimental-utils": "2.27.0",
"@typescript-eslint/experimental-utils": "2.28.0",
"prettier": "*"
}
}
8 changes: 8 additions & 0 deletions packages/eslint-plugin-tslint/CHANGELOG.md
Expand Up @@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

# [2.28.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.27.0...v2.28.0) (2020-04-13)

**Note:** Version bump only for package @typescript-eslint/eslint-plugin-tslint





# [2.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.26.0...v2.27.0) (2020-04-06)

**Note:** Version bump only for package @typescript-eslint/eslint-plugin-tslint
Expand Down
6 changes: 3 additions & 3 deletions packages/eslint-plugin-tslint/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/eslint-plugin-tslint",
"version": "2.27.0",
"version": "2.28.0",
"main": "dist/index.js",
"typings": "src/index.ts",
"description": "TSLint wrapper plugin for ESLint",
Expand Down Expand Up @@ -31,7 +31,7 @@
"typecheck": "tsc -p tsconfig.json --noEmit"
},
"dependencies": {
"@typescript-eslint/experimental-utils": "2.27.0",
"@typescript-eslint/experimental-utils": "2.28.0",
"lodash": "^4.17.15"
},
"peerDependencies": {
Expand All @@ -41,6 +41,6 @@
},
"devDependencies": {
"@types/lodash": "^4.14.149",
"@typescript-eslint/parser": "2.27.0"
"@typescript-eslint/parser": "2.28.0"
}
}
29 changes: 29 additions & 0 deletions packages/eslint-plugin/CHANGELOG.md
Expand Up @@ -3,6 +3,35 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

# [2.28.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.27.0...v2.28.0) (2020-04-13)


### Bug Fixes

* **eslint-plugin:** [method-signature-style] handle multiline params ([#1861](https://github.com/typescript-eslint/typescript-eslint/issues/1861)) ([5832a86](https://github.com/typescript-eslint/typescript-eslint/commit/5832a8643bbe174ec02df5966bb333e506e45f5d))
* **eslint-plugin:** [no-empty-interface] use suggestion fixer for ambient contexts ([#1880](https://github.com/typescript-eslint/typescript-eslint/issues/1880)) ([62b2278](https://github.com/typescript-eslint/typescript-eslint/commit/62b2278aec0011c93eae17bed8b278114d3379a2))
* **eslint-plugin:** [unbound-method] false positive on property function initializer ([#1890](https://github.com/typescript-eslint/typescript-eslint/issues/1890)) ([f1c3b18](https://github.com/typescript-eslint/typescript-eslint/commit/f1c3b18f7aadc81f7dca7aa32aa1a8fe424e04e7))
* **eslint-plugin:** [unbound-method] ignore assignments _to_ methods ([#1736](https://github.com/typescript-eslint/typescript-eslint/issues/1736)) ([6b4680b](https://github.com/typescript-eslint/typescript-eslint/commit/6b4680b6e7343d9d98fa1de170f387a36d98b73e))
* **eslint-plugin:** no-empty-interface autofix ([#1865](https://github.com/typescript-eslint/typescript-eslint/issues/1865)) ([829a2f7](https://github.com/typescript-eslint/typescript-eslint/commit/829a2f728f876d356908e2338c2d6620e58f9943)), closes [#1864](https://github.com/typescript-eslint/typescript-eslint/issues/1864)
* **eslint-plugin:** use `isTypeArrayTypeOrUnionOfArrayTypes` util for checking if type is array ([#1728](https://github.com/typescript-eslint/typescript-eslint/issues/1728)) ([05030f8](https://github.com/typescript-eslint/typescript-eslint/commit/05030f8d2bd5a50e95053bc61380891da71cc567))


### Features

* **eslint-plugin:** [ban-ts-comment] support `ts-expect-error` ([#1706](https://github.com/typescript-eslint/typescript-eslint/issues/1706)) ([469cff3](https://github.com/typescript-eslint/typescript-eslint/commit/469cff332c041f38f60de052769287342455cff1))
* **eslint-plugin:** [consistent-type-assertions] always allow `const` assertions ([#1713](https://github.com/typescript-eslint/typescript-eslint/issues/1713)) ([af2c00d](https://github.com/typescript-eslint/typescript-eslint/commit/af2c00de62f7e31eaeb88996ebf3f330cc8473b9))
* **eslint-plugin:** [explicit-function-return-type] add option to allow concise arrows that start with void ([#1732](https://github.com/typescript-eslint/typescript-eslint/issues/1732)) ([2e9c202](https://github.com/typescript-eslint/typescript-eslint/commit/2e9c2028a8a0b226e0f87d4bcc997fa259ca3ebd))
* **eslint-plugin:** [explicit-module-boundary-types] add optio… ([#1778](https://github.com/typescript-eslint/typescript-eslint/issues/1778)) ([3eee804](https://github.com/typescript-eslint/typescript-eslint/commit/3eee804461d017ea6189cd7f64fcd473623684b4))
* **eslint-plugin:** [no-base-to-string] add option to ignore tagged templates ([#1763](https://github.com/typescript-eslint/typescript-eslint/issues/1763)) ([f5edb99](https://github.com/typescript-eslint/typescript-eslint/commit/f5edb9938c33f8b68f026eba00db3abe9359ced3))
* **eslint-plugin:** [restrict-template-expressions] add option `allowAny` ([#1762](https://github.com/typescript-eslint/typescript-eslint/issues/1762)) ([d44c0f9](https://github.com/typescript-eslint/typescript-eslint/commit/d44c0f9bed2404ca00b020b35fd825929e213398))
* **eslint-plugin:** add rule `prefer-reduce-type-parameter` ([#1707](https://github.com/typescript-eslint/typescript-eslint/issues/1707)) ([c92d240](https://github.com/typescript-eslint/typescript-eslint/commit/c92d240e49113779053eac32038382b282812afc))
* **eslint-plugin:** add rule `prefer-ts-expect-error` ([#1705](https://github.com/typescript-eslint/typescript-eslint/issues/1705)) ([7021f21](https://github.com/typescript-eslint/typescript-eslint/commit/7021f2151a25db2a8edf17e06cd6f21e90761ec8))
* **eslint-plugin:** add rule no-unsafe-assignment ([#1694](https://github.com/typescript-eslint/typescript-eslint/issues/1694)) ([a49b860](https://github.com/typescript-eslint/typescript-eslint/commit/a49b860cbbb2c7d718b99f561e2fb6eaadf16f17))





# [2.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.26.0...v2.27.0) (2020-04-06)


Expand Down

0 comments on commit 53c4b3d

Please sign in to comment.