dart-sdk/pkg
Mayank Patke f9c3e48406 [dart2js] Add user-definable callback to report null safety diagnostics
Change-Id: Id57efb9fb6f329f8e0b81b773ec27598a2db862a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/328761
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Mayank Patke <fishythefish@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2023-10-19 20:29:49 +00:00
..
_fe_analyzer_shared [cfe] Report errors on zero or more than one representation fields 2023-10-18 14:54:25 +00:00
_js_interop_checks [kernel] Add ExtensionTypeDeclaration.procedures 2023-10-13 07:42:29 +00:00
analysis_server Expose methods for DataDriven fixes in BlazeWorkspace 2023-10-19 20:11:42 +00:00
analysis_server_client Add a method to BulkFixProcessor to compute changes to pubspec 2023-10-16 21:54:25 +00:00
analyzer @factory validation for extension types 2023-10-19 20:15:58 +00:00
analyzer_cli Support for # ignore: comments in pubspec.yaml 2023-10-13 12:44:09 +00:00
analyzer_plugin Code complete inside an extension type 2023-10-19 14:04:51 +00:00
analyzer_utilities Update analyzer_utilties to Dart 3 and enable more lints 2023-09-14 20:27:26 +00:00
async_helper [deps] roll package:lints to the latest 2023-10-05 03:36:59 +00:00
bisect_dart [tool] bisect.dart fix prints 2023-08-25 09:14:40 +00:00
build_integration
compiler [dart2js] Add flag to enable additional pre-sound-null-safety checks. 2023-10-19 20:29:49 +00:00
dap [dds/dap] Use super-params in generated code 2023-09-26 20:31:43 +00:00
dart2js_info [deps] roll package:lints to the latest 2023-10-05 03:36:59 +00:00
dart2js_runtime_metrics [dart2js] Add user-definable callback to report null safety diagnostics 2023-10-19 20:29:49 +00:00
dart2js_tools [deps] roll package:lints to the latest 2023-10-05 03:36:59 +00:00
dart2native [Reland] [dartdev] Convert gen_kernel.dart.snapshot into an AOT snapshot 2023-09-26 21:46:58 +00:00
dart2wasm [cfe] Add representation field to ExtensionTypeDeclaration 2023-10-19 10:15:25 +00:00
dart_internal
dartdev [dartdev] Use package:lints v3 in dart create templates 2023-10-19 14:41:50 +00:00
dds [dds/dap] Expand truncated strings and suppress quotes when copying to clipboard + using repl 2023-10-18 17:34:59 +00:00
dds_service_extensions Update package:dds and package:dds_service_extensions to vm_service 2023-10-02 17:51:35 +00:00
dev_compiler Remove dart language marker in jsinterop test. 2023-10-12 09:40:11 +00:00
expect [deps] roll package:lints to the latest 2023-10-05 03:36:59 +00:00
front_end [cfe] Lookup representation field using ExtensionTypeDeclaration.procedures 2023-10-19 14:23:29 +00:00
frontend_server [frontend_server] Cleanup license headers 2023-10-18 06:59:38 +00:00
heap_snapshot Adds benchmark measuring memory consumption of live objects after analyzing flutter. 2023-10-10 17:54:08 +00:00
js
js_ast
js_runtime [deps] roll package:lints to the latest 2023-10-05 03:36:59 +00:00
js_shared [dart2js][ddc] Make rti universe field names const 2023-10-09 21:12:48 +00:00
kernel [cfe] Add representation field to ExtensionTypeDeclaration 2023-10-19 10:15:25 +00:00
language_versioning_2_7_test
linter rule generation codegen tweaks 2023-10-19 16:42:25 +00:00
meta meta 1.11.0 2023-10-10 22:21:05 +00:00
mmap
modular_test [deps] roll package:lints to the latest 2023-10-05 03:36:59 +00:00
native_stack_traces Bump package:lints to the latest; address instances of new lints. 2023-09-25 21:15:15 +00:00
nnbd_migration Flow analysis: track detailed non-promotability reasons for getters. 2023-09-27 20:04:01 +00:00
scrape [VM] Remove observatory_2 directory and all references to it. 2023-10-16 17:45:46 +00:00
service_extension_router Initial commit for pkg/service_extension_router 2023-08-30 20:18:12 +00:00
smith [infra,dart2wasm] Add dart2wasm Firefox test configurations 2023-09-29 12:54:12 +00:00
sourcemap_testing
status_file [test] Remove ARM64-specific status entries. 2023-10-09 19:30:29 +00:00
telemetry
test_runner [build, test_runner] Update to NDK 27. 2023-10-18 22:38:23 +00:00
testing Fix incorrect file reference in license headers 2023-09-18 06:44:08 +00:00
vm [cfe] Add representation field to ExtensionTypeDeclaration 2023-10-19 10:15:25 +00:00
vm_service Adds tests and documentation for print line ending behavior 2023-10-17 22:10:38 +00:00
vm_service_protos
vm_snapshot_analysis
wasm_builder [dart2wasm] Switch to final GC encodings & Roll Chrome 119 + D8 2023-10-13 17:09:19 +00:00
.gitignore
analysis_options.yaml
BUILD.gn
OWNERS
pkg.dart [deps] roll package:lints to the latest 2023-10-05 03:36:59 +00:00
pkg.status [ package:vm_service ] Skip some DevFS tests on Windows 2023-10-17 16:47: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