dart-sdk/pkg
Danny Tuppeny e588c8b379 [anaysis_server] Move ErrorOr class from LSP package to analysis_server
ErrorOr is not related to (or used by) the spec or generated spec classes. It's a utility class for the server implementations of LSP handlers.

I'd like to extend this class and add some extensions (that require access to private fields) and don't feel it belongs in `package:language_server_protocol`.

(note: `package:language_server_protocol` is not published so I believe removing it from there is not a breaking change)

Change-Id: I06799b18d61d123364711a549231134c792e70e2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/361140
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2024-04-04 18:51:27 +00:00
..
_fe_analyzer_shared Stop accepting null as a context in _fe_analyzer_shared. 2024-04-04 14:45:04 +00:00
_js_interop_checks [dart:js_interop] Add ExternalDartReference 2024-03-26 15:43:19 +00:00
_macros Prep to release package:macros 2024-03-26 19:51:01 +00:00
analysis_server [anaysis_server] Move ErrorOr class from LSP package to analysis_server 2024-04-04 18:51:27 +00:00
analysis_server_client [analyzer]/[analyzer_plugin] Support change descriptions on SourceEdit 2024-03-08 18:54:05 +00:00
analyzer Stop using AstNode.setProperty to store bodyContext. 2024-04-04 17:57:29 +00:00
analyzer_cli revert dart:_macros, going with SDK vendored package 2024-03-21 02:40:58 +00:00
analyzer_plugin DAS: Move two CorrectionUtils methods to DartEditBuilder 2024-04-03 20:57:51 +00:00
analyzer_utilities Move the mock package support to analyzer_utilities 2024-04-01 17:04:06 +00:00
async_helper [tests] update await_for_test to test behavior variations. 2024-02-14 21:43:47 +00:00
bisect_dart [deps] Roll package:native_assets_builder 2024-03-14 18:06:13 +00:00
build_integration build_integration: prepare for stricter implementation_imports check 2024-02-20 18:47:41 +00:00
compiler Wrap field initializers copied by TFA in a FileUriExpression. 2024-04-02 19:55:19 +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] Give names to closures in names section when possible 2024-04-04 17:46:08 +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 [CLI] Ensure that resident frontend compilers never try to compile kernel files or snapshots 2024-04-03 19:38:02 +00:00
dds Improve documentation for DDS and DTD 2024-04-04 15:50:02 +00:00
dds_service_extensions [ DDS ] Rework client resume permissions API 2024-03-21 21:09:42 +00:00
dev_compiler [ddc] Enforce more null safety on js interop 2024-04-03 23:20:15 +00:00
dtd Improve documentation for DDS and DTD 2024-04-04 15:50:02 +00:00
dtd_impl Add UnifiedAnalytics service to the Dart Tooling Daemon. 2024-04-04 00:20:32 +00:00
expect [test] Disable regress_53519_test in obfuscated/dwarf mode 2024-03-07 00:56:33 +00:00
front_end [cfe] Adjust static type of conditionals in if-null desugarings 2024-04-04 09:14:30 +00:00
frontend_server [CFE] Fix test broken by introduction of package:macros. 2024-04-03 09:10:38 +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 [web] Move Variance to js_shared/lib/ for shared use. 2023-12-22 18:16:01 +00:00
kernel [kernel] Clarify AssertStatement offset fields 2024-04-03 08:56:37 +00:00
language_versioning_2_12_test
linter [linter] Add unintended_html_in_doc_comment lint. 2024-04-02 21:09:51 +00:00
macros Prep to release package:macros 2024-03-26 19:51:01 +00:00
meta Add TargetKind.constructor to _DoNotSubmit. 2024-04-04 17:45:01 +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
reload_test [reload_test] Adding scaffolding for additional runtime platforms. 2024-03-25 23:58:32 +00:00
scrape
server_plugin analyzer plugins: Move DartFixContext and Impl to server_plugin 2024-03-19 19:06:33 +00:00
smith [ddc] Add configuration to compile with asserts 2024-04-04 14:40:30 +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 [ddc] Add configuration to compile with asserts 2024-04-04 14:40:30 +00:00
testing [package:testing] Proposed wildcard solution 2024-03-21 09:03:18 +00:00
vm Wrap field initializers copied by TFA in a FileUriExpression. 2024-04-02 19:55:19 +00:00
vm_service [ DDS ] Rework client resume permissions API 2024-03-21 21:09:42 +00:00
vm_service_interface [ package:vm_service* ] Prepare for release of package:vm_service 14.2.0 and package:vm_service_interface 1.1.0 2024-03-20 13:34:07 +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