Description
2025-06-11: Updated to introduce dart install
, see #60889 (comment) for a detailed design.
We should change dart pub global
to use AOT instead of JIT.
Also, we should not let pub
need to worry about how dart is compiled and run, dart
should be responsible for that.
@jonasfj suggested that dart pub global activate
should use dart build exe
.
Subsequently, $PUB_CACHE/bin/
could contain symlinks to the executables in $PUB_CACHE/global_packages/<package_name>/outputdir/<package_name>.exe
.
This would
- remove logic from pub-global about how Dart is compiled,
- speedup startup of pub-global activated packages, and
- make native assets work ([native_assets] Support
dart pub global run
#56044).
Since the executables would include a dart precompiled runtime. The Dart version which is running would be the one that was used to run dart pub global activate
. If we ever want to re-activate a package with a different Dart SDK version, we might need some way to detect what version of the Dart SDK was used to compile the executable.
@jonasfj and @sigurdm probably know much more constraints and considerations. I'm filing an issue so that we have something to point to.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status