From 61e95ee93d01c9d2891c7b27c3c2db8dfe67b670 Mon Sep 17 00:00:00 2001 From: Sid Ferreira Date: Wed, 25 Apr 2018 10:38:17 -0300 Subject: [PATCH 1/7] Move `deprecationEntries` from `jest-config` to `jest-validate`. Also fix a typo on `jest-runtime` --- .gitignore | 1 + packages/jest-config/src/index.js | 1 - packages/jest-config/src/normalize.js | 7 +++++-- packages/jest-runtime/src/index.js | 4 ++-- packages/jest-validate/package.json | 1 - .../src/deprecationEntries.js} | 0 packages/jest-validate/src/index.js | 2 ++ packages/jest-validate/src/validate_cli_options.js | 8 ++++---- 8 files changed, 14 insertions(+), 10 deletions(-) rename packages/{jest-config/src/deprecated.js => jest-validate/src/deprecationEntries.js} (100%) diff --git a/.gitignore b/.gitignore index 67678961442f..db62788250fc 100644 --- a/.gitignore +++ b/.gitignore @@ -27,3 +27,4 @@ lerna-debug.log npm-debug.log npm-debug.log* yarn-error.log* +package-lock.json diff --git a/packages/jest-config/src/index.js b/packages/jest-config/src/index.js index 9904a0226a5d..53850b3a7d14 100644 --- a/packages/jest-config/src/index.js +++ b/packages/jest-config/src/index.js @@ -23,7 +23,6 @@ import readConfigFileAndSetRootDir from './read_config_file_and_set_root_dir'; export {getTestEnvironment, isJSONString} from './utils'; export {default as normalize} from './normalize'; -export {default as deprecationEntries} from './deprecated'; export {replaceRootDirInPath} from './utils'; export {default as defaults} from './defaults'; diff --git a/packages/jest-config/src/normalize.js b/packages/jest-config/src/normalize.js index 3211dd8b1cf1..3efefd729ae4 100644 --- a/packages/jest-config/src/normalize.js +++ b/packages/jest-config/src/normalize.js @@ -13,7 +13,11 @@ import type {InitialOptions, ReporterConfig} from 'types/Config'; import crypto from 'crypto'; import glob from 'glob'; import path from 'path'; -import {ValidationError, validate} from 'jest-validate'; +import { + ValidationError, + validate, + deprecationEntries as DEPRECATED_CONFIG, +} from 'jest-validate'; import validatePattern from './validate_pattern'; import {clearLine} from 'jest-util'; import chalk from 'chalk'; @@ -32,7 +36,6 @@ import { import {DEFAULT_JS_PATTERN, DEFAULT_REPORTER_LABEL} from './constants'; import {validateReporters} from './reporter_validation_errors'; import DEFAULT_CONFIG from './defaults'; -import DEPRECATED_CONFIG from './deprecated'; import setFromArgv from './set_from_argv'; import VALID_CONFIG from './valid_config'; const ERROR = `${BULLET}Validation Error`; diff --git a/packages/jest-runtime/src/index.js b/packages/jest-runtime/src/index.js index b21208815648..9a143a036419 100644 --- a/packages/jest-runtime/src/index.js +++ b/packages/jest-runtime/src/index.js @@ -28,7 +28,7 @@ import fs from 'graceful-fs'; import stripBOM from 'strip-bom'; import ScriptTransformer from './script_transformer'; import shouldInstrument from './should_instrument'; -import {run as cilRun} from './cli'; +import {run as cliRun} from './cli'; import {options as cliOptions} from './cli/args'; type Module = {| @@ -261,7 +261,7 @@ class Runtime { } static runCLI(args?: Argv, info?: Array) { - return cilRun(args, info); + return cliRun(args, info); } static getCLIOptions() { diff --git a/packages/jest-validate/package.json b/packages/jest-validate/package.json index 6aba0cc0dd73..0331016749b8 100644 --- a/packages/jest-validate/package.json +++ b/packages/jest-validate/package.json @@ -9,7 +9,6 @@ "main": "build/index.js", "dependencies": { "chalk": "^2.0.1", - "jest-config": "^22.4.2", "jest-get-type": "^22.1.0", "leven": "^2.1.0", "pretty-format": "^22.4.0" diff --git a/packages/jest-config/src/deprecated.js b/packages/jest-validate/src/deprecationEntries.js similarity index 100% rename from packages/jest-config/src/deprecated.js rename to packages/jest-validate/src/deprecationEntries.js diff --git a/packages/jest-validate/src/index.js b/packages/jest-validate/src/index.js index c17c0c3797b1..27844cb7825a 100644 --- a/packages/jest-validate/src/index.js +++ b/packages/jest-validate/src/index.js @@ -15,10 +15,12 @@ import { } from './utils'; import validate from './validate'; import validateCLIOptions from './validate_cli_options'; +import deprecationEntries from './deprecationEntries'; module.exports = { ValidationError, createDidYouMeanMessage, + deprecationEntries, format, logValidationWarning, validate, diff --git a/packages/jest-validate/src/validate_cli_options.js b/packages/jest-validate/src/validate_cli_options.js index faa60776ae1f..6b52122300f7 100644 --- a/packages/jest-validate/src/validate_cli_options.js +++ b/packages/jest-validate/src/validate_cli_options.js @@ -10,9 +10,9 @@ import type {Argv} from 'types/Argv'; import chalk from 'chalk'; -import {deprecationEntries} from 'jest-config'; import {createDidYouMeanMessage, format, ValidationError} from './utils'; import {deprecationWarning} from './deprecated'; +import CLIDeprecationEntries from './deprecationEntries'; import defaultConfig from './default_config'; const BULLET: string = chalk.bold('\u25cf'); @@ -80,12 +80,12 @@ export default function validateCLIOptions(argv: Argv, options: Object) { throw createCLIValidationError(unrecognizedOptions, allowedOptions); } - const CLIDeprecations = Object.keys(deprecationEntries).reduce( + const CLIDeprecations = Object.keys(CLIDeprecationEntries).reduce( (acc, entry) => { if (options[entry]) { - acc[entry] = deprecationEntries[entry]; + acc[entry] = CLIDeprecationEntries[entry]; if (options[entry].alias) { - acc[options[entry].alias] = deprecationEntries[entry]; + acc[options[entry].alias] = CLIDeprecationEntries[entry]; } } return acc; From 37c49885a4ac62509a4db2ba7cd5ec44e2c97632 Mon Sep 17 00:00:00 2001 From: Sid Ferreira Date: Wed, 25 Apr 2018 11:39:02 -0300 Subject: [PATCH 2/7] Update CHANGELOG.md --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e2b54d8f4387..f5515fd1f4dc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,12 @@ ### Features +* `[jest-config]` According to #5828, moves `deprecationEntries` from `jest-config` to `jest-validate`. + ([#6067](https://github.com/facebook/jest/pull/6067)) +* `[jest-validate]` According to #5828, moves `deprecationEntries` from `jest-config` to `jest-validate`. + ([#6067](https://github.com/facebook/jest/pull/6067)) +* `[jest-runtime]` Fix typo. + ([#6067](https://github.com/facebook/jest/pull/6067)) * `[jest-snapshot]` [**BREAKING**] Concatenate name of test, optional snapshot name and count ([#6015](https://github.com/facebook/jest/pull/6015)) * `[jest-runtime]` Allow for transform plugins to skip the definition process From 304da8b5ecbb307edbd4b4a756cbb591a124fbaa Mon Sep 17 00:00:00 2001 From: Sid Ferreira Date: Wed, 25 Apr 2018 11:40:01 -0300 Subject: [PATCH 3/7] Update .gitignore --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index db62788250fc..80a6548be223 100644 --- a/.gitignore +++ b/.gitignore @@ -14,6 +14,7 @@ /packages/*/build-es5/ /packages/*/coverage/ /packages/*/node_modules/ +/packages/*/package-lock.json /website/build /website/node_modules @@ -27,4 +28,3 @@ lerna-debug.log npm-debug.log npm-debug.log* yarn-error.log* -package-lock.json From 10201770cdd2c90c94eb45294a911255f81e8cb7 Mon Sep 17 00:00:00 2001 From: Sid Ferreira Date: Thu, 26 Apr 2018 08:39:25 -0300 Subject: [PATCH 4/7] deprecations are an option --- packages/jest-cli/src/cli/index.js | 7 +++++-- .../src/deprecated.js} | 0 packages/jest-config/src/index.js | 1 + packages/jest-config/src/normalize.js | 7 ++----- packages/jest-repl/package.json | 1 + packages/jest-repl/src/cli/index.js | 6 +++++- packages/jest-runtime/src/cli/index.js | 7 +++++-- packages/jest-validate/src/index.js | 2 -- packages/jest-validate/src/validate_cli_options.js | 8 ++++---- 9 files changed, 23 insertions(+), 16 deletions(-) rename packages/{jest-validate/src/deprecationEntries.js => jest-config/src/deprecated.js} (100%) diff --git a/packages/jest-cli/src/cli/index.js b/packages/jest-cli/src/cli/index.js index 116a07d5989d..0c428cedadff 100644 --- a/packages/jest-cli/src/cli/index.js +++ b/packages/jest-cli/src/cli/index.js @@ -13,7 +13,7 @@ import type {GlobalConfig, Path, ProjectConfig} from 'types/Config'; import {Console, clearLine, createDirectory} from 'jest-util'; import {validateCLIOptions} from 'jest-validate'; -import {readConfig} from 'jest-config'; +import {readConfig, deprecationEntries} from 'jest-config'; import {version as VERSION} from '../../package.json'; import * as args from './args'; import chalk from 'chalk'; @@ -126,7 +126,10 @@ const buildArgv = (maybeArgv: ?Argv, project: ?Path) => { .check(args.check) .version(false).argv; - validateCLIOptions(argv, args.options); + validateCLIOptions( + argv, + Object.assign({}, args.options, {deprecationEntries}), + ); return argv; }; diff --git a/packages/jest-validate/src/deprecationEntries.js b/packages/jest-config/src/deprecated.js similarity index 100% rename from packages/jest-validate/src/deprecationEntries.js rename to packages/jest-config/src/deprecated.js diff --git a/packages/jest-config/src/index.js b/packages/jest-config/src/index.js index 53850b3a7d14..9904a0226a5d 100644 --- a/packages/jest-config/src/index.js +++ b/packages/jest-config/src/index.js @@ -23,6 +23,7 @@ import readConfigFileAndSetRootDir from './read_config_file_and_set_root_dir'; export {getTestEnvironment, isJSONString} from './utils'; export {default as normalize} from './normalize'; +export {default as deprecationEntries} from './deprecated'; export {replaceRootDirInPath} from './utils'; export {default as defaults} from './defaults'; diff --git a/packages/jest-config/src/normalize.js b/packages/jest-config/src/normalize.js index 3efefd729ae4..3211dd8b1cf1 100644 --- a/packages/jest-config/src/normalize.js +++ b/packages/jest-config/src/normalize.js @@ -13,11 +13,7 @@ import type {InitialOptions, ReporterConfig} from 'types/Config'; import crypto from 'crypto'; import glob from 'glob'; import path from 'path'; -import { - ValidationError, - validate, - deprecationEntries as DEPRECATED_CONFIG, -} from 'jest-validate'; +import {ValidationError, validate} from 'jest-validate'; import validatePattern from './validate_pattern'; import {clearLine} from 'jest-util'; import chalk from 'chalk'; @@ -36,6 +32,7 @@ import { import {DEFAULT_JS_PATTERN, DEFAULT_REPORTER_LABEL} from './constants'; import {validateReporters} from './reporter_validation_errors'; import DEFAULT_CONFIG from './defaults'; +import DEPRECATED_CONFIG from './deprecated'; import setFromArgv from './set_from_argv'; import VALID_CONFIG from './valid_config'; const ERROR = `${BULLET}Validation Error`; diff --git a/packages/jest-repl/package.json b/packages/jest-repl/package.json index 11384aa07afa..a25e12739f9b 100644 --- a/packages/jest-repl/package.json +++ b/packages/jest-repl/package.json @@ -8,6 +8,7 @@ "license": "MIT", "main": "build/index.js", "dependencies": { + "jest-config": "^22.4.2", "jest-runtime": "^22.4.2", "jest-validate": "^22.4.2", "repl": "^0.1.3", diff --git a/packages/jest-repl/src/cli/index.js b/packages/jest-repl/src/cli/index.js index 7879498040c7..f6b5c9df0ef7 100644 --- a/packages/jest-repl/src/cli/index.js +++ b/packages/jest-repl/src/cli/index.js @@ -13,6 +13,7 @@ import path from 'path'; import Runtime from 'jest-runtime'; import yargs from 'yargs'; import {validateCLIOptions} from 'jest-validate'; +import {deprecationEntries} from 'jest-config'; import {version as VERSION} from '../../package.json'; import * as args from './args'; @@ -21,7 +22,10 @@ const REPL_SCRIPT = path.resolve(__dirname, './repl.js'); module.exports = function() { const argv = yargs.usage(args.usage).options(args.options).argv; - validateCLIOptions(argv, args.options); + validateCLIOptions( + argv, + Object.assign({}, args.options, {deprecationEntries}), + ); argv._ = [REPL_SCRIPT]; diff --git a/packages/jest-runtime/src/cli/index.js b/packages/jest-runtime/src/cli/index.js index 1d16429b097d..8deebe378335 100644 --- a/packages/jest-runtime/src/cli/index.js +++ b/packages/jest-runtime/src/cli/index.js @@ -16,7 +16,7 @@ import path from 'path'; import yargs from 'yargs'; import {Console, setGlobal} from 'jest-util'; import {validateCLIOptions} from 'jest-validate'; -import {readConfig} from 'jest-config'; +import {readConfig, deprecationEntries} from 'jest-config'; // eslint-disable-next-line import/default import Runtime from '../'; import * as args from './args'; @@ -38,7 +38,10 @@ export function run(cliArgv?: Argv, cliInfo?: Array) { .version(false) .options(args.options).argv; - validateCLIOptions(argv, args.options); + validateCLIOptions( + argv, + Object.assign({}, args.options, {deprecationEntries}), + ); } if (argv.help) { diff --git a/packages/jest-validate/src/index.js b/packages/jest-validate/src/index.js index 27844cb7825a..c17c0c3797b1 100644 --- a/packages/jest-validate/src/index.js +++ b/packages/jest-validate/src/index.js @@ -15,12 +15,10 @@ import { } from './utils'; import validate from './validate'; import validateCLIOptions from './validate_cli_options'; -import deprecationEntries from './deprecationEntries'; module.exports = { ValidationError, createDidYouMeanMessage, - deprecationEntries, format, logValidationWarning, validate, diff --git a/packages/jest-validate/src/validate_cli_options.js b/packages/jest-validate/src/validate_cli_options.js index 6b52122300f7..d4e7ebcf382e 100644 --- a/packages/jest-validate/src/validate_cli_options.js +++ b/packages/jest-validate/src/validate_cli_options.js @@ -12,7 +12,6 @@ import type {Argv} from 'types/Argv'; import chalk from 'chalk'; import {createDidYouMeanMessage, format, ValidationError} from './utils'; import {deprecationWarning} from './deprecated'; -import CLIDeprecationEntries from './deprecationEntries'; import defaultConfig from './default_config'; const BULLET: string = chalk.bold('\u25cf'); @@ -68,6 +67,7 @@ const logDeprecatedOptions = ( export default function validateCLIOptions(argv: Argv, options: Object) { const yargsSpecialOptions = ['$0', '_', 'help', 'h']; + const deprecationEntries = options.deprecationEntries || {}; const allowedOptions = Object.keys(options).reduce( (acc, option) => acc.add(option).add(options[option].alias || option), new Set(yargsSpecialOptions), @@ -80,12 +80,12 @@ export default function validateCLIOptions(argv: Argv, options: Object) { throw createCLIValidationError(unrecognizedOptions, allowedOptions); } - const CLIDeprecations = Object.keys(CLIDeprecationEntries).reduce( + const CLIDeprecations = Object.keys(deprecationEntries).reduce( (acc, entry) => { if (options[entry]) { - acc[entry] = CLIDeprecationEntries[entry]; + acc[entry] = deprecationEntries[entry]; if (options[entry].alias) { - acc[options[entry].alias] = CLIDeprecationEntries[entry]; + acc[options[entry].alias] = deprecationEntries[entry]; } } return acc; From feadbe784c26c313dbbbffa3d4feae8fcbb5c57b Mon Sep 17 00:00:00 2001 From: Sid Ferreira Date: Thu, 26 Apr 2018 15:09:18 -0300 Subject: [PATCH 5/7] Fix changelog --- CHANGELOG.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f5515fd1f4dc..07f1e6195477 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,9 +2,11 @@ ### Features -* `[jest-config]` According to #5828, moves `deprecationEntries` from `jest-config` to `jest-validate`. +* `[jest-config]` According to #5828, moves `deprecationEntries` from + `jest-config` to `jest-validate`. ([#6067](https://github.com/facebook/jest/pull/6067)) -* `[jest-validate]` According to #5828, moves `deprecationEntries` from `jest-config` to `jest-validate`. +* `[jest-validate]` According to #5828, moves `deprecationEntries` from + `jest-config` to `jest-validate`. ([#6067](https://github.com/facebook/jest/pull/6067)) * `[jest-runtime]` Fix typo. ([#6067](https://github.com/facebook/jest/pull/6067)) From acb52315770ad0abc074fdded8031f8277b2fba7 Mon Sep 17 00:00:00 2001 From: Sid Ferreira Date: Thu, 26 Apr 2018 19:37:45 -0300 Subject: [PATCH 6/7] Update CHANGELOG.md --- CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 07f1e6195477..cedd3dcc65a9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,10 +2,10 @@ ### Features -* `[jest-config]` According to #5828, moves `deprecationEntries` from +* `[jest-config]` According to ([#5828](https://github.com/facebook/jest/issues/5828)), moves `deprecationEntries` from `jest-config` to `jest-validate`. ([#6067](https://github.com/facebook/jest/pull/6067)) -* `[jest-validate]` According to #5828, moves `deprecationEntries` from +* `[jest-validate]` According to ([#5828](https://github.com/facebook/jest/issues/5828)), moves `deprecationEntries` from `jest-config` to `jest-validate`. ([#6067](https://github.com/facebook/jest/pull/6067)) * `[jest-runtime]` Fix typo. From 1856c01d99b474c960358e52188e2c118fbf7b36 Mon Sep 17 00:00:00 2001 From: Sid Ferreira Date: Fri, 27 Apr 2018 06:25:22 -0300 Subject: [PATCH 7/7] Properly describe changes on changelog.md --- CHANGELOG.md | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cedd3dcc65a9..970cf88c90ea 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,13 +2,9 @@ ### Features -* `[jest-config]` According to ([#5828](https://github.com/facebook/jest/issues/5828)), moves `deprecationEntries` from - `jest-config` to `jest-validate`. +* `[jest-validate]` Get rid of `jest-config` dependency ([#6067](https://github.com/facebook/jest/pull/6067)) -* `[jest-validate]` According to ([#5828](https://github.com/facebook/jest/issues/5828)), moves `deprecationEntries` from - `jest-config` to `jest-validate`. - ([#6067](https://github.com/facebook/jest/pull/6067)) -* `[jest-runtime]` Fix typo. +* `[jest-validate]` Adds option to inject `deprecationEntries` ([#6067](https://github.com/facebook/jest/pull/6067)) * `[jest-snapshot]` [**BREAKING**] Concatenate name of test, optional snapshot name and count ([#6015](https://github.com/facebook/jest/pull/6015))