Conversation
|
To view this pull requests documentation preview, visit the following URL: Documentation is deployed and generated using docs.page. |
Package Version ReportThe following packages have been updated: |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## next #617 +/- ##
==========================================
+ Coverage 60.94% 68.49% +7.55%
==========================================
Files 196 203 +7
Lines 11208 11387 +179
==========================================
+ Hits 6831 7800 +969
+ Misses 4377 3587 -790 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
83d1d90 to
c4a8051
Compare
c4a8051 to
efeb132
Compare
efeb132 to
e80d9bc
Compare
There was a problem hiding this comment.
Pull request overview
This PR refactors the Jaspr CLI to support the new dart install jaspr_cli installation method, removes the dependency on the webdev package, and improves logging throughout the codebase. The core changes involve implementing a custom daemon infrastructure to replace webdev's daemon functionality, creating a new DevProxy class to manage web development workflow, and updating all references from webdev to the new custom implementation.
Key changes:
- Implemented custom daemon infrastructure (daemon, domain, daemon_domain, logger) to replace webdev dependency
- Created DevProxy class to manage DWDS integration and build workflows independently
- Updated dependency versions and removed webdev from dependencies
Reviewed changes
Copilot reviewed 30 out of 31 changed files in this pull request and generated 9 comments.
Show a summary per file
| File | Description |
|---|---|
| pubspec.lock | Updates transitive dependencies after removing webdev and upgrading related packages (build_daemon, dds, dwds, vm_service, etc.) |
| packages/jaspr_cli/pubspec.yaml | Removes webdev dependency, updates dwds to fixed version 24.3.10, reorganizes dependencies, and adds new required packages (dds, build_daemon) |
| packages/jaspr_cli/test/domains/scopes_test.dart | Updates import from webdev daemon to custom daemon implementation |
| packages/jaspr_cli/test/domains/html_test.dart | Updates import from webdev daemon to custom daemon implementation |
| packages/jaspr_cli/lib/src/project.dart | Adds utility constants and functions for dart executable path detection, SDK version, and DevTools path |
| packages/jaspr_cli/lib/src/logging.dart | Updates builder log handling to show progress indicator when not in verbose mode |
| packages/jaspr_cli/lib/src/helpers/proxy_helper.dart | Refactors to use DevProxy instead of direct webdev integration, removes SSE proxy handler |
| packages/jaspr_cli/lib/src/helpers/flutter_helpers.dart | Updates serveFlutter to use constant for flutter proxy port instead of parameter |
| packages/jaspr_cli/lib/src/helpers/daemon_helper.dart | Removes webdev imports and DaemonLogger implementation (moved to separate file) |
| packages/jaspr_cli/lib/src/domains/scopes_domain.dart | Updates imports from webdev to custom daemon implementation |
| packages/jaspr_cli/lib/src/domains/html_domain.dart | Updates imports from webdev to custom daemon implementation |
| packages/jaspr_cli/lib/src/dev/util.dart | New file providing utility functions for build daemon connection, port reading, and argument parsing |
| packages/jaspr_cli/lib/src/dev/dev_proxy.dart | New file implementing DevProxy class to manage DWDS integration and web development workflow |
| packages/jaspr_cli/lib/src/dev/client_workflow.dart | Refactors to use DevProxy instead of webdev's ServerManager, simplifies configuration |
| packages/jaspr_cli/lib/src/dev/client_domain.dart | Updates to work with DevProxy instead of ServerManager |
| packages/jaspr_cli/lib/src/dev/chrome.dart | Implements custom Chrome management replacing webdev's Chrome class |
| packages/jaspr_cli/lib/src/daemon/logger.dart | New file implementing DaemonLogger (moved from daemon_helper) |
| packages/jaspr_cli/lib/src/daemon/domain.dart | New file implementing Domain base class for daemon functionality |
| packages/jaspr_cli/lib/src/daemon/daemon_domain.dart | New file implementing DaemonDomain for daemon protocol |
| packages/jaspr_cli/lib/src/daemon/daemon.dart | New file implementing core Daemon class for command routing |
| packages/jaspr_cli/lib/src/commands/tooling_daemon_command.dart | Adds import for DaemonLogger from new location |
| packages/jaspr_cli/lib/src/commands/serve_command.dart | Updates to use custom daemon and DevProxy |
| packages/jaspr_cli/lib/src/commands/doctor_command.dart | Updates to use dartSdkVersion and dartExecutable from project.dart |
| packages/jaspr_cli/lib/src/commands/dev_command.dart | Refactors to use DevProxy, updates logging messages to use "compilers" plural, updates port constants |
| packages/jaspr_cli/lib/src/commands/daemon_command.dart | Adds DaemonLogger import and updates to use DevProxy |
| packages/jaspr_cli/lib/src/commands/clean_command.dart | Updates to use port constants from project.dart |
| packages/jaspr_cli/lib/src/commands/build_command.dart | Updates to use new startBuildDaemon from util.dart, improves logging messages, updates port constants |
| packages/jaspr_cli/lib/src/commands/base_command.dart | Makes tag parameter optional in watchProcess method |
| packages/jaspr_cli/analysis_options.yaml | Removes sort_pub_dependencies linter rule |
| packages/jaspr/CHANGELOG.md | Documents breaking change for installation method and CLI improvements |
| apps/website/lib/pages/home/2_devex/items/1_run.dart | Updates example output from "compiler" to "compilers" |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
This is an exciting fix with great cleanup @schultek, thanks so much. Is it ready to test out? |
|
It's ready to test, I'm just working on improving the unit test situation for the cli right now. |
|
@parlough This is ready for review now, if you have time. |
# Conflicts: # modules/jaspr-code/CHANGELOG.md # modules/jaspr-code/package.json # packages/jaspr/CHANGELOG.md # packages/jaspr_cli/lib/src/commands/build_command.dart # packages/jaspr_cli/lib/src/commands/dev_command.dart # packages/jaspr_cli/lib/src/helpers/daemon_helper.dart # packages/jaspr_cli/lib/src/helpers/proxy_helper.dart
Description
Resolves #569
Fixes #254
Fixes #238
Type of Change
Ready Checklist
the semantic_changelog format.
///).