Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v2 Addon prep: move everything in to a single package monorepo #452

Merged
merged 6 commits into from
Oct 25, 2023

Conversation

NullVoxPopuli
Copy link
Sponsor Contributor

@NullVoxPopuli NullVoxPopuli commented May 4, 2023

Context, Plan, etc: https://gist.github.com/NullVoxPopuli/eafc7dad6547de5e730098498b829e1f

@ember/test-waiters specific plan here: #458


This PR moves the addon to a single package monorepo to prepare for a good few test apps for ensuring we keep compatibility as we prepare for v2-addon-ness.

@NullVoxPopuli NullVoxPopuli marked this pull request as ready for review October 12, 2023 20:30
- uses: actions/checkout@v4
- uses: wyvox/action-setup-pnpm@v3
with:
node-version: 18.18.1

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@NullVoxPopuli looks strange we specify Node version only in this job, is that miss or really necessary?

Copy link
Sponsor Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's been needed until default node is this specific patch, because 18.17 and earlier was successful with webpack, but 18.18, (and 20+) had an issue with libuv, nodejs/node#49911

the specifying specifically, rather than relying on the volta config (or literally any other node version file), but action/setup-node (encapsulated by the wyvox action here) doesn't correctly support package.json as a "node version file" -- I've submitted a PR here: actions/setup-node#864 (comment) which should automatically propagate once merged and released, but it's been slow going getting anyone to look at (I don't really know who to ping)

libpeerconnection.log
npm-debug.log*
testem.log
yarn-error.log

# ember-try

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

seem like all the below lines not needed any more and only copy what we have in addon/.gitignore?

Copy link
Sponsor Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, I'll address in a follow up

@@ -43,7 +43,7 @@ const embroider = {

module.exports = async function () {
return {
useYarn: true,
usePnpm: true,

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IMO it's fine to bundle, maybe we could do this in separate PR. Which may slow down things considering this was idle for some time already.

Copy link
Sponsor Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, I'm with ya, it's just, it needs to happen anyway, and as as you state, this PR's been open for ages, I figured since both changes (move to single package monorepo, and pnpm) are pretty small, and internal changes, it's better to combine rather than configure ci.yml entirely differently twice for each of the changes, if split.

"prettier": "^2.5.1",
"promise-polyfill": "^8.2.0",
"qunit": "^2.16.0",
"release-it": "^14.14.3",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not an action: in a follow up we may want to extract this to root level

Copy link
Sponsor Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

100% -- I have to finish release-it-plugins/workspaces#110 first -- thankfully we have a while before we'll want to release these changes, per: #458

"lint": "pnpm --filter '*' lint:fix",
"start": "concurrently 'npm:start:*' --restart-after 5000 --prefix-colors cyan,white,yellow",
"start:addon": "pnpm --filter @ember/test-waiters start -- --no-watch.clearScreen",
"start:test-app": "pnpm --filter test-app start",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

technically this is not yet ready, I believe we can keep as it will appear in next PR.

Copy link
Sponsor Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeep

@@ -0,0 +1,3 @@
packages:
- addon
- test-app

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would it cause any issues when workspace is missing?

Copy link
Sponsor Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nope

@SergeAstapov
Copy link

This is great! Let's do it 🚀 !

@chancancode chancancode merged commit 12aeef9 into emberjs:master Oct 25, 2023
14 checks passed
@NullVoxPopuli NullVoxPopuli deleted the to-monorepo branch October 25, 2023 18:04
@github-actions github-actions bot mentioned this pull request Mar 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants