refactor(core): move google3 migration rules into single directory (#30956)
Moves all google3 migration tslint rules into a single directory. This makes it easier to wire up multiple migration rules in google3 without having to update the rule directories each time a new migration is available. PR Close #30956
This commit is contained in:
parent
9f2ae5d6ff
commit
f69e4e6f77
|
@ -6,6 +6,10 @@ ts_library(
|
|||
tsconfig = "//packages/core/schematics:tsconfig.json",
|
||||
visibility = ["//packages/core/schematics/test:__pkg__"],
|
||||
deps = [
|
||||
"//packages/core/schematics/migrations/injectable-pipe",
|
||||
"//packages/core/schematics/migrations/missing-injectable",
|
||||
"//packages/core/schematics/migrations/missing-injectable/google3",
|
||||
"//packages/core/schematics/migrations/static-queries",
|
||||
"//packages/core/schematics/migrations/template-var-assignment",
|
||||
"//packages/core/schematics/utils",
|
||||
"//packages/core/schematics/utils/tslint",
|
|
@ -9,11 +9,11 @@
|
|||
import {Replacement, RuleFailure, Rules} from 'tslint';
|
||||
import * as ts from 'typescript';
|
||||
|
||||
import {NgComponentTemplateVisitor} from '../../../utils/ng_component_template';
|
||||
import {NgQueryResolveVisitor} from '../angular/ng_query_visitor';
|
||||
import {QueryTiming} from '../angular/query-definition';
|
||||
import {QueryUsageStrategy} from '../strategies/usage_strategy/usage_strategy';
|
||||
import {getTransformedQueryCallExpr} from '../transform';
|
||||
import {NgComponentTemplateVisitor} from '../../utils/ng_component_template';
|
||||
import {NgQueryResolveVisitor} from '../static-queries/angular/ng_query_visitor';
|
||||
import {QueryTiming} from '../static-queries/angular/query-definition';
|
||||
import {QueryUsageStrategy} from '../static-queries/strategies/usage_strategy/usage_strategy';
|
||||
import {getTransformedQueryCallExpr} from '../static-queries/transform';
|
||||
|
||||
const FAILURE_MESSAGE = 'Query does not explicitly specify its timing. Read more here: ' +
|
||||
'https://github.com/angular/angular/pull/28810';
|
|
@ -9,8 +9,9 @@
|
|||
import {Replacement, RuleFailure, Rules} from 'tslint';
|
||||
import * as ts from 'typescript';
|
||||
|
||||
import {InjectablePipeVisitor} from '../angular/injectable_pipe_visitor';
|
||||
import {INJECTABLE_DECORATOR_NAME, addImport, getNamedImports} from '../util';
|
||||
import {InjectablePipeVisitor} from '../injectable-pipe/angular/injectable_pipe_visitor';
|
||||
import {INJECTABLE_DECORATOR_NAME, addImport, getNamedImports} from '../injectable-pipe/util';
|
||||
|
||||
|
||||
/**
|
||||
* TSLint rule that flags `@Pipe` classes that haven't been marked as `@Injectable`.
|
|
@ -8,9 +8,11 @@
|
|||
|
||||
import {RuleFailure, Rules} from 'tslint';
|
||||
import * as ts from 'typescript';
|
||||
import {NgModuleCollector} from '../module_collector';
|
||||
import {MissingInjectableTransform} from '../transform';
|
||||
import {TslintUpdateRecorder} from './tslint_update_recorder';
|
||||
|
||||
import {TslintUpdateRecorder} from '../missing-injectable/google3/tslint_update_recorder';
|
||||
import {NgModuleCollector} from '../missing-injectable/module_collector';
|
||||
import {MissingInjectableTransform} from '../missing-injectable/transform';
|
||||
|
||||
|
||||
/**
|
||||
* TSLint rule that flags classes which are declared as providers in NgModules but
|
|
@ -9,9 +9,9 @@
|
|||
import {RuleFailure, Rules} from 'tslint';
|
||||
import * as ts from 'typescript';
|
||||
|
||||
import {NgComponentTemplateVisitor} from '../../../utils/ng_component_template';
|
||||
import {createHtmlSourceFile} from '../../../utils/tslint/tslint_html_source_file';
|
||||
import {analyzeResolvedTemplate} from '../analyze_template';
|
||||
import {NgComponentTemplateVisitor} from '../../utils/ng_component_template';
|
||||
import {createHtmlSourceFile} from '../../utils/tslint/tslint_html_source_file';
|
||||
import {analyzeResolvedTemplate} from '../template-var-assignment/analyze_template';
|
||||
|
||||
const FAILURE_MESSAGE = 'Found assignment to template variable. This does not work with Ivy and ' +
|
||||
'needs to be updated.';
|
|
@ -6,7 +6,7 @@ ts_library(
|
|||
tsconfig = "//packages/core/schematics:tsconfig.json",
|
||||
visibility = [
|
||||
"//packages/core/schematics:__pkg__",
|
||||
"//packages/core/schematics/migrations/injectable-pipe/google3:__pkg__",
|
||||
"//packages/core/schematics/migrations/google3:__pkg__",
|
||||
"//packages/core/schematics/test:__pkg__",
|
||||
],
|
||||
deps = [
|
||||
|
|
|
@ -1,13 +0,0 @@
|
|||
load("//tools:defaults.bzl", "ts_library")
|
||||
|
||||
ts_library(
|
||||
name = "google3",
|
||||
srcs = glob(["**/*.ts"]),
|
||||
tsconfig = "//packages/core/schematics:tsconfig.json",
|
||||
visibility = ["//packages/core/schematics/test:__pkg__"],
|
||||
deps = [
|
||||
"//packages/core/schematics/migrations/injectable-pipe",
|
||||
"@npm//tslint",
|
||||
"@npm//typescript",
|
||||
],
|
||||
)
|
|
@ -6,6 +6,7 @@ ts_library(
|
|||
tsconfig = "//packages/core/schematics:tsconfig.json",
|
||||
visibility = [
|
||||
"//packages/core/schematics:__pkg__",
|
||||
"//packages/core/schematics/migrations/google3:__pkg__",
|
||||
"//packages/core/schematics/migrations/missing-injectable/google3:__pkg__",
|
||||
"//packages/core/schematics/test:__pkg__",
|
||||
],
|
||||
|
|
|
@ -4,7 +4,7 @@ ts_library(
|
|||
name = "google3",
|
||||
srcs = glob(["**/*.ts"]),
|
||||
tsconfig = "//packages/core/schematics:tsconfig.json",
|
||||
visibility = ["//packages/core/schematics/test:__pkg__"],
|
||||
visibility = ["//packages/core/schematics/migrations/google3:__pkg__"],
|
||||
deps = [
|
||||
"//packages/core/schematics/migrations/missing-injectable",
|
||||
"@npm//tslint",
|
||||
|
|
|
@ -6,7 +6,7 @@ ts_library(
|
|||
tsconfig = "//packages/core/schematics:tsconfig.json",
|
||||
visibility = [
|
||||
"//packages/core/schematics:__pkg__",
|
||||
"//packages/core/schematics/migrations/static-queries/google3:__pkg__",
|
||||
"//packages/core/schematics/migrations/google3:__pkg__",
|
||||
"//packages/core/schematics/test:__pkg__",
|
||||
],
|
||||
deps = [
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
load("//tools:defaults.bzl", "ts_library")
|
||||
|
||||
ts_library(
|
||||
name = "google3",
|
||||
srcs = glob(["**/*.ts"]),
|
||||
tsconfig = "//packages/core/schematics:tsconfig.json",
|
||||
visibility = ["//packages/core/schematics/test:__pkg__"],
|
||||
deps = [
|
||||
"//packages/core/schematics/migrations/static-queries",
|
||||
"//packages/core/schematics/utils",
|
||||
"@npm//tslint",
|
||||
"@npm//typescript",
|
||||
],
|
||||
)
|
|
@ -6,7 +6,7 @@ ts_library(
|
|||
tsconfig = "//packages/core/schematics:tsconfig.json",
|
||||
visibility = [
|
||||
"//packages/core/schematics:__pkg__",
|
||||
"//packages/core/schematics/migrations/template-var-assignment/google3:__pkg__",
|
||||
"//packages/core/schematics/migrations/google3:__pkg__",
|
||||
"//packages/core/schematics/test:__pkg__",
|
||||
],
|
||||
deps = [
|
||||
|
|
|
@ -9,17 +9,14 @@ ts_library(
|
|||
"//packages/core/schematics:migrations.json",
|
||||
],
|
||||
deps = [
|
||||
"//packages/core/schematics/migrations/google3",
|
||||
"//packages/core/schematics/migrations/injectable-pipe",
|
||||
"//packages/core/schematics/migrations/injectable-pipe/google3",
|
||||
"//packages/core/schematics/migrations/missing-injectable",
|
||||
"//packages/core/schematics/migrations/missing-injectable/google3",
|
||||
"//packages/core/schematics/migrations/move-document",
|
||||
"//packages/core/schematics/migrations/renderer-to-renderer2",
|
||||
"//packages/core/schematics/migrations/renderer-to-renderer2/google3",
|
||||
"//packages/core/schematics/migrations/static-queries",
|
||||
"//packages/core/schematics/migrations/static-queries/google3",
|
||||
"//packages/core/schematics/migrations/template-var-assignment",
|
||||
"//packages/core/schematics/migrations/template-var-assignment/google3",
|
||||
"//packages/core/schematics/utils",
|
||||
"@npm//@angular-devkit/core",
|
||||
"@npm//@angular-devkit/schematics",
|
||||
|
|
|
@ -18,7 +18,7 @@ describe('Google3 explicitQueryTiming TSLint rule', () => {
|
|||
* the Bazel runfiles, because on Windows runfiles are not symlinked into the working directory.
|
||||
*/
|
||||
const rulesDirectory =
|
||||
dirname(require.resolve('../../migrations/static-queries/google3/explicitQueryTimingRule'));
|
||||
dirname(require.resolve('../../migrations/google3/explicitQueryTimingRule'));
|
||||
|
||||
let tmpDir: string;
|
||||
|
||||
|
|
|
@ -12,8 +12,7 @@ import * as shx from 'shelljs';
|
|||
import {Configuration, Linter} from 'tslint';
|
||||
|
||||
describe('Google3 injectable pipe TSLint rule', () => {
|
||||
const rulesDirectory =
|
||||
dirname(require.resolve('../../migrations/injectable-pipe/google3/injectablePipeRule'));
|
||||
const rulesDirectory = dirname(require.resolve('../../migrations/google3/injectablePipeRule'));
|
||||
|
||||
let tmpDir: string;
|
||||
|
||||
|
|
|
@ -12,8 +12,8 @@ import * as shx from 'shelljs';
|
|||
import {Configuration, Linter} from 'tslint';
|
||||
|
||||
describe('Google3 missing injectable tslint rule', () => {
|
||||
const rulesDirectory = dirname(
|
||||
require.resolve('../../migrations/missing-injectable/google3/noMissingInjectableRule'));
|
||||
const rulesDirectory =
|
||||
dirname(require.resolve('../../migrations/google3/noMissingInjectableRule'));
|
||||
|
||||
let tmpDir: string;
|
||||
|
||||
|
|
|
@ -12,8 +12,8 @@ import * as shx from 'shelljs';
|
|||
import {Configuration, Linter} from 'tslint';
|
||||
|
||||
describe('Google3 noTemplateVariableAssignment TSLint rule', () => {
|
||||
const rulesDirectory = dirname(require.resolve(
|
||||
'../../migrations/template-var-assignment/google3/noTemplateVariableAssignmentRule'));
|
||||
const rulesDirectory =
|
||||
dirname(require.resolve('../../migrations/google3/noTemplateVariableAssignmentRule'));
|
||||
|
||||
let tmpDir: string;
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ ts_library(
|
|||
srcs = glob(["**/*.ts"]),
|
||||
tsconfig = "//packages/core/schematics:tsconfig.json",
|
||||
visibility = [
|
||||
"//packages/core/schematics/migrations/template-var-assignment/google3:__pkg__",
|
||||
"//packages/core/schematics/migrations/google3:__pkg__",
|
||||
],
|
||||
deps = ["@npm//typescript"],
|
||||
)
|
||||
|
|
Loading…
Reference in New Issue