ember-cli 6.10.0-alpha.1 → 6.11.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/CONTRIBUTING.md +30 -34
  3. package/README.md +9 -21
  4. package/RELEASE.md +11 -9
  5. package/bin/ember +16 -13
  6. package/blueprints/addon-import/index.js +4 -4
  7. package/docs/build/data.json +9 -9
  8. package/lib/broccoli/ember-app.js +1 -1
  9. package/lib/commands/generate.js +1 -1
  10. package/lib/commands/init.js +1 -1
  11. package/lib/commands/new.js +1 -1
  12. package/lib/commands/test.js +0 -3
  13. package/lib/commands/unknown.js +1 -1
  14. package/lib/debug/deprecate.js +1 -1
  15. package/lib/models/asset-size-printer.js +3 -3
  16. package/lib/models/blueprint.js +6 -6
  17. package/lib/models/builder.js +1 -1
  18. package/lib/models/command.js +2 -2
  19. package/lib/models/hardware-info.js +5 -2
  20. package/lib/models/instrumentation.js +2 -2
  21. package/lib/models/project.js +3 -3
  22. package/lib/models/watcher.js +1 -1
  23. package/lib/models/worker.js +2 -2
  24. package/lib/tasks/addon-install.js +1 -1
  25. package/lib/tasks/build-watch.js +2 -2
  26. package/lib/tasks/build.js +1 -1
  27. package/lib/tasks/git-init.js +2 -2
  28. package/lib/tasks/install-blueprint.js +1 -1
  29. package/lib/tasks/interactive-new.js +5 -5
  30. package/lib/tasks/npm-task.js +2 -2
  31. package/lib/tasks/serve.js +1 -1
  32. package/lib/tasks/server/express-server.js +1 -1
  33. package/lib/tasks/test-server.js +1 -1
  34. package/lib/utilities/find-build-file.js +2 -2
  35. package/lib/utilities/get-lang-arg.js +4 -4
  36. package/lib/utilities/heimdall-progress.js +5 -2
  37. package/lib/utilities/lint-fix.js +1 -1
  38. package/lib/utilities/markdown-color.js +1 -1
  39. package/lib/utilities/print-command.js +1 -1
  40. package/lib/utilities/require-as-hash.js +10 -8
  41. package/lib/utilities/windows-admin.js +1 -1
  42. package/package.json +57 -52
  43. package/packages/addon-blueprint/additional-package.json +1 -3
  44. package/packages/addon-blueprint/index.js +1 -1
  45. package/packages/addon-blueprint/package.json +2 -2
  46. package/packages/app-blueprint/files/package.json +9 -9
  47. package/packages/app-blueprint/index.js +1 -1
  48. package/packages/app-blueprint/package.json +2 -2
  49. package/packages/blueprint-model/package.json +2 -2
  50. package/packages/blueprint-model/utilities/edit-file-diff.js +3 -3
  51. package/packages/blueprint-model/utilities/experiments.js +1 -1
  52. package/packages/blueprint-model/utilities/file-info.js +6 -6
  53. package/tests/helpers/acceptance.js +1 -1
  54. package/tests/helpers/command-generator.js +2 -2
  55. package/tests/helpers/package-cache.js +1 -1
  56. package/tests/helpers/process-help-string.js +3 -3
  57. package/tests/helpers/run-command.js +1 -1
  58. package/lib/utilities/execa.js +0 -20
@@ -45,9 +45,9 @@
45
45
  "@ember/test-helpers": "^5.4.1<% if (embroider) { %>",
46
46
  "@embroider/compat": "^3.9.3",
47
47
  "@embroider/core": "^3.5.9<% } %>",
48
- "@embroider/macros": "^1.19.5<% if (embroider) { %>",
48
+ "@embroider/macros": "^1.19.6<% if (embroider) { %>",
49
49
  "@embroider/webpack": "^4.1.2<% } %>",
50
- "@eslint/js": "^9.39.1",
50
+ "@eslint/js": "^9.39.2",
51
51
  "@glimmer/component": "^2.0.0",
52
52
  "@glimmer/tracking": "^1.1.2<% if (typescript) { %>",
53
53
  "@glint/environment-ember-loose": "^1.5.2",
@@ -60,7 +60,7 @@
60
60
  "broccoli-asset-rev": "^3.0.0",
61
61
  "concurrently": "^9.2.1",
62
62
  "ember-auto-import": "^2.12.0",
63
- "ember-cli": "~6.10.0-alpha.1",
63
+ "ember-cli": "~6.11.0-alpha.1",
64
64
  "ember-cli-app-version": "^7.0.0",
65
65
  "ember-cli-babel": "^8.2.0",
66
66
  "ember-cli-clean-css": "^3.0.0",
@@ -76,11 +76,11 @@
76
76
  "ember-page-title": "^9.0.3",
77
77
  "ember-qunit": "^9.0.4",
78
78
  "ember-resolver": "^13.1.1",
