build: update tslint to latest version (#35800)

The old version we currently use does not properly implement the
option to exclude files from within the `tslint.json` file.

PR Close #35800
This commit is contained in:
Paul Gschwendtner 2020-03-02 19:00:50 +01:00 committed by atscott
parent 93fc392549
commit 5349e46b46
8 changed files with 47 additions and 37 deletions

View File

@ -132,7 +132,7 @@
"terser": "^4.4.0", "terser": "^4.4.0",
"tsickle": "0.38.0", "tsickle": "0.38.0",
"tslib": "^1.10.0", "tslib": "^1.10.0",
"tslint": "5.7.0", "tslint": "6.0.0",
"typescript": "~3.7.4", "typescript": "~3.7.4",
"xhr2": "0.1.4", "xhr2": "0.1.4",
"yaml": "^1.7.2", "yaml": "^1.7.2",
@ -173,7 +173,7 @@
"rewire": "2.5.2", "rewire": "2.5.2",
"sauce-connect": "https://saucelabs.com/downloads/sc-4.5.1-linux.tar.gz", "sauce-connect": "https://saucelabs.com/downloads/sc-4.5.1-linux.tar.gz",
"semver": "^6.3.0", "semver": "^6.3.0",
"tslint-eslint-rules": "4.1.1", "tslint-eslint-rules": "5.4.0",
"tslint-no-toplevel-property-access": "0.0.2", "tslint-no-toplevel-property-access": "0.0.2",
"tsutils": "2.27.2", "tsutils": "2.27.2",
"universal-analytics": "0.4.15", "universal-analytics": "0.4.15",

View File

@ -28,8 +28,7 @@ describe('Google3 dynamic queries TSLint rule', () => {
function runTSLint(fix = true) { function runTSLint(fix = true) {
const program = Linter.createProgram(join(tmpDir, 'tsconfig.json')); const program = Linter.createProgram(join(tmpDir, 'tsconfig.json'));
const linter = new Linter({fix, rulesDirectory: [rulesDirectory]}, program); const linter = new Linter({fix, rulesDirectory: [rulesDirectory]}, program);
const config = Configuration.parseConfigFile( const config = Configuration.parseConfigFile({rules: {'dynamic-queries': true}});
{rules: {'dynamic-queries': true}, linterOptions: {typeCheck: true}});
program.getRootFileNames().forEach(fileName => { program.getRootFileNames().forEach(fileName => {
linter.lint(fileName, program.getSourceFile(fileName) !.getFullText(), config); linter.lint(fileName, program.getSourceFile(fileName) !.getFullText(), config);

View File

@ -38,8 +38,7 @@ describe('Google3 explicitQueryTiming TSLint rule', () => {
function runTSLint(fix = true) { function runTSLint(fix = true) {
const program = Linter.createProgram(join(tmpDir, 'tsconfig.json')); const program = Linter.createProgram(join(tmpDir, 'tsconfig.json'));
const linter = new Linter({fix, rulesDirectory: [rulesDirectory]}, program); const linter = new Linter({fix, rulesDirectory: [rulesDirectory]}, program);
const config = Configuration.parseConfigFile( const config = Configuration.parseConfigFile({rules: {'explicit-query-timing': true}});
{rules: {'explicit-query-timing': true}, linterOptions: {typeCheck: true}});
program.getRootFileNames().forEach(fileName => { program.getRootFileNames().forEach(fileName => {
linter.lint(fileName, program.getSourceFile(fileName) !.getFullText(), config); linter.lint(fileName, program.getSourceFile(fileName) !.getFullText(), config);

View File

@ -29,8 +29,7 @@ describe('Google3 missing injectable tslint rule', () => {
function runTSLint(fix = true) { function runTSLint(fix = true) {
const program = Linter.createProgram(join(tmpDir, 'tsconfig.json')); const program = Linter.createProgram(join(tmpDir, 'tsconfig.json'));
const linter = new Linter({fix, rulesDirectory: [rulesDirectory]}, program); const linter = new Linter({fix, rulesDirectory: [rulesDirectory]}, program);
const config = Configuration.parseConfigFile( const config = Configuration.parseConfigFile({rules: {'no-missing-injectable': true}});
{rules: {'no-missing-injectable': true}, linterOptions: {typeCheck: true}});
program.getRootFileNames().forEach(fileName => { program.getRootFileNames().forEach(fileName => {
linter.lint(fileName, program.getSourceFile(fileName) !.getFullText(), config); linter.lint(fileName, program.getSourceFile(fileName) !.getFullText(), config);

View File

@ -30,8 +30,8 @@ describe('Google3 noTemplateVariableAssignment TSLint rule', () => {
function runTSLint() { function runTSLint() {
const program = Linter.createProgram(join(tmpDir, 'tsconfig.json')); const program = Linter.createProgram(join(tmpDir, 'tsconfig.json'));
const linter = new Linter({fix: false, rulesDirectory: [rulesDirectory]}, program); const linter = new Linter({fix: false, rulesDirectory: [rulesDirectory]}, program);
const config = Configuration.parseConfigFile( const config =
{rules: {'no-template-variable-assignment': true}, linterOptions: {typeCheck: true}}); Configuration.parseConfigFile({rules: {'no-template-variable-assignment': true}});
program.getRootFileNames().forEach(fileName => { program.getRootFileNames().forEach(fileName => {
linter.lint(fileName, program.getSourceFile(fileName) !.getFullText(), config); linter.lint(fileName, program.getSourceFile(fileName) !.getFullText(), config);

View File

@ -43,8 +43,7 @@ describe('Google3 Renderer to Renderer2 TSLint rule', () => {
function runTSLint(fix: boolean) { function runTSLint(fix: boolean) {
const program = Linter.createProgram(join(tmpDir, 'tsconfig.json')); const program = Linter.createProgram(join(tmpDir, 'tsconfig.json'));
const linter = new Linter({fix, rulesDirectory: [rulesDirectory]}, program); const linter = new Linter({fix, rulesDirectory: [rulesDirectory]}, program);
const config = Configuration.parseConfigFile( const config = Configuration.parseConfigFile({rules: {'renderer-to-renderer2': true}});
{rules: {'renderer-to-renderer2': true}, linterOptions: {typeCheck: true}});
program.getRootFileNames().forEach(fileName => { program.getRootFileNames().forEach(fileName => {
linter.lint(fileName, program.getSourceFile(fileName) !.getFullText(), config); linter.lint(fileName, program.getSourceFile(fileName) !.getFullText(), config);

View File

@ -30,7 +30,6 @@ describe('Google3 undecorated classes with decorated fields TSLint rule', () =>
const linter = new Linter({fix, rulesDirectory: [rulesDirectory]}, program); const linter = new Linter({fix, rulesDirectory: [rulesDirectory]}, program);
const config = Configuration.parseConfigFile({ const config = Configuration.parseConfigFile({
rules: {'undecorated-classes-with-decorated-fields': true}, rules: {'undecorated-classes-with-decorated-fields': true},
linterOptions: {typeCheck: true}
}); });
program.getRootFileNames().forEach(fileName => { program.getRootFileNames().forEach(fileName => {

View File

@ -3161,7 +3161,7 @@ buffers@~0.1.1:
resolved "https://registry.yarnpkg.com/buffers/-/buffers-0.1.1.tgz#b24579c3bed4d6d396aeee6d9a8ae7f5482ab7bb" resolved "https://registry.yarnpkg.com/buffers/-/buffers-0.1.1.tgz#b24579c3bed4d6d396aeee6d9a8ae7f5482ab7bb"
integrity sha1-skV5w77U1tOWru5tmorn9Ugqt7s= integrity sha1-skV5w77U1tOWru5tmorn9Ugqt7s=
builtin-modules@^1.0.0: builtin-modules@^1.0.0, builtin-modules@^1.1.1:
version "1.1.1" version "1.1.1"
resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=
@ -3402,7 +3402,7 @@ chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3:
strip-ansi "^3.0.0" strip-ansi "^3.0.0"
supports-color "^2.0.0" supports-color "^2.0.0"
chalk@^2.0.0, chalk@^2.0.1, chalk@^2.3.1, chalk@^2.4.1, chalk@^2.4.2: chalk@^2.0.0, chalk@^2.0.1, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.4.1, chalk@^2.4.2:
version "2.4.2" version "2.4.2"
resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
@ -3836,7 +3836,7 @@ commander@2.9.0:
dependencies: dependencies:
graceful-readlink ">= 1.0.0" graceful-readlink ">= 1.0.0"
commander@^2.13.0, commander@^2.16.0, commander@^2.20.0, commander@^2.8.1, commander@~2.20.3: commander@^2.12.1, commander@^2.13.0, commander@^2.16.0, commander@^2.20.0, commander@^2.8.1, commander@~2.20.3:
version "2.20.3" version "2.20.3"
resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
@ -5027,7 +5027,7 @@ dns-txt@^2.0.2:
dependencies: dependencies:
buffer-indexof "^1.0.0" buffer-indexof "^1.0.0"
doctrine@^0.7.2: doctrine@0.7.2:
version "0.7.2" version "0.7.2"
resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-0.7.2.tgz#7cb860359ba3be90e040b26b729ce4bfa654c523" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-0.7.2.tgz#7cb860359ba3be90e040b26b729ce4bfa654c523"
integrity sha1-fLhgNZujvpDgQLJrcpzkv6ZUxSM= integrity sha1-fLhgNZujvpDgQLJrcpzkv6ZUxSM=
@ -14613,40 +14613,48 @@ tslib@1.10.0, tslib@^1.10.0, tslib@^1.9.0:
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a"
integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==
tslib@^1.0.0, tslib@^1.7.1, tslib@^1.8.1: tslib@1.9.0:
version "1.9.0"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.0.tgz#e37a86fda8cbbaf23a057f473c9f4dc64e5fc2e8"
integrity sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ==
tslib@^1.8.1:
version "1.9.3" version "1.9.3"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286"
integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==
tslint-eslint-rules@4.1.1: tslint-eslint-rules@5.4.0:
version "4.1.1" version "5.4.0"
resolved "https://registry.yarnpkg.com/tslint-eslint-rules/-/tslint-eslint-rules-4.1.1.tgz#7c30e7882f26bc276bff91d2384975c69daf88ba" resolved "https://registry.yarnpkg.com/tslint-eslint-rules/-/tslint-eslint-rules-5.4.0.tgz#e488cc9181bf193fe5cd7bfca213a7695f1737b5"
integrity sha1-fDDniC8mvCdr/5HSOEl1xp2viLo= integrity sha512-WlSXE+J2vY/VPgIcqQuijMQiel+UtmXS+4nvK4ZzlDiqBfXse8FAvkNnTcYhnQyOTW5KFM+uRRGXxYhFpuBc6w==
dependencies: dependencies:
doctrine "^0.7.2" doctrine "0.7.2"
tslib "^1.0.0" tslib "1.9.0"
tsutils "^1.4.0" tsutils "^3.0.0"
tslint-no-toplevel-property-access@0.0.2: tslint-no-toplevel-property-access@0.0.2:
version "0.0.2" version "0.0.2"
resolved "https://registry.yarnpkg.com/tslint-no-toplevel-property-access/-/tslint-no-toplevel-property-access-0.0.2.tgz#c9b19bbd525ea7b8577e5ada601cc8625b4ed004" resolved "https://registry.yarnpkg.com/tslint-no-toplevel-property-access/-/tslint-no-toplevel-property-access-0.0.2.tgz#c9b19bbd525ea7b8577e5ada601cc8625b4ed004"
integrity sha512-Oc+UUurlGLBkgeUSGxMoTpRUpaXsjqzQCEAYrYQyuU8330fi5FKlye5n53y87EJ24AlfdoxMPV7DJfFOADapfg== integrity sha512-Oc+UUurlGLBkgeUSGxMoTpRUpaXsjqzQCEAYrYQyuU8330fi5FKlye5n53y87EJ24AlfdoxMPV7DJfFOADapfg==
tslint@5.7.0: tslint@6.0.0:
version "5.7.0" version "6.0.0"
resolved "https://registry.yarnpkg.com/tslint/-/tslint-5.7.0.tgz#c25e0d0c92fa1201c2bc30e844e08e682b4f3552" resolved "https://registry.yarnpkg.com/tslint/-/tslint-6.0.0.tgz#1c0148beac4779924216302f192cdaa153618310"
integrity sha1-wl4NDJL6EgHCvDDoROCOaCtPNVI= integrity sha512-9nLya8GBtlFmmFMW7oXXwoXS1NkrccqTqAtwXzdPV9e2mqSEvCki6iHL/Fbzi5oqbugshzgGPk7KBb2qNP1DSA==
dependencies: dependencies:
babel-code-frame "^6.22.0" "@babel/code-frame" "^7.0.0"
colors "^1.1.2" builtin-modules "^1.1.1"
commander "^2.9.0" chalk "^2.3.0"
diff "^3.2.0" commander "^2.12.1"
diff "^4.0.1"
glob "^7.1.1" glob "^7.1.1"
js-yaml "^3.13.1"
minimatch "^3.0.4" minimatch "^3.0.4"
mkdirp "^0.5.1"
resolve "^1.3.2" resolve "^1.3.2"
semver "^5.3.0" semver "^5.3.0"
tslib "^1.7.1" tslib "^1.10.0"
tsutils "^2.8.1" tsutils "^2.29.0"
tslint@~5.1.0: tslint@~5.1.0:
version "5.1.0" version "5.1.0"
@ -14663,7 +14671,7 @@ tslint@~5.1.0:
semver "^5.3.0" semver "^5.3.0"
tsutils "^1.4.0" tsutils "^1.4.0"
tsutils@2.27.2, tsutils@^2.8.1: tsutils@2.27.2:
version "2.27.2" version "2.27.2"
resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.27.2.tgz#60ba88a23d6f785ec4b89c6e8179cac9b431f1c7" resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.27.2.tgz#60ba88a23d6f785ec4b89c6e8179cac9b431f1c7"
integrity sha512-qf6rmT84TFMuxAKez2pIfR8UCai49iQsfB7YWVjV1bKpy/d0PWT5rEOSM6La9PiHZ0k1RRZQiwVdVJfQ3BPHgg== integrity sha512-qf6rmT84TFMuxAKez2pIfR8UCai49iQsfB7YWVjV1bKpy/d0PWT5rEOSM6La9PiHZ0k1RRZQiwVdVJfQ3BPHgg==
@ -14675,7 +14683,14 @@ tsutils@^1.4.0:
resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-1.9.1.tgz#b9f9ab44e55af9681831d5f28d0aeeaf5c750cb0" resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-1.9.1.tgz#b9f9ab44e55af9681831d5f28d0aeeaf5c750cb0"
integrity sha1-ufmrROVa+WgYMdXyjQrur1x1DLA= integrity sha1-ufmrROVa+WgYMdXyjQrur1x1DLA=
tsutils@^3.17.1: tsutils@^2.29.0:
version "2.29.0"
resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.29.0.tgz#32b488501467acbedd4b85498673a0812aca0b99"
integrity sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==
dependencies:
tslib "^1.8.1"
tsutils@^3.0.0, tsutils@^3.17.1:
version "3.17.1" version "3.17.1"
resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.17.1.tgz#ed719917f11ca0dee586272b2ac49e015a2dd759" resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.17.1.tgz#ed719917f11ca0dee586272b2ac49e015a2dd759"
integrity sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g== integrity sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g==