dart-sdk/pkg
pq a362115c60 bump to linter 1.25.0
Change-Id: Ie709139029d1f58cef4807708ff054acb0fba6cb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/247363
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2022-06-07 17:59:29 +00:00
..
_fe_analyzer_shared [jsinterop] Add static check for JSName of static class members. 2022-06-03 17:02:26 +00:00
_js_interop_checks [js] Support js_util on Dart2wasm. 2022-06-06 18:18:20 +00:00
analysis_server bump to linter 1.25.0 2022-06-07 17:59:29 +00:00
analysis_server_client [pkg] normalize the headers of the pkg/ readmes 2022-05-31 21:00:13 +00:00
analyzer Use unloadAll(), not unloadLinked(). 2022-06-07 15:38:24 +00:00
analyzer_cli Use LibraryFileStateKind where a library is expected. 2022-06-01 20:43:54 +00:00
analyzer_plugin [data driven] support moving symbols across packages 2022-06-06 16:53:38 +00:00
analyzer_utilities Make Cache.get() just return the value. 2022-06-02 15:45:45 +00:00
async_helper [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
build_integration [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
compiler [dart2js] Migrate load_kernel.dart to nnbd 2022-06-07 16:37:16 +00:00
dart2js_info [dart2js] Adding kernel dump info regression tests 2022-06-06 22:35:29 +00:00
dart2js_runtime_metrics [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
dart2js_tools [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
dart2native [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
dart2wasm [dart2wasm] Emit unreachable as default case when switch is exhaustive 2022-06-07 10:45:39 +00:00
dart_internal [pkg] ensure each publishable package has a repository pubspec field 2022-04-19 22:13:51 +00:00
dartdev dart fix for single files 2022-06-06 17:42:14 +00:00
dds [ package:dds ] Migrate devtools_observatory_connection_test to null safety 2022-06-07 14:49:09 +00:00
dds_service_extensions [pkg] normalize the headers of the pkg/ readmes 2022-05-31 21:00:13 +00:00
dev_compiler [jsinterop] Add static check for JSName of static class members. 2022-06-03 17:02:26 +00:00
expect [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
front_end [dart2js] Migrate load_kernel.dart to nnbd 2022-06-07 16:37:16 +00:00
frontend_server Revert "[vm] Enable new implementation of async/async* in JIT mode" 2022-06-07 17:57:30 +00:00
js [pkg] normalize the headers of the pkg/ readmes 2022-05-31 21:00:13 +00:00
js_ast [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
js_runtime [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
js_shared [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
kernel Revert "[vm] Enable new implementation of async/async* in JIT mode" 2022-06-07 17:57:30 +00:00
language_versioning_2.7_test [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
meta [pkg/meta] prep for publishing package:meta 1.8.0 2022-05-16 21:56:05 +00:00
modular_test [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
native_stack_traces [pkg] prep to publish package:native_stack_traces 2022-05-31 16:39:16 +00:00
nnbd_migration Migration: fix conversion of @required to required in redirecting factory constructors. 2022-06-07 16:12:59 +00:00
scrape Fixing typo in comment 2022-06-04 00:35:16 +00:00
smith [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
sourcemap_testing [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
status_file [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
telemetry [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
test_runner [test_runner] Prepare static error testing for null safety migration 2022-06-04 18:42:47 +00:00
testing Read package_config.json in more tests 2022-05-11 18:58:44 +00:00
vm Revert "[vm] Enable new implementation of async/async* in JIT mode" 2022-06-07 17:57:30 +00:00
vm_service Revert "[vm] Enable new implementation of async/async* in JIT mode" 2022-06-07 17:57:30 +00:00
vm_snapshot_analysis [pkg] prep to publish package:vm_snapshot_analysis 2022-05-31 16:39:14 +00:00
wasm_builder [pkg] prefer 'any' deps for package dev dependencies 2022-05-27 01:34:59 +00:00
.gitignore [cleanup] Remove remaining references to analysis_server language model 2022-05-30 11:27:42 +00:00
BUILD.gn
OWNERS [infra] validate pkg/ dep ranges against the packages DEP'd in 2022-04-19 19:25:47 +00:00
pkg.status [web] Move libraries to a shared location 2022-05-18 19:59:33 +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