79
- "ember-source": "~6.10.0-alpha.1",
80
- "ember-template-imports": "^4.3.0",
79
+ "ember-source": "~6.11.0-alpha.6",
80
+ "ember-template-imports": "^4.4.0",
81
81
  "ember-template-lint": "^6.1.0<% if (welcome) { %>",
82
82
  "ember-welcome-page": "^7.0.2<% } %>",
83
- "eslint": "^9.39.1",
83
+ "eslint": "^9.39.2",
84
84
  "eslint-config-prettier": "^9.1.2",
85
85
  "eslint-plugin-ember": "^12.7.5",
86
86
  "eslint-plugin-n": "^17.23.1",
@@ -89,14 +89,14 @@
89
89
  "loader.js": "^4.7.0",
90
90
  "prettier": "^3.7.4",
91
91
  "prettier-plugin-ember-template-tag": "^2.1.2",
92
- "qunit": "^2.24.3",
92
+ "qunit": "^2.25.0",
93
93
  "qunit-dom": "^3.5.0",
94
94
  "stylelint": "^16.26.1",
95
95
  "stylelint-config-standard": "^36.0.1",
96
96
  "tracked-built-ins": "^3.4.0<% if (typescript) { %>",
97
97
  "typescript": "^5.9.3",
98
- "typescript-eslint": "^8.49.0<% } %>",
99
- "webpack": "^5.103.0"
98
+ "typescript-eslint": "^8.52.0<% } %>",
99
+ "webpack": "^5.104.1"
100
100
  },
101
101
  "engines": {
102
102
  "node": ">= 20.19"
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  const stringUtil = require('ember-cli-string-utils');
4
- const chalk = require('chalk');
4
+ const { default: chalk } = require('chalk');
5
5
  const { isExperimentEnabled } = require('@ember-tooling/blueprint-model/utilities/experiments');
6
6
  const directoryForPackageName = require('@ember-tooling/blueprint-model/utilities/directory-for-package-name');
7
7
  const blueprintVersion = require('./package.json').version;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ember-tooling/classic-build-app-blueprint",
3
- "version": "6.10.0-alpha.1",
3
+ "version": "6.11.0-alpha.1",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/ember-cli/ember-cli.git",
@@ -12,7 +12,7 @@
12
12
  ],
13
13
  "dependencies": {
14
14
  "@ember-tooling/blueprint-model": "workspace:*",
15
- "chalk": "^4.1.2",
15
+ "chalk": "^5.6.2",
16
16
  "ember-cli-string-utils": "^1.1.0"
17
17
  },
18
18
  "release-plan": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ember-tooling/blueprint-model",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/ember-cli/ember-cli.git",
@@ -8,7 +8,7 @@
8
8
  },
9
9
  "license": "MIT",
