dart-sdk/pkg
Danny Tuppeny 83f0bb25a4 [analysis_server] Allow multiple not-imported items in completion if name not already imported
Change-Id: Ie5bfa353d59546518180a08cd4720f793a01ba30
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/250660
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2022-07-06 17:19:40 +00:00
..
_fe_analyzer_shared [cfe] Handle augment super expressions 2022-07-04 12:37:50 +00:00
_js_interop_checks [CFE/pkg:js] Find reference of stub if it already exists 2022-06-28 18:36:02 +00:00
analysis_server [analysis_server] Allow multiple not-imported items in completion if name not already imported 2022-07-06 17:19:40 +00:00
analysis_server_client [analyzer_plugin] consistent hashCode for SourceFileEdit 2022-07-06 16:03:20 +00:00
analyzer Feature sets inconsistency is implemented as INCONSISTENT_LANGUAGE_VERSION_OVERRIDE. 2022-07-06 15:55:50 +00:00
analyzer_cli Move 'libraryFiles' to LibraryFileStateKind. 2022-06-29 15:49:35 +00:00
analyzer_plugin [analyzer_plugin] consistent hashCode for SourceFileEdit 2022-07-06 16:03:20 +00:00
analyzer_utilities [analysis_server] minor cleanups to analysis server spec generation 2022-06-27 17:21:02 +00:00
async_helper
build_integration
compiler [dart2js] Add a couple scripts to aid our migration. 2022-07-02 04:25:21 +00:00
dart2js_info [dart2js] Cleaning up readme and removing out-of-date docs 2022-06-21 04:56:22 +00:00
dart2js_runtime_metrics
dart2js_tools
dart2native [pkg/dart2native] Print signing failure diagnostics to stderr. 2022-07-01 12:25:47 +00:00
dart2wasm [CFE/pkg:js] Find reference of stub if it already exists 2022-06-28 18:36:02 +00:00
dart_internal
dartdev [ CLI ] Ensure training arguments aren't parsed by the CLI for JIT snapshots 2022-06-24 14:26:39 +00:00
dds Update devtools_shared version 2022-06-23 17:15:29 +00:00
dds_service_extensions Update vm service version 2022-06-13 21:18:57 +00:00
dev_compiler [ddc] Move FutureOr normalization to its own visitor 2022-07-01 18:55:50 +00:00
expect
front_end [cfe] Handle augment super expressions 2022-07-04 12:37:50 +00:00
frontend_server [CFE/pkg:js] Find reference of stub if it already exists 2022-06-28 18:36:02 +00:00
js
js_ast
js_runtime
js_shared [pkg/js_shared] address a few analysis issues 2022-06-23 23:34:18 +00:00
kernel [cfe] Handle augment super expressions 2022-07-04 12:37:50 +00:00
language_versioning_2_7_test [pkg] ignore some intentional analysis issues 2022-07-01 20:04:10 +00:00
meta
modular_test
native_stack_traces
nnbd_migration Flow analysis: Separate variable and type operations. 2022-07-01 14:13:20 +00:00
scrape move the third_party/pkg_tested packages into third_party/pkg 2022-06-13 17:04:36 +00:00
smith
sourcemap_testing [ddc] Migrate sourcemap and stacktrace tests 2022-06-22 22:05:25 +00:00
status_file
telemetry
test_runner Remove dartanalyzer from built SDK. 2022-07-01 17:43:20 +00:00
testing [CFE] Handle unevaluated constants differently in constant evaluator 2022-06-22 08:51:04 +00:00
vm [vm] Add test for kernel_service --- test relative packageconfig 2022-06-28 13:11:32 +00:00
vm_service Revert "[ VM / Service ] Add abstract flag to Function" 2022-06-24 07:35:29 +00:00
vm_snapshot_analysis [CFE] Remove support for .packages file 2022-06-24 08:20:39 +00:00
wasm_builder [dart2wasm] Support all import and export kinds in wasm_builder 2022-06-10 12:41:45 +00:00
.gitignore
BUILD.gn
OWNERS
pkg.status [cfe] Remove Kernel round-trip text serialization 2022-06-21 10:28:24 +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