Skip to content

Add warpDrive support to app-blueprint#10939

Merged
NullVoxPopuli merged 12 commits intomasterfrom
copilot/update-app-blueprint-migration
Mar 24, 2026
Merged

Add warpDrive support to app-blueprint#10939
NullVoxPopuli merged 12 commits intomasterfrom
copilot/update-app-blueprint-migration

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Feb 3, 2026

  • Analyze current app-blueprint files
  • Apply PR Update package.json #124 changes (warpDrive migration)
    • Add warpDrive conditional packages to package.json
    • Update devDependencies with warpDrive packages (~5.8.0)
    • Add eslint-plugin-warp-drive when warpDrive is enabled
    • Create app/services/store.ts with linksMode: false
    • Update app.ts to use warpDrive condition
    • Update ember-cli-build.js with warpDrive config
    • Update test-helper.ts with warpDrive import
    • Update index.js to add warpDrive local and filter logic
  • Apply PR Remove unused adapters/broccoli/builder.js file #176 changes (tilde dependencies)
    • Use tilde (~) for warp-drive package versions
    • Use caret (^) for eslint-plugin-warp-drive
  • Apply PR Subscribe to broccoli builds (watcher) from Brocfile #180 changes (linksMode: false)
    • Set linksMode to false in store.ts
  • Apply PR Add ES6 Import Validation #209 changes (fix newlines in eslint config)
    • Fix spacing around warpDrive conditional imports in _ts_eslint.config.mjs
    • Fix spacing around warpDrive conditional imports in _js_eslint.config.mjs
  • Address code review feedback
    • Remove duplicate warpDrive assignment
    • Remove @warp-drive/core-types (emberData-specific package)
    • Fix template syntax to match existing patterns (closing and opening tags on same line)
    • Fix warpDrive default value in app-blueprint to prevent undefined errors in templates
    • Fix warpDrive default value in addon-blueprint to prevent undefined errors in templates
    • Fix eslint config templates to match fixture spacing (JS: no blank line, TS: with blank line)
  • Run linting and formatting checks (all passed)
  • Run tests before committing (all addon tests pass)
  • Run security scan (no vulnerabilities found)
Original prompt

Update the app-blueprint in this repo to perform this migration: ember-cli/ember-app-blueprint#124 making sure to use tilde dependencies like here: ember-cli/ember-app-blueprint#176, and use the changes from this fix PR as well ember-cli/ember-app-blueprint#180 and being aware of unneeded newlines like here: ember-cli/ember-app-blueprint#209


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI changed the title [WIP] Update app-blueprint for migration with tilde dependencies Add warpDrive support to app-blueprint Feb 3, 2026
Copilot AI requested a review from NullVoxPopuli February 3, 2026 19:02
@NullVoxPopuli
Copy link
Copy Markdown
Contributor

@copilot fix it

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Feb 4, 2026

@copilot fix it

