dart-sdk/pkg
Ben Konyi d58f6a1ce3 [ DDS ] Create an arg parser for the DDS snapshot
Preparation for shipping DDS as part of the SDK instead of as a Pub
package.

TEST=Existing VM service, DDS, and dartdev tests

Change-Id: I38ec47f4ebf003d3d3c813af40a313403f23280c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/356580
Reviewed-by: Derek Xu <derekx@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2024-03-11 19:54:47 +00:00
..
_fe_analyzer_shared [vm] Introduce pragma vm:deeply-immutable 2024-03-07 18:33:58 +00:00
_js_interop_checks [dart:js_interop] Fix operator precedence in determining constructor type 2024-03-06 17:39:29 +00:00
analysis_server [analysis_server] Handle requests for resolved units in handlers between initialization and analysis roots being set 2024-03-11 19:41:39 +00:00
analysis_server_client [analyzer]/[analyzer_plugin] Support change descriptions on SourceEdit 2024-03-08 18:54:05 +00:00
analyzer Legacy. Remove star types from more type operations. 2024-03-08 19:54:45 +00:00
analyzer_cli Reland Workspace changes. 2024-02-05 17:33:09 +00:00
analyzer_plugin Completion. Issue 52129. Suggest types for ObjectPattern. 2024-03-11 19:33:50 +00:00
analyzer_utilities
async_helper [tests] update await_for_test to test behavior variations. 2024-02-14 21:43:47 +00:00
bisect_dart
build_integration build_integration: prepare for stricter implementation_imports check 2024-02-20 18:47:41 +00:00
compiler [dart2js] Use impacts from codegen results for dump info. 2024-03-07 19:25:15 +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
dart2native [ dart2native ] Remove unused constant 2024-02-08 19:51:11 +00:00
dart2wasm [dart2wasm] Better handling of list/map/set literals 2024-03-11 13:07:47 +00:00
dart_internal Bump dart_internal to allow Dart 3.3. 2024-02-14 19:49:32 +00:00
dart_service_protocol_shared
dartdev [ DDS ] Create an arg parser for the DDS snapshot 2024-03-11 19:54:47 +00:00
dds [ DDS ] Create an arg parser for the DDS snapshot 2024-03-11 19:54:47 +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 [ddc] speed up asset_file_system_test. 2024-03-11 18:32:19 +00:00
dtd Fix DTD examples and add specs to ensure their continued function. 2024-02-21 19:05:36 +00:00
dtd_impl Add obfuscation token to DTD uri 2024-03-07 19:33:19 +00:00
expect [test] Disable regress_53519_test in obfuscated/dwarf mode 2024-03-07 00:56:33 +00:00
front_end [vm] Introduce pragma vm:deeply-immutable 2024-03-07 18:33:58 +00:00
frontend_server [macros] Split out modular parts of package:vm into package:vm/modular. 2024-02-27 13:00:17 +00:00
heap_snapshot
js [pkg:js] Update README and prep for 0.7.1 publish 2024-02-16 18:40:22 +00:00
js_ast [dart2js] Convert some collections of const ints to enums 2024-02-23 19:52:50 +00:00
js_runtime [dart2js] Convert some collections of const ints to enums 2024-02-23 19:52:50 +00:00
js_shared
kernel [cfe] Add function to check sufficiency of type shape checks 2024-03-07 11:58:45 +00:00
language_versioning_2_12_test
linter Add 'missing_code_block_language_in_doc_comment' lint. 2024-03-11 18:25:40 +00:00
macros Add package:macros 2024-02-22 15:20:52 +00:00
meta Fix metadata for @ResourceIdentifier annotation 2024-03-11 17:08:24 +00:00
mmap
modular_test modular_test: prepare for curly_braces lint change 2024-02-20 17:56:29 +00:00
native_stack_traces
reload_test [ddc] Creating a hot reload and hot restart test suite. 2024-03-05 00:12:18 +00:00
scrape
smith [test_runner] Rename host-checked to host-asserts 2024-02-08 22:01:09 +00:00
sourcemap_testing
status_file [test_runner] Rename host-checked to host-asserts 2024-02-08 22:01:09 +00:00
telemetry
test_runner [test_runner] Support static error test expectations in augmentation libraries. 2024-03-08 12:59:59 +00:00
testing [package:testing] Reset the isolates errors fatal option 2024-02-05 14:38:05 +00:00
vm [dart2wasm/tfa] More accurate checks for empty types 2024-03-11 17:45:39 +00:00
vm_service [vm_service] Optimize ReadStream 2024-03-08 10:00:19 +00:00
vm_service_interface [deps] rev crypto, dartdoc, ecosystem, lints, native, sse 2024-02-13 00:30:32 +00:00
vm_service_protos
vm_snapshot_analysis
wasm_builder [dart2wasm] Allow giving names to globals in the module globals section 2024-03-07 11:51:57 +00:00
.gitignore
analysis_options.yaml
BUILD.gn
OWNERS
pkg.dart
pkg.status [gardening] Mark test as slow 2024-02-19 10:21:38 +00:00
README.md typo fixes: its vs. it's 2024-02-29 11:07:40 +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. It's 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