Files
sdk/pkg/macros
Sigurd Meldgaard 2fe05bd568 Reland "Migrate to use pub workspace"
This is a reland of commit b9b77058a9

Original change's description:
> Migrate to use pub workspace
>
> Use `pub get` to generate `.dart_tool/package_config.json` on gclient sync.
>
> All pkg/ (and a few third_party) packages that are developed inside the sdk repo are included in the workspace from the root `pubspec.yaml`.
>
> All dependencies that are pulled in via DEPS are added as path dependencies via `dependency_overrides` in the root `pubspec.yaml`.
>
> Bug: https://github.com/dart-lang/sdk/issues/56220
> Change-Id: I38c12b608c68da54c57821116cf9aa6696936746
> Tested: relies on CQ of existing tests. Should have no effect on functionality
> CoreLibraryReviewExempt: only core library change is adding a `// ignore:` comment. Should have no influence on functionality
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/397164
> Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
> Reviewed-by: Alexander Thomas <athom@google.com>

Bug: https://github.com/dart-lang/sdk/issues/56220
Change-Id: I29afabade2d2447dea05121cb87ff50bb21a4b76
Cq-Include-Trybots: luci.dart.try:flutter-linux-try,flutter-web-try
Tested: relies on CQ of existing tests. Should have no effect on functionality
CoreLibraryReviewExempt: only core library change is adding a `//
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/415561
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2025-03-20 06:19:16 -07:00
..

☠☠ Warning: This package is experimental and may not be available in a future version of Dart. ☠☠

This package is for macro authors, and exposes the APIs necessary to write a macro. Specifically, it exports the private _macros SDK vendored package.

Macro authors

Macro authors can use normal constraints on this package, and should only import the package:macros/macros.dart file.

Note that the versions of this package are tied directly to your SDK version, so you won't be able to get new feature releases without updating your SDK.

Compilers and tools

This package also exposes some "private" sources (under lib/src), intended only for use by compilers and tools, in order to bootstrap and execute macros.

When depending on these "private" sources, a more narrow constraint should be used, which constraints to feature releases (which means patch versions until such time as this package goes to 1.0.0). For example, macros: ">=0.1.1 <0.1.2".