ember-cli 3.28.1 → 4.0.0-beta.2

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 (97) hide show
  1. package/.github/workflows/ci.yml +4 -0
  2. package/CHANGELOG.md +70 -0
  3. package/README.md +1 -1
  4. package/blueprints/addon/additional-dev-dependencies.json +1 -1
  5. package/blueprints/addon/files/.github/workflows/ci.yml +73 -0
  6. package/blueprints/addon/files/.travis.yml +1 -1
  7. package/blueprints/addon/files/addon-config/ember-try.js +3 -0
  8. package/blueprints/addon/files/npmignore +4 -0
  9. package/blueprints/addon/index.js +14 -5
  10. package/blueprints/app/files/.eslintignore +3 -0
  11. package/blueprints/app/files/.eslintrc.js +1 -1
  12. package/blueprints/app/files/.github/workflows/ci.yml +41 -0
  13. package/blueprints/app/files/.prettierignore +4 -0
  14. package/blueprints/app/files/config/targets.js +0 -15
  15. package/blueprints/app/files/gitignore +3 -0
  16. package/blueprints/app/files/package.json +15 -16
  17. package/blueprints/app/index.js +23 -2
  18. package/docs/build/classes/Addon.html +1 -1
  19. package/docs/build/classes/AmdTransformAddon.html +1 -1
  20. package/docs/build/classes/Blueprint.html +1 -1
  21. package/docs/build/classes/Builder.html +1 -1
  22. package/docs/build/classes/CLI.html +1 -1
  23. package/docs/build/classes/Command.html +1 -1
  24. package/docs/build/classes/DefaultPackager.html +1 -1
  25. package/docs/build/classes/EmberAddon.html +39 -39
  26. package/docs/build/classes/EmberApp.html +39 -39
  27. package/docs/build/classes/HardwareInfo.html +1 -1
  28. package/docs/build/classes/HistorySupportAddon.html +1 -1
  29. package/docs/build/classes/Instrumentation.html +1 -1
  30. package/docs/build/classes/NodeModulesList.html +1 -1
  31. package/docs/build/classes/NpmTask.html +4 -4
  32. package/docs/build/classes/PackageInfo.html +1 -1
  33. package/docs/build/classes/PackageInfoCache.html +1 -1
  34. package/docs/build/classes/PerBundleAddonCache {.html +1 -1
  35. package/docs/build/classes/Project.html +1 -1
  36. package/docs/build/classes/ServeFilesAddon.html +1 -1
  37. package/docs/build/classes/TestsServerAddon.html +1 -1
  38. package/docs/build/classes/WatcherAddon.html +1 -1
  39. package/docs/build/classes/WindowsSymlinkChecker.html +1 -1
  40. package/docs/build/data.json +36 -36
  41. package/docs/build/files/lib_broccoli_default-packager.js.html +1 -1
  42. package/docs/build/files/lib_broccoli_ember-addon.js.html +1 -1
  43. package/docs/build/files/lib_broccoli_ember-app.js.html +63 -21
  44. package/docs/build/files/lib_cli_cli.js.html +1 -1
  45. package/docs/build/files/lib_models_addon-info.js.html +1 -1
  46. package/docs/build/files/lib_models_addon.js.html +1 -1
  47. package/docs/build/files/lib_models_blueprint.js.html +5 -5
  48. package/docs/build/files/lib_models_builder.js.html +1 -1
  49. package/docs/build/files/lib_models_command.js.html +1 -1
  50. package/docs/build/files/lib_models_hardware-info.js.html +1 -1
  51. package/docs/build/files/lib_models_host-info-cache.js.html +1 -1
  52. package/docs/build/files/lib_models_installation-checker.js.html +1 -1
  53. package/docs/build/files/lib_models_instantiate-addons.js.html +1 -1
  54. package/docs/build/files/lib_models_instrumentation.js.html +1 -1
  55. package/docs/build/files/lib_models_package-info-cache_index.js.html +1 -1
  56. package/docs/build/files/lib_models_package-info-cache_node-modules-list.js.html +1 -1
  57. package/docs/build/files/lib_models_package-info-cache_package-info.js.html +1 -1
  58. package/docs/build/files/lib_models_per-bundle-addon-cache_addon-proxy.js.html +1 -1
  59. package/docs/build/files/lib_models_per-bundle-addon-cache_index.js.html +1 -1
  60. package/docs/build/files/lib_models_per-bundle-addon-cache_target-instance.js.html +1 -1
  61. package/docs/build/files/lib_models_project.js.html +1 -1
  62. package/docs/build/files/lib_models_task.js.html +1 -1
  63. package/docs/build/files/lib_tasks_build-watch.js.html +1 -1
  64. package/docs/build/files/lib_tasks_npm-task.js.html +134 -46
  65. package/docs/build/files/lib_tasks_serve.js.html +1 -1
  66. package/docs/build/files/lib_tasks_server_middleware_broccoli-serve-files_index.js.html +1 -1
  67. package/docs/build/files/lib_tasks_server_middleware_broccoli-watcher_index.js.html +1 -1
  68. package/docs/build/files/lib_tasks_server_middleware_history-support_index.js.html +1 -1
  69. package/docs/build/files/lib_tasks_server_middleware_tests-server_index.js.html +1 -1
  70. package/docs/build/files/lib_tasks_test-server.js.html +1 -1
  71. package/docs/build/files/lib_tasks_transforms_amd_index.js.html +1 -1
  72. package/docs/build/files/lib_utilities_ember-app-utils.js.html +1 -1
  73. package/docs/build/files/lib_utilities_insert-into-file.js.html +1 -1
  74. package/docs/build/files/lib_utilities_is-lazy-engine.js.html +1 -1
  75. package/docs/build/files/lib_utilities_is-yarn-project.js.html +1 -1
  76. package/docs/build/files/lib_utilities_valid-project-name.js.html +1 -1
  77. package/docs/build/files/lib_utilities_will-interrupt-process.js.html +1 -1
  78. package/docs/build/files/lib_utilities_windows-admin.js.html +1 -1
  79. package/docs/build/index.html +2 -2
  80. package/docs/build/modules/ember-cli.html +2 -2
  81. package/docs/build/modules/is-lazy-engine.html +1 -1
  82. package/docs/perf-guide.md +2 -0
  83. package/lib/broccoli/ember-app.js +62 -20
  84. package/lib/commands/addon.js +6 -0
  85. package/lib/commands/init.js +9 -1
  86. package/lib/commands/install.js +9 -1
  87. package/lib/commands/new.js +6 -0
  88. package/lib/models/blueprint.js +4 -4
  89. package/lib/tasks/addon-install.js +10 -1
  90. package/lib/tasks/generate-from-blueprint.js +0 -1
  91. package/lib/tasks/install-blueprint.js +1 -1
  92. package/lib/tasks/npm-install.js +2 -2
  93. package/lib/tasks/npm-task.js +133 -45
  94. package/lib/tasks/npm-uninstall.js +2 -2
  95. package/package.json +2 -2
  96. package/tests/helpers/dist-checker.js +21 -1
  97. package/tests/helpers/ember.js +2 -2
@@ -4,6 +4,7 @@ const fs = require('fs');
4
4
  const path = require('path');
5
5
  // eslint-disable-next-line node/no-unpublished-require
6
6
  const jsdom = require('jsdom');
7
+ const { AssertionError } = require('assert');
7
8
 
8
9
  class CustomResourceLoader extends jsdom.ResourceLoader {
9
10
  constructor(distPath) {
@@ -41,7 +42,26 @@ class DistChecker {
41
42
  this.dom.window.crypto = () => {};
42
43
  return new Promise((resolve, reject) => {
43
44
  // reject if the scripts take longer than 15 seconds to load.
44
- let timeoutId = setTimeout(reject, timeout);
45
+ let timeoutId = setTimeout(() => {
46
+ reject(
47
+ new AssertionError({
48
+ operator: 'evalScripts[Timeout]',
49
+ message: `[dist-checker:${this.distPath}] timeout exceeded: ${timeout}`,
50
+ stackStartFn: this.evalScripts,
51
+ })
52
+ );
53
+ }, timeout);
54
+
55
+ this.dom.window.addEventListener('error', (e) => {
56
+ reject(
57
+ new AssertionError({
58
+ operator: 'evalScripts',
59
+ // this `e` has no stack, so we must make due
60
+ message: `error thrown during evalScript of '${this.distPath}' \n error details: \n message: '${e.message}'\n file: '${e.filename}:${e.colno}'`,
61
+ stackStartFn: this.evalScripts,
62
+ })
63
+ );
64
+ });
45
65
 
46
66
  this.dom.window.addEventListener('load', () => {
47
67
  clearTimeout(timeoutId);
@@ -43,7 +43,7 @@ const willInterruptProcess = require('../../lib/utilities/will-interrupt-process
43
43
  module.exports = function ember(args, options) {
44
44
  let cliInstance;
45
45
  let ui = (options && options.UI) || MockUI;
46
- let pkg = (options && options.package) || path.resolve(__dirname, '..', '..');
46
+ let packagePath = (options && options.package) || path.resolve(__dirname, '..', '..');
47
47
  let disableDependencyChecker = (options && options.disableDependencyChecker) || true;
48
48
  let inputStream = [];
49
49
  let outputStream = [];
@@ -87,7 +87,7 @@ module.exports = function ember(args, options) {
87
87
  // This prevents ember-cli from detecting any other package.json files
88
88
  // forcing ember-cli to act as the globally installed package
89
89
  npmPackage: 'ember-cli',
90
- root: pkg,
90
+ root: packagePath,
91
91
  },
92
92
  });
93
93