10
10
  "dependencies": {
11
- "chalk": "^4.1.2",
11
+ "chalk": "^5.6.2",
12
12
  "diff": "^7.0.0",
13
13
  "isbinaryfile": "^5.0.4",
14
14
  "lodash": "^4.17.21",
@@ -2,7 +2,7 @@
2
2
 
3
3
  const fs = require('fs');
4
4
  const util = require('util');
5
- const jsdiff = require('diff');
5
+ const { applyPatch, createPatch } = require('diff');
6
6
  const quickTemp = require('quick-temp');
7
7
  const path = require('path');
8
8
  const SilentError = require('silent-error');
@@ -38,7 +38,7 @@ class EditFileDiff {
38
38
  diffString: readFile(resultHash.diffPath),
39
39
  currentString: readFile(resultHash.outputPath),
40
40
  }).then((result) => {
41
- let appliedDiff = jsdiff.applyPatch(result.currentString.toString(), result.diffString.toString());
41
+ let appliedDiff = applyPatch(result.currentString.toString(), result.diffString.toString());
42
42
 
43
43
  if (!appliedDiff) {
44
44
  let message = 'Patch was not cleanly applied.';
@@ -52,7 +52,7 @@ class EditFileDiff {
52
52
 
53
53
  invokeEditor(result) {
54
54
  let info = this.info;
55
- let diff = jsdiff.createPatch(info.outputPath, result.output.toString(), result.input);
55
+ let diff = createPatch(info.outputPath, result.output.toString(), result.input);
56
56
  let diffPath = path.join(this.tmpDifferenceDir, 'currentDiff.diff');
57
57
 
58
58
  return writeFile(diffPath, diff)
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const chalk = require('chalk');
3
+ const { default: chalk } = require('chalk');
4
4
 
5
5
  /*
6
6
  If you're here to remove the VITE experiment flag in favor of it being
@@ -2,11 +2,11 @@
2
2
 
3
3
  const fs = require('fs');
4
4
  const util = require('util');
5
- const chalk = require('chalk');
5
+ const { default: chalk } = require('chalk');
6
6
  const EditFileDiff = require('./edit-file-diff');
7
7
  const EOL = require('os').EOL;
8
8
  const rxEOL = new RegExp(EOL, 'g');
9
- const isBinaryFile = require('isbinaryfile').isBinaryFileSync;
9
+ const { isBinaryFileSync } = require('isbinaryfile');
10
10
  const hash = require('promise.hash.helper');
11
11
  const canEdit = require('./open-editor').canEdit;
12
12
  const processTemplate = require('./process-template');
@@ -58,7 +58,7 @@ class FileInfo {
58
58
  /* ignore */
59
59
  }
60
60
 
61
- let canDiff = !isBinaryFile(this.inputPath) && (!outputPathIsFile || !isBinaryFile(this.outputPath));
61
+ let canDiff = !isBinaryFileSync(this.inputPath) && (!outputPathIsFile || !isBinaryFileSync(this.outputPath));
62
62
 
63
63
  if (canDiff) {
64
64
  promptOptions.choices.push({ key: 'd', name: 'Diff', value: 'diff' });
@@ -73,12 +73,12 @@ class FileInfo {
73
73
 
74
74
  displayDiff() {
75
75
  let info = this,
76
- jsdiff = require('diff');
76
+ { createPatch } = require('diff');
77
77
  return hash({
78
78
  input: this.render(),
79
79
  output: readFile(info.outputPath),
80
80
  }).then((result) => {
81
- let diff = jsdiff.createPatch(
81
+ let diff = createPatch(
82
82
  info.outputPath,
83
83
  result.output.toString().replace(rxEOL, '\n'),
84
84
  result.input.replace(rxEOL, '\n')
@@ -106,7 +106,7 @@ class FileInfo {
106
106
 
107
107
  return readFile(path).then((content) =>
108
108
  lstat(path).then((fileStat) => {
109
- if (isBinaryFile(content, fileStat.size)) {
109
+ if (isBinaryFileSync(content, fileStat.size)) {
110
110
  return content;
111
111
  } else {
112
112
  try {
@@ -5,7 +5,7 @@ const path = require('path');
5
5
  const fs = require('fs-extra');
6
6
  // eslint-disable-next-line n/no-unpublished-require
7
7
  const tmp = require('tmp-promise');
8
- const execa = require('execa');
8
+ const { execa } = require('execa');
9
9
 
10
10
  const runCommand = require('./run-command');
11
11
  const hasGlobalYarn = require('../helpers/has-global-yarn');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const execa = require('../../lib/utilities/execa');
3
+ const { execaSync } = require('execa');
4
4
 
5
5
  /**
6
6
  * A simple tool to make behavior and API consistent between commands
@@ -45,6 +45,6 @@ module.exports = class CommandGenerator {
45
45
  }
46
46
 
47
47
  _invoke(args, options) {
48
- return execa.sync(this.program, args, options);
48
+ return execaSync(this.program, args, options);
49
49
  }
50
50
  };
@@ -3,7 +3,7 @@
3
3
  const fs = require('fs-extra');
4
4
  const path = require('path');
5
5
  const quickTemp = require('quick-temp');
6
- const Configstore = require('configstore');
6
+ const { default: Configstore } = require('configstore');
7
7
  const CommandGenerator = require('./command-generator');
8
8
  const stableStringify = require('safe-stable-stringify');
9
9
  const symlinkOrCopySync = require('symlink-or-copy').sync;
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- const chalk = require('chalk');
3
+ const { supportsColor } = require('chalk');
4
4
  // eslint-disable-next-line n/no-unpublished-require
5
- const stripAnsi = require('strip-ansi');
5
+ const { default: stripAnsi } = require('strip-ansi');
6
6
 
7
7
  module.exports = function (helpString) {
8
8
  // currently windows
9
- if (chalk.supportsColor) {
9
+ if (supportsColor) {
10
10
  return helpString;
11
11
  }
12
12
  return stripAnsi(helpString);
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const chalk = require('chalk');
3
+ const { default: chalk } = require('chalk');
4
4
  const spawn = require('child_process').spawn;
5
5
  const defaults = require('lodash/defaults');
6
6
  const killCliProcess = require('./kill-cli-process');
@@ -1,20 +0,0 @@
1
- 'use strict';
2
-
3
- const execa = require('execa');
4
- const logger = require('heimdalljs-logger')('ember-cli:execa');
5
-
6
- async function _execa(cmd, args, opts) {
7
- logger.info('execa(%j, %j)', cmd, args);
8
- let result = await execa(cmd, args, opts);
9
- logger.info('execa(%j, %j) -> code: %d', cmd, args, result.code);
10
- return result;
11
- }
12
-
13
- _execa.sync = function (cmd, args, opts) {
14
- logger.info('execa.sync(%j, %j)', cmd, args);
15
- let result = execa.sync(cmd, args, opts);
16
- logger.info('execa.sync(%j, %j) -> code: %d', cmd, args, result.code);
17
- return result;
18
- };
19
-
20
- module.exports = _execa;