dart-sdk/pkg
Konstantin Shcheglov 15a533f0ac Add tests for non-function type aliases that end with question types and classes.
Change-Id: Id56f2e8dec535e5c7af081bf7b94c759027cac6c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175865
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-12-11 21:04:39 +00:00
..
_fe_analyzer_shared [cfe] Use combined member signature in override inference in legacy code 2020-12-09 17:33:20 +00:00
_js_interop_checks Revert "[kernel] Ensure that visitors don't implicitly returns null" 2020-11-18 14:51:30 +00:00
analysis_server Extract TestInstrumentationService into a library, more tests. 2020-12-11 19:49:29 +00:00
analysis_server_client Restore generation of protocol_common in analysis_server_client 2020-12-06 04:59:04 +00:00
analyzer Add tests for non-function type aliases that end with question types and classes. 2020-12-11 21:04:39 +00:00
analyzer_cli Drop 'summary2' import prefix build_mode. 2020-12-08 17:34:59 +00:00
analyzer_plugin [Analyzer] Include required-named params in defaultArgumentListString and LSP complete-function-calls 2020-12-08 20:47:04 +00:00
analyzer_utilities Add additional validations to the pkg/ package pubspecs. 2020-12-02 17:27:18 +00:00
async_helper Update pkg dependencies on pkg:analyzer 2020-10-26 19:30:06 +00:00
build_integration Add additional validations to the pkg/ package pubspecs. 2020-12-02 17:27:18 +00:00
compiler [dart2js] Convert first argument to main 2020-12-11 01:29:28 +00:00
dart2js_tools
dart2native [vm/dart2native] Ensure to normalize packages path (in addition to sourceFile) to guarantee consistency 2020-11-04 11:13:36 +00:00
dart_internal Support the latest SDK with pkg:dart_internal 2020-11-02 21:51:39 +00:00
dartdev [dartdev] make the 'dart fix' command visible 2020-12-09 17:41:25 +00:00
dds Update List constructor documentation, deprecate constructor. 2020-12-07 16:20:28 +00:00
dev_compiler [dartdevc] Fixing expression eval breaks from stepping update. 2020-12-11 00:18:28 +00:00
diagnostic
expect Add additional validations to the pkg/ package pubspecs. 2020-12-02 17:27:18 +00:00
front_end [cfe] Handle missing suffix recovery in body builder 2020-12-10 14:00:37 +00:00
frontend_server [ddc] Verify null safety modes of modules agree 2020-12-09 21:12:20 +00:00
js [ddc] Change is checks for JS types 2020-12-10 01:38:26 +00:00
js_ast Update List constructor documentation, deprecate constructor. 2020-12-07 16:20:28 +00:00
kernel [kernel] Fix and test readComponentSource 2020-12-11 11:57:58 +00:00
language_versioning_2.7_test
meta remove redundant experiment 2020-11-11 16:55:22 +00:00
modular_test Update to the latest package:yaml 2020-11-16 22:16:50 +00:00
native_stack_traces Roll args and dart2js_info into the SDK. 2020-12-04 22:58:22 +00:00
nnbd_migration dart migrate: Support Windows newlines in opt out 2020-12-10 00:34:50 +00:00
scrape Add a script to scrape string literal quotation data. 2020-12-11 00:13:08 +00:00
smith [Test tool] Remove -c dartkb configuration 2020-11-02 14:06:19 +00:00
sourcemap_testing Update List constructor documentation, deprecate constructor. 2020-12-07 16:20:28 +00:00
status_file Update List constructor documentation, deprecate constructor. 2020-12-07 16:20:28 +00:00
telemetry Add additional validations to the pkg/ package pubspecs. 2020-12-02 17:27:18 +00:00
test_runner Update List constructor documentation, deprecate constructor. 2020-12-07 16:20:28 +00:00
testing Update List constructor documentation, deprecate constructor. 2020-12-07 16:20:28 +00:00
vm [VM] Read and report constant constructor coverage from dill (2nd try) 2020-12-08 10:47:43 +00:00
vm_service [vm, service] Remove unsafe querying across threads during Isolate::PrintJSON. 2020-12-08 00:36:38 +00:00
vm_snapshot_analysis Update List constructor documentation, deprecate constructor. 2020-12-07 16:20:28 +00:00
wasm [wasm] Clean up native objects using finalizers 2020-11-24 21:12:09 +00:00
.gitignore
BUILD.gn
pkg.status Remove obsolete dartfix build target and scripts 2020-11-13 09:18:36 +00:00
README.md Add additional validations to the pkg/ package pubspecs. 2020-12-02 17:27:18 +00:00

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