dart-sdk/pkg
Chloe Stefantsova 91c54ff06a [analyzer,cfe] Share classes representing type constraints
Part of https://github.com/dart-lang/sdk/issues/54902

Change-Id: Ic441a582bcc43fb5d909ca70f101160512f11afe
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/352222
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Chloe Stefantsova <cstefantsova@google.com>
2024-02-21 12:03:14 +00:00
..
_fe_analyzer_shared [analyzer,cfe] Share classes representing type constraints 2024-02-21 12:03:14 +00:00
_js_interop_checks Roll flute to new version which removes legacy interop usages 2024-02-16 13:10:04 +00:00
analysis_server Add type hierarchy tests for augmentations for LSP protocol. 2024-02-21 01:04:03 +00:00
analysis_server_client [analysis_server] Add a supportsUris client capability for legacy server to switch into URI mode 2024-02-01 22:19:00 +00:00
analyzer [analyzer,cfe] Share classes representing type constraints 2024-02-21 12:03:14 +00:00
analyzer_cli Reland Workspace changes. 2024-02-05 17:33:09 +00:00
analyzer_plugin Legacy. Deprecate 'withNullability' in getDisplayString() methods. 2024-02-07 01:25:38 +00:00
analyzer_utilities final -> var for analyzer_utilities 2024-01-12 22:29:37 +00:00
async_helper [tests] update await_for_test to test behavior variations. 2024-02-14 21:43:47 +00:00
bisect_dart Remove the legacy "_2" tests. \o/ 2023-11-17 20:17:23 +00:00
build_integration build_integration: prepare for stricter implementation_imports check 2024-02-20 18:47:41 +00:00
compiler [dart2js] Assorted TODO cleanup, bump pubspecs to 3.3.0 2024-02-21 00:02:13 +00:00
dart2js_info [dart2js] Assorted TODO cleanup, bump pubspecs to 3.3.0 2024-02-21 00:02:13 +00:00
dart2js_runtime_metrics [dart2js] Expose JS_TRUE and JS_FALSE via dart2js_runtime_metrics. 2024-02-09 18:38:55 +00:00
dart2js_tools [pkg] switches the default linting for pkg/ packages to dart_flutter_team_lints 2023-11-11 01:52:16 +00:00
dart2native [ dart2native ] Remove unused constant 2024-02-08 19:51:11 +00:00
dart2wasm dart2wasm: prepare for curly_braces lint change 2024-02-20 16:35:28 +00:00
dart_internal Bump dart_internal to allow Dart 3.3. 2024-02-14 19:49:32 +00:00
dart_service_protocol_shared Fix streamNotify so that it works with binary data 2023-11-22 21:06:50 +00:00
dartdev [dartdev/tests] Fix racy tests. 2024-02-20 19:14:44 +00:00
dds [dds/dap] Increase number of toStrings() per evaluation from 11 to 100 2024-02-20 19:24:12 +00:00
dds_service_extensions [ DDS ] Migrate DDS specific tests from service/ and update package:dds_service_extensions to 1.7.0 2024-01-26 22:45:14 +00:00
dev_compiler dev_compiler: prepare for curly_braces lint change 2024-02-20 16:04:30 +00:00
dtd Add --unrestricted to DTD command. 2024-02-20 20:08:57 +00:00
dtd_impl Add --unrestricted to DTD command. 2024-02-20 20:08:57 +00:00
expect [expect] introduce Expect.throwsWhen and Expect.throwsTypeErrorWhen 2024-02-14 20:12:05 +00:00
front_end [analyzer,cfe] Share classes representing type constraints 2024-02-21 12:03:14 +00:00
frontend_server [macros] Cleanup after exception changes. 2024-02-20 09:07:29 +00:00
heap_snapshot [pkg] switches the default linting for pkg/ packages to dart_flutter_team_lints 2023-11-11 01:52:16 +00:00
js [pkg:js] Update README and prep for 0.7.1 publish 2024-02-16 18:40:22 +00:00
js_ast [dart2js] Assorted TODO cleanup, bump pubspecs to 3.3.0 2024-02-21 00:02:13 +00:00
js_runtime
js_shared [web] Move Variance to js_shared/lib/ for shared use. 2023-12-22 18:16:01 +00:00
kernel frontend: prepare for curly_braces lint change 2024-02-21 07:28:59 +00:00
language_versioning_2_12_test Upgrade pkg/language_versioning_2_7_test to 2.12/2.13. 2023-12-12 17:45:13 +00:00
linter don't overreport prefer_void_to_null in augmentations 2024-02-20 21:01:50 +00:00
meta Prepare package:meta for publish 2024-02-05 14:05:29 +00:00
mmap Revert "[ffi]: Remove pointer elementAt method." 2024-01-22 12:20:48 +00:00
modular_test modular_test: prepare for curly_braces lint change 2024-02-20 17:56:29 +00:00
native_stack_traces Also add global owners to CFE/VM packages 2023-11-27 14:35:52 +00:00
scrape [scrape] Use dart_flutter_team_lints as base for analysis 2023-12-07 17:57:31 +00:00
smith [test_runner] Rename host-checked to host-asserts 2024-02-08 22:01:09 +00:00
sourcemap_testing Include ARM64 when uploading d8. 2023-11-21 17:15:20 +00:00
status_file [test_runner] Rename host-checked to host-asserts 2024-02-08 22:01:09 +00:00
telemetry
test_runner [test_runner] Fix static_error_test on Windows. 2024-02-21 09:46:42 +00:00
testing [package:testing] Reset the isolates errors fatal option 2024-02-05 14:38:05 +00:00
vm [kerne] Remove type parameter from RecursiveVisitor 2024-02-19 07:51:43 +00:00
vm_service [vm] Improve detection of handled async errors 2024-02-16 12:55:22 +00:00
vm_service_interface [deps] rev crypto, dartdoc, ecosystem, lints, native, sse 2024-02-13 00:30:32 +00:00
vm_service_protos Also add global owners to CFE/VM packages 2023-11-27 14:35:52 +00:00
vm_snapshot_analysis Also add global owners to CFE/VM packages 2023-11-27 14:35:52 +00:00
wasm_builder [dart2wasm] Outline <obj> is/as <type> checks to shared helper functions 2024-02-12 12:06:07 +00:00
.gitignore
analysis_options.yaml [pkg] switches the default linting for pkg/ packages to dart_flutter_team_lints 2023-11-11 01:52:16 +00:00
BUILD.gn
OWNERS
pkg.dart [pkg] switches the default linting for pkg/ packages to dart_flutter_team_lints 2023-11-11 01:52:16 +00:00
pkg.status [gardening] Mark test as slow 2024-02-19 10:21:38 +00:00
README.md

Package validation

The packages in pkg/ are automatically validated on the LUCI CI bots. The validation is largely done by the tools/package_deps package; it can be tested locally via:

dart tools/package_deps/bin/package_deps.dart

Packages which are published

There are several packages developed in pkg/ which are published to pub. Validation of these packages is particularly important because the pub tools are not used for these packages during development; we get our dependency versions from the DEPS file. Its very easy for the dependencies specified in a package's pubspec file to get out of date wrt the packages and versions actually used.

In order to better ensure we're publishing correct packages, we validate some properties of the pubspec files on our CI system. These validations include:

  • that the dependencies listed in the pubspec are used in the package
  • that all the packages used by the source are listed in the pubspec
  • that we don't use relative path deps to pkg/ or third_party/ packages

Packages which are not published

For packages in pkg/ which we do not intend to be published, we put the following comment in the pubspec.yaml file:

# This package is not intended for consumption on pub.dev. DO NOT publish.
publish_to: none

These pubspecs are still validated by the package validation tool. The contents are more informational as the pubspecs for these packages are not consumed by the pub tool or ecosystem.

We validate:

  • that the dependencies listed in the pubspec are used in the package
  • that all the packages used by the source are listed in the pubspec
  • that a reference to a pkg/ package is done via a relative path dependency