dart-sdk/pkg
Konstantin Shcheglov 5f664f7312 Enable language 3.3 in analyzer/ and analysis_server/.
Change-Id: I65a439be99cd4c75dba2fc68340e33b7d0dc8ebe
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354341
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-02-26 19:05:20 +00:00
..
_fe_analyzer_shared Macro. Support for TypeAliasDeclaration. 2024-02-23 19:55:10 +00:00
_js_interop_checks Roll flute to new version which removes legacy interop usages 2024-02-16 13:10:04 +00:00
analysis_server Enable language 3.3 in analyzer/ and analysis_server/. 2024-02-26 19:05:20 +00:00
analysis_server_client [analysis_server] Add a supportsUris client capability for legacy server to switch into URI mode 2024-02-01 22:19:00 +00:00
analyzer Enable language 3.3 in analyzer/ and analysis_server/. 2024-02-26 19:05:20 +00:00
analyzer_cli Reland Workspace changes. 2024-02-05 17:33:09 +00:00
analyzer_plugin Legacy. Deprecate 'withNullability' in getDisplayString() methods. 2024-02-07 01:25:38 +00:00
analyzer_utilities final -> var for analyzer_utilities 2024-01-12 22:29:37 +00:00
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] Add replacementImpact to conditional impacts. 2024-02-24 06:36:42 +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] Start using VM's dead code elimination pass 2024-02-26 15:30:24 +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 [VM/Service] - Launch dds from vmservice code instead of dartdev code 2024-02-22 06:22:12 +00:00
dds dds: prepare for stricter implementation_imports check 2024-02-23 23:51:15 +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 [cfe] Recognize indirect use of macros 2024-02-22 10:30:31 +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 --unrestricted to DTD command. 2024-02-20 20:08:57 +00:00
expect [expect] introduce Expect.throwsWhen and Expect.throwsTypeErrorWhen 2024-02-14 20:12:05 +00:00
front_end [cfe] Support type parameters in macros api 2024-02-26 15:06:19 +00:00
frontend_server [macros] Cleanup after exception changes. 2024-02-20 09:07:29 +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] Address more cases of declaredNullability being overridden 2024-02-21 15:37:11 +00:00
language_versioning_2_12_test
linter bump package:linter language version to 3.3.0 2024-02-26 18:29:53 +00:00
macros Add package:macros 2024-02-22 15:20:52 +00:00
meta Prepare package:meta for publish 2024-02-05 14:05:29 +00:00
mmap Revert "[ffi]: Remove pointer elementAt method." 2024-01-22 12:20:48 +00:00
modular_test modular_test: prepare for curly_braces lint change 2024-02-20 17:56:29 +00:00
native_stack_traces
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] Fix expectations on Windows when there are import loops. 2024-02-23 12:10:18 +00:00
testing [package:testing] Reset the isolates errors fatal option 2024-02-05 14:38:05 +00:00
vm [dart2wasm] Start using VM's dead code elimination pass 2024-02-26 15:30:24 +00:00
vm_service [vm_service] Bump vm_service language version to 3.3. 2024-02-23 00:29:58 +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] Outline <obj> is/as <type> checks to shared helper functions 2024-02-12 12:06:07 +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

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