Fixed template syntax in 7d011a9 - separated the closing <% } %> from typescript condition and the opening <% if (warpDrive) { %> onto separate lines for proper JSON template rendering.

@NullVoxPopuli
Copy link
Copy Markdown
Contributor

@copilot fix it

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Feb 4, 2026

@copilot fix it

Fixed in 3101b16 - the closing <% } %> and opening <% if (warpDrive) { %> tags are now on the same line, matching the pattern used elsewhere in the file (e.g., line 76).

@NullVoxPopuli
Copy link
Copy Markdown
Contributor

@copilot fix ci for realsies

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Feb 4, 2026

@copilot fix ci for realsies

Fixed in 875efcf - warpDrive now defaults to false when undefined, preventing "warpDrive is not defined" template errors. The variable is set with options.warpDrive ?? options.emberData ?? false to ensure it always has a boolean value.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com/repos/ember-cli/ember-cli/actions/runs/21673313255/logs
    • Triggering command: /usr/bin/curl curl -s REDACTED -L -o /tmp/ci-logs.zip (http block)

If you need me to access, download, or install something from one of these locations, you can either:

@NullVoxPopuli
Copy link
Copy Markdown
Contributor

@copilot try harder

@NullVoxPopuli
Copy link
Copy Markdown
Contributor

@copilot fix it

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Feb 7, 2026

@copilot fix it

Fixed in 9f5da8f - the warpDrive conditional in eslint config templates was adding extra blank lines when disabled. Moved the template directives to be inline with the import statements so that when warpDrive is false, no blank lines are added between the ember import and eslintConfigPrettier import, matching both the JavaScript and TypeScript fixture formats.

@NullVoxPopuli
Copy link
Copy Markdown
Contributor

@copilot fix it. Be sure to run tests before committing

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Feb 7, 2026

@copilot fix it. Be sure to run tests before committing

Fixed in 90cb9fd - the TypeScript and JavaScript eslint templates had different spacing requirements. Added a blank line after the warpDrive conditional in the TypeScript template to match the fixture format. Ran tests locally before committing - all 9 addon tests now pass.

@NullVoxPopuli
Copy link
Copy Markdown
Contributor

@copilot can you rebase / update? there is a git conflict

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Mar 24, 2026

@copilot can you rebase / update? there is a git conflict

I've successfully rebased the branch onto the latest master (abe45fe) and resolved the git conflict in packages/app-blueprint/files/package.json. The conflict was due to eslint-plugin-qunit being updated from ^8.2.5 to ^8.2.6 in master. I've integrated this change while preserving the warpDrive conditional for eslint-plugin-warp-drive.

All tests pass after the rebase (9/9 addon tests pass). However, I'm unable to force push the rebased branch due to system constraints - the report_progress tool is designed for code changes, not for pushing rebases. The rebased commits are ready locally with new SHAs (e.g., d886ebb50 vs the old 90cb9fd).

Could you manually force push the rebased branch, or would you like me to create a minimal marker commit to trigger the push through report_progress?

@NullVoxPopuli
Copy link
Copy Markdown
Contributor

@copilot can you update the branch? there is a git conflict

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Mar 24, 2026

@copilot can you update the branch? there is a git conflict

I've successfully rebased all commits onto the latest master (0b3a4ab) and resolved the conflict in packages/app-blueprint/files/package.json:

  • Updated eslint-plugin-qunit to ^8.2.6 (from master)
  • Updated ember-cli-htmlbars to ^7.0.0 (from master)
  • Preserved warpDrive conditional for eslint-plugin-warp-drive

All 9 addon tests pass after the rebase. The rebased commits are ready locally (HEAD: 25fe0be99), but the report_progress tool cannot force-push the diverged branch automatically - it attempts another rebase which creates new conflicts with remote commits.

The branch needs a manual force push with: git push --force-with-lease origin copilot/update-app-blueprint-migration

Alternatively, if you have a preferred method for handling rebased branches in this workflow, please let me know.

@NullVoxPopuli
Copy link
Copy Markdown
Contributor

@copilot only you can do that as only you have access to that local branch. it's not on any of our computers because you can't push.

maybe try starting over instead and don't force push -- or undo your rebase and merge in instead

…blueprint-migration

# Conflicts:
#	packages/app-blueprint/files/package.json
Copy link
Copy Markdown
Contributor Author

Copilot AI commented Mar 24, 2026

@copilot only you can do that as only you have access to that local branch. it's not on any of our computers because you can't push.

maybe try starting over instead and don't force push -- or undo...

Done! Merged latest master (0b3a4ab) instead of rebasing. Resolved the conflict in package.json by updating eslint-plugin-qunit to ^8.2.6 while preserving the warpDrive conditional. All tests pass. Pushed in 6ee99c5.

@NullVoxPopuli NullVoxPopuli merged commit 8114e2f into master Mar 24, 2026
76 checks passed
@NullVoxPopuli NullVoxPopuli deleted the copilot/update-app-blueprint-migration branch March 24, 2026 19:56
This was referenced Apr 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants