ember-cli 6.6.0-beta.1 → 6.7.0-alpha.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 (84) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/RELEASE.md +154 -1
  3. package/docs/build/data.json +69 -96
  4. package/lib/commands/init.js +1 -1
  5. package/lib/models/blueprint.js +34 -20
  6. package/lib/tasks/create-and-step-into-directory.js +1 -1
  7. package/lib/tasks/git-init.js +1 -1
  8. package/lib/tasks/npm-task.js +1 -1
  9. package/lib/utilities/lint-fix.js +1 -1
  10. package/package.json +8 -4
  11. package/{blueprints/addon → packages/addon-blueprint}/index.js +12 -7
  12. package/packages/addon-blueprint/node_modules/.bin/sort-package-json +21 -0
  13. package/packages/addon-blueprint/package.json +23 -0
  14. package/{blueprints/app → packages/app-blueprint}/files/config/ember-cli-update.json +1 -1
  15. package/{blueprints/app → packages/app-blueprint}/files/package.json +14 -14
  16. package/{blueprints/app → packages/app-blueprint}/index.js +7 -7
  17. package/packages/app-blueprint/package.json +17 -0
  18. package/packages/blueprint-blueprint/package.json +4 -0
  19. package/packages/blueprint-model/package.json +13 -0
  20. package/{lib/models → packages/blueprint-model/utilities}/edit-file-diff.js +1 -1
  21. package/{lib/models → packages/blueprint-model/utilities}/file-info.js +2 -2
  22. package/pnpm-workspace.yaml +2 -0
  23. /package/{blueprints/addon → packages/addon-blueprint}/additional-package.json +0 -0
  24. /package/{blueprints/addon → packages/addon-blueprint}/files/.github/workflows/ci.yml +0 -0
  25. /package/{blueprints/addon → packages/addon-blueprint}/files/CONTRIBUTING.md +0 -0
  26. /package/{blueprints/addon → packages/addon-blueprint}/files/LICENSE.md +0 -0
  27. /package/{blueprints/addon → packages/addon-blueprint}/files/README.md +0 -0
  28. /package/{blueprints/addon → packages/addon-blueprint}/files/addon/.gitkeep +0 -0
  29. /package/{blueprints/addon → packages/addon-blueprint}/files/app/.gitkeep +0 -0
  30. /package/{blueprints/addon → packages/addon-blueprint}/files/config/ember-try.js +0 -0
  31. /package/{blueprints/addon → packages/addon-blueprint}/files/config/optional-features.json +0 -0
  32. /package/{blueprints/addon → packages/addon-blueprint}/files/ember-cli-build.js +0 -0
  33. /package/{blueprints/addon → packages/addon-blueprint}/files/index.js +0 -0
  34. /package/{blueprints/addon → packages/addon-blueprint}/files/npmignore +0 -0
  35. /package/{blueprints/addon → packages/addon-blueprint}/files/tsconfig.declarations.json +0 -0
  36. /package/{blueprints/addon → packages/addon-blueprint}/files/tsconfig.json +0 -0
  37. /package/{blueprints/app → packages/app-blueprint}/files/.editorconfig +0 -0
  38. /package/{blueprints/app → packages/app-blueprint}/files/.ember-cli +0 -0
  39. /package/{blueprints/app → packages/app-blueprint}/files/.github/workflows/ci.yml +0 -0
  40. /package/{blueprints/app → packages/app-blueprint}/files/.prettierignore +0 -0
  41. /package/{blueprints/app → packages/app-blueprint}/files/.prettierrc.js +0 -0
  42. /package/{blueprints/app → packages/app-blueprint}/files/.stylelintignore +0 -0
  43. /package/{blueprints/app → packages/app-blueprint}/files/.stylelintrc.js +0 -0
  44. /package/{blueprints/app → packages/app-blueprint}/files/.template-lintrc.js +0 -0
  45. /package/{blueprints/app → packages/app-blueprint}/files/.watchmanconfig +0 -0
  46. /package/{blueprints/app → packages/app-blueprint}/files/README.md +0 -0
  47. /package/{blueprints/app → packages/app-blueprint}/files/_js_eslint.config.mjs +0 -0
  48. /package/{blueprints/app → packages/app-blueprint}/files/_ts_eslint.config.mjs +0 -0
  49. /package/{blueprints/app → packages/app-blueprint}/files/app/app.ts +0 -0
  50. /package/{blueprints/app → packages/app-blueprint}/files/app/components/.gitkeep +0 -0
  51. /package/{blueprints/app → packages/app-blueprint}/files/app/config/environment.d.ts +0 -0
  52. /package/{blueprints/app → packages/app-blueprint}/files/app/controllers/.gitkeep +0 -0
  53. /package/{blueprints/app → packages/app-blueprint}/files/app/deprecation-workflow.ts +0 -0
  54. /package/{blueprints/app → packages/app-blueprint}/files/app/helpers/.gitkeep +0 -0
  55. /package/{blueprints/app → packages/app-blueprint}/files/app/index.html +0 -0
  56. /package/{blueprints/app → packages/app-blueprint}/files/app/models/.gitkeep +0 -0
  57. /package/{blueprints/app → packages/app-blueprint}/files/app/router.ts +0 -0
  58. /package/{blueprints/app → packages/app-blueprint}/files/app/routes/.gitkeep +0 -0
  59. /package/{blueprints/app → packages/app-blueprint}/files/app/styles/app.css +0 -0
  60. /package/{blueprints/app → packages/app-blueprint}/files/app/templates/_js_application.gjs +0 -0
  61. /package/{blueprints/app → packages/app-blueprint}/files/app/templates/_ts_application.gts +0 -0
  62. /package/{blueprints/app → packages/app-blueprint}/files/app/templates/application.hbs +0 -0
  63. /package/{blueprints/app → packages/app-blueprint}/files/config/environment.js +0 -0
  64. /package/{blueprints/app → packages/app-blueprint}/files/config/optional-features.json +0 -0
  65. /package/{blueprints/app → packages/app-blueprint}/files/config/targets.js +0 -0
  66. /package/{blueprints/app → packages/app-blueprint}/files/ember-cli-build.js +0 -0
  67. /package/{blueprints/app → packages/app-blueprint}/files/gitignore +0 -0
  68. /package/{blueprints/app → packages/app-blueprint}/files/public/robots.txt +0 -0
  69. /package/{blueprints/app → packages/app-blueprint}/files/testem.js +0 -0
  70. /package/{blueprints/app → packages/app-blueprint}/files/tests/helpers/index.ts +0 -0
  71. /package/{blueprints/app → packages/app-blueprint}/files/tests/index.html +0 -0
  72. /package/{blueprints/app → packages/app-blueprint}/files/tests/integration/.gitkeep +0 -0
  73. /package/{blueprints/app → packages/app-blueprint}/files/tests/test-helper.ts +0 -0
  74. /package/{blueprints/app → packages/app-blueprint}/files/tests/unit/.gitkeep +0 -0
  75. /package/{blueprints/app → packages/app-blueprint}/files/tsconfig.json +0 -0
  76. /package/{blueprints/app → packages/app-blueprint}/files/types/global.d.ts +0 -0
  77. /package/{blueprints/blueprint → packages/blueprint-blueprint}/files/blueprints/__name__/files/.gitkeep +0 -0
  78. /package/{blueprints/blueprint → packages/blueprint-blueprint}/files/blueprints/__name__/index.js +0 -0
  79. /package/{blueprints/blueprint → packages/blueprint-blueprint}/index.js +0 -0
  80. /package/{lib → packages/blueprint-model}/utilities/directory-for-package-name.js +0 -0
  81. /package/{lib/experiments/index.js → packages/blueprint-model/utilities/experiments.js} +0 -0
  82. /package/{lib → packages/blueprint-model}/utilities/open-editor.js +0 -0
  83. /package/{lib → packages/blueprint-model}/utilities/prepend-emoji.js +0 -0
  84. /package/{lib → packages/blueprint-model}/utilities/process-template.js +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,45 @@
1
1
  # ember-cli Changelog
2
2
 
3
+ ## Release (2025-06-30)
4
+
5
+ * @ember-tooling/classic-build-addon-blueprint 6.7.0-alpha.2 (patch)
6
+ * @ember-tooling/classic-build-app-blueprint 6.7.0-alpha.2 (patch)
7
+ * @ember-tooling/blueprint-blueprint 0.0.1 (patch)
8
+ * @ember-tooling/blueprint-model 0.0.1 (patch)
9
+ * ember-cli 6.7.0-alpha.2 (patch)
10
+
11
+ #### :house: Internal
12
+ * Other
13
+ * [#10735](https://github.com/ember-cli/ember-cli/pull/10735) remove unnecessary project override ([@mansona](https://github.com/mansona))
14
+ * `@ember-tooling/classic-build-addon-blueprint`, `@ember-tooling/classic-build-app-blueprint`, `@ember-tooling/blueprint-blueprint`, `@ember-tooling/blueprint-model`
15
+ * [#10736](https://github.com/ember-cli/ember-cli/pull/10736) update all sub-packages to have the @ember-tooling prefix ([@mansona](https://github.com/mansona))
16
+ * [#10671](https://github.com/ember-cli/ember-cli/pull/10671) Implement the built in app, addon, and blueprint blueprints by package lookup ([@mansona](https://github.com/mansona))
17
+
18
+ #### Committers: 1
19
+ - Chris Manson ([@mansona](https://github.com/mansona))
20
+
21
+ ## Release (2025-06-16)
22
+
23
+ * ember-cli 6.7.0-alpha.1 (minor)
24
+
25
+ #### :rocket: Enhancement
26
+ * `ember-cli`
27
+ * [#10705](https://github.com/ember-cli/ember-cli/pull/10705) add `--strict` flag for new app and addon generation ([@mansona](https://github.com/mansona))
28
+
29
+ #### :memo: Documentation
30
+ * `ember-cli`
31
+ * [#10724](https://github.com/ember-cli/ember-cli/pull/10724) Update RELEASE.md to fully document new release-plan setup ([@mansona](https://github.com/mansona))
32
+
33
+ #### :house: Internal
34
+ * `ember-cli`
35
+ * [#10731](https://github.com/ember-cli/ember-cli/pull/10731) Prepare Alpha 6.7.0 ([@mansona](https://github.com/mansona))
36
+ * [#10728](https://github.com/ember-cli/ember-cli/pull/10728) Prepare Beta 6.6.0 ([@mansona](https://github.com/mansona))
37
+ * [#10726](https://github.com/ember-cli/ember-cli/pull/10726) use patched github-changelog for properly rolling up beta changelog ([@mansona](https://github.com/mansona))
38
+ * [#10717](https://github.com/ember-cli/ember-cli/pull/10717) pass --publish-branch to release-plan publish ([@mansona](https://github.com/mansona))
39
+
40
+ #### Committers: 1
41
+ - Chris Manson ([@mansona](https://github.com/mansona))
42
+
3
43
  ## Release (2025-06-16)
4
44
 
5
45
  * ember-cli 6.6.0-beta.1 (minor)
package/RELEASE.md CHANGED
@@ -1,3 +1,156 @@
1
1
  # Release Process
2
2
 
3
- This document has been updated and is being actively managed on the default branch of this repo. Please refer to the version on the default branch to follow the release process: https://github.com/ember-cli/ember-cli/blob/master/RELEASE.md
3
+ `ember-cli` follows the same channel based release process that Ember does:
4
+
5
+ * `release` - This branch represents the `latest` dist-tag on NPM
6
+ * `beta` - This branch represents the `beta` dist-tag on NPM
7
+ * `master` - The branch represents the `alpha` dist-tag on NPM
8
+
9
+ Most changes should be made as a PR that targets the `master` branch and then makes their way through `beta` and `release` over the course of 12 weeks as part of the Ember release train. Generally speaking we do not backport functional changes to `beta` or `release` but we can if needs be.
10
+
11
+ This release process is managed by [release-plan](https://github.com/embroider-build/release-plan) which means that all changes should be made as a pull request to make sure it is captured in the changelog.
12
+
13
+ ## Release process overview
14
+
15
+ During the release week each of the versions are effectively "promoted" i.e. the current `beta` version is released as `latest`, the current `alpha` version is released as `beta` and a **new** `alpha` version is created. This requires PRs to each of the active branches to update ember-source (and potentially ember-data) versions. Each of those PRs that update dependencies should be marked as `enhancement` if we are releasing a minor version.
16
+
17
+ The release process during release week should look like this:
18
+
19
+ - Do an intial stable release from the `release` branch
20
+ - Merge `release` into `beta`
21
+ - Do a `beta` release
22
+ - Merge `beta` into `master`
23
+ - Do an `alpha` release
24
+
25
+
26
+ ### Initial Stable Release from the `release` branch
27
+
28
+ - fetch latest from origin `git fetch`
29
+ - create a new branch to do the release e.g. `git checkout --no-track -b release-plan-6-4 origin/release`
30
+ - note: branches named like `release-6-4` are used to manage LTS patch releases so we don't want to create a branch with that name at this time
31
+ - Merge `origin/beta` into the release branch
32
+ - `git merge origin/beta --no-ff`
33
+ - **make sure to not update the .release-plan file** this should only ever be changed by the release-plan github scripts
34
+ - make sure to not update the version in the package.json during this step, this will be release-plan's job
35
+ - Update blueprint dependencies to latest
36
+
37
+ ```
38
+ node ./dev/update-blueprint-dependencies.js --ember-source=latest --ember-data=latest
39
+ ```
40
+
41
+ - commit this update `git commit -am "update blueprint dependencies to latest"`
42
+ - push and open a PR targeting `release`
43
+ - mark this PR as an `enhancement` if it is a minor release
44
+ - check that everything is ok
45
+ - merge branch
46
+ - check that the `Prepare Release` PR has been correctly opened by `release-plan`
47
+ - Merge the `Prepare Release` branch when you are ready to release
48
+ - Check the `Release Stable` GitHub action to make sure the release succeeded
49
+
50
+ ### Beta release from the `beta` branch
51
+
52
+ - fetch latest from origin `git fetch`
53
+ - create a new branch to merge `release` into `beta` e.g. `git checkout --no-track -b merge-release origin/beta`
54
+ - merge release into this new branch e.g. `git merge origin/release --no-ff`
55
+ - **make sure to not update the .release-plan file** this should only ever be changed by the release-plan github scripts
56
+ - merge master into this new branch too e.g. `git merge origin/master --no-ff`
57
+ - **make sure to not update the .release-plan file** this should only ever be changed by the release-plan github scripts
58
+ - update the alpha version in package.json to be a beta i.e. if the incoming merge is `"version": "6.6.0-alpha.3",` update it to `"version": "6.6.0-beta.0",`
59
+ - Update blueprint dependencies to beta
60
+
61
+ ```
62
+ node ./dev/update-blueprint-dependencies.js --ember-source=beta --ember-data=beta
63
+ ```
64
+
65
+ - commit this update `git commit -am "update blueprint dependencies to beta"`
66
+ - push and open a PR targeting `beta`
67
+ - mark this PR as an `enchancement` if the next beta is a minor release
68
+ - check that everything is ok i.e. CI passes
69
+ - merge the `merge-release` branch into `beta` in GitHub
70
+ - check that the `Prepare Beta Release` PR has been correctly opened by `release-plan`
71
+ - note: the release-plan config will automatically make this version a pre-release
72
+ - Merge the `Prepare Beta Release` when you are ready to release the next beta version
73
+ - Check the `Release Beta` GitHub action to make sure the release succeeded
74
+
75
+
76
+ ### Alpha release from the `master` branch
77
+
78
+ - fetch latest from origin `git fetch`
79
+ - create a new branch to merge `beta` into `master` e.g. `git checkout --no-track -b merge-beta origin/master`
80
+ - merge beta into this new branch e.g. `git merge origin/beta --no-ff`
81
+ - **make sure to not update the .release-plan file** this should only ever be changed by the release-plan github scripts
82
+ - manually update the version in pacakge.json to be the next alpha.
83
+ - e.g. if the current alpha is `"version": "6.6.0-alpha.3",` update it to be `"version": "6.7.0-alpha.0",`
84
+ - commit this change to the version in package.json: `git commit -am "update to the next alpha version"`
85
+ - Update blueprint dependencies to alpha
86
+
87
+ ```
88
+ node ./dev/update-blueprint-dependencies.js --ember-source=alpha --ember-data=canary
89
+ ```
90
+
91
+ - commit this update `git commit -am "update blueprint dependencies to alpha"`
92
+ - push and open a PR targeting `master`
93
+ - mark this PR as an `enchancement` if the next alpha is a minor release
94
+ - check that everything is ok i.e. CI passes
95
+ - merge the `merge-beta` branch into `master` in GitHub
96
+ - check that the `Prepare Alpha Release` PR has been correctly opened by `release-plan`
97
+ - Merge the `Prepare Alpha Release` when you are ready to release the next alpha version
98
+ - Check the `Release Alpha` GitHub action to make sure the release succeeded
99
+
100
+
101
+ ## Changelog updates
102
+
103
+ `release-plan` is designed to automatically generate a Changelog that includes the titles of every PR that was merged since the last release. As we would like to make use of this auto-generated Changelog we need to make sure that PRs are named correctly and the Changelog included in the "Prepare Release" PRs are what we were expecting.
104
+
105
+ If you want to change the content of the Changelog then you should update the PR titles you want to update and re-run the `Prepare Release` CI job for that branch. If there are PRs that you would prefer to exclude from the changelog (such as the `merge-beta` or `merge-release` PRs) then you can add the `ignore` label to the PR and they will be removed from the changelog.
106
+
107
+ ## Patch Releases
108
+
109
+ Now that we're using release-plan for all releases, patch releases have become super easy! Every time you merge a PR to any branch that is being released with `release-plan` a new `Prepare Release` PR will be created. When you merge this `Prepare Release` branch it will automatically release the new Patch version.
110
+
111
+
112
+ ## Post-release Automation
113
+
114
+ There is a GitHub Actions workflow, https://github.com/ember-cli/ember-cli/actions/workflows/sync-output-repos.yml that pushes various invocations of the blueprint generator to "output repos".
115
+ After release, make sure that all the jobs are "green" / succeeded.
116
+
117
+ <details><summary>What to check afterwards</summary>
118
+
119
+ - Apps: https://github.com/ember-cli/ember-app-output
120
+ - Addons: https://github.com/ember-cli/ember-addon-output
121
+
122
+ Both of these have a git-tag per release version
123
+
124
+ ### Online Editors
125
+
126
+ Multiple editors could be supported, but right now, we only "customize" for stackblitz.
127
+
128
+ https://github.com/ember-cli/editor-output/
129
+ - [a branch for each scenario + release version](https://github.com/ember-cli/editor-output/branches/active)
130
+ - `${editorName}-{addon,app}-output{-'typescript'?}{-version}`
131
+ - and the "latest release" (non beta) will not have a version at the end
132
+ - This includes [app, addon] X [javascript, typescript]
133
+
134
+ #### StackBlitz
135
+
136
+ To make sure StackBlitz runs in their supported browsers (Chrome and FireFox, as of 2023-08-15)
137
+
138
+ - App + JS: https://stackblitz.com/github/ember-cli/editor-output/tree/stackblitz-app-output
139
+ - App + TS: https://stackblitz.com/github/ember-cli/editor-output/tree/stackblitz-app-output-typescript
140
+ - Addon + JS: https://stackblitz.com/github/ember-cli/editor-output/tree/stackblitz-addon-output
141
+ - Addon + TS: https://stackblitz.com/github/ember-cli/editor-output/tree/stackblitz-addon-output-typescript
142
+
143
+ The App + JS, and App + TS are linked from Stackblitz's frontend templates UI: https://stackblitz.com/?starters=frontend
144
+
145
+ </details>
146
+
147
+ <details><summary>if problems arise</summary>
148
+
149
+ Script for updating addon/app repos: https://github.com/ember-cli/ember-cli/blob/master/dev/update-output-repos.js
150
+ Script for updating editors: https://github.com/ember-cli/ember-cli/blob/master/dev/update-editor-output-repos.js
151
+
152
+ Customizations on top of the default blueprint(s) are found here: https://github.com/ember-cli/ember-cli/tree/master/dev/online-editors/stackblitz
153
+ The intent for these customizations is to either be very light, or not needed at all.
154
+ If an online editor breaks with our default blueprint, then it's most likely that _we_ have a bug (or something _very goofy_).
155
+
156
+ </details>