Skip to content

First pass and bumping min version to Dart 3.9#1909

Draft
kevmoo wants to merge 2 commits into
masterfrom
dart_3_9
Draft

First pass and bumping min version to Dart 3.9#1909
kevmoo wants to merge 2 commits into
masterfrom
dart_3_9

Conversation

@kevmoo
Copy link
Copy Markdown
Member

@kevmoo kevmoo commented Apr 24, 2026

No description provided.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 24, 2026

PR Health

License Headers ⚠️
// Copyright (c) 2026, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
Files
pkgs/http/example/main.dart

All source files should start with a license header.

Unrelated files missing license headers
Files
pkgs/cupertino_http/example/example.dart
pkgs/http_multi_server/test/cert.dart

This check can be disabled by tagging the PR with skip-license-check.

Unused Dependencies ⚠️
Package Status
cronet_http
❗ Show Issues
These packages are used outside lib/ but are not dev_dependencies:
* flutter_test
* http_client_conformance_tests
* http_image_provider
* integration_test
* provider
* test
These packages are only used outside lib/ and should be downgraded to dev_dependencies:
* flutter
These packages may be unused, or you may be using assets from these packages:
* dart_flutter_team_lints
* yaml_edit
Failed to update packages.
http
❗ Show Issues
These packages may be unused, or you may be using assets from these packages:
* dart_flutter_team_lints
* shelf
http2 ✔️ All dependencies utilized correctly.
http_multi_server ✔️ All dependencies utilized correctly.
http_parser ✔️ All dependencies utilized correctly.
http_profile
❗ Show Issues
These packages may be unused, or you may be using assets from these packages:
* dart_flutter_team_lints
ok_http
❗ Show Issues
These packages are used outside lib/ but are not dev_dependencies:
* flutter_test
* http_client_conformance_tests
* http_image_provider
* integration_test
* provider
* test
* web_socket_conformance_tests
These packages are only used outside lib/ and should be downgraded to dev_dependencies:
* flutter
These packages may be unused, or you may be using assets from these packages:
* dart_flutter_team_lints
* plugin_platform_interface
Failed to update packages.
web_socket
❗ Show Issues
These packages may be unused, or you may be using assets from these packages:
* dart_flutter_team_lints
web_socket_channel ✔️ All dependencies utilized correctly.

For details on how to fix these, see dependency_validator.

This check can be disabled by tagging the PR with skip-unused-dependencies-check.

Changelog Entry
Package Changed Files
package:cronet_http pkgs/cronet_http/example/pubspec.yaml
pkgs/cronet_http/lib/src/cronet_client.dart
pkgs/cronet_http/lib/src/jni/jni_bindings.dart
pkgs/cronet_http/pubspec.yaml
package:http pkgs/http/lib/http.dart
pkgs/http/lib/retry.dart
pkgs/http/lib/src/abortable.dart
pkgs/http/lib/src/base_client.dart
pkgs/http/lib/src/base_request.dart
pkgs/http/lib/src/base_response.dart
pkgs/http/lib/src/boundary_characters.dart
pkgs/http/lib/src/browser_client.dart
pkgs/http/lib/src/byte_stream.dart
pkgs/http/lib/src/client.dart
pkgs/http/lib/src/client_stub.dart
pkgs/http/lib/src/io_client.dart
pkgs/http/lib/src/io_streamed_response.dart
pkgs/http/lib/src/mock_client.dart
pkgs/http/lib/src/multipart_file.dart
pkgs/http/lib/src/multipart_file_io.dart
pkgs/http/lib/src/multipart_file_stub.dart
pkgs/http/lib/src/multipart_request.dart
pkgs/http/lib/src/request.dart
pkgs/http/lib/src/response.dart
pkgs/http/lib/src/streamed_request.dart
pkgs/http/lib/src/streamed_response.dart
pkgs/http/lib/src/utils.dart
pkgs/http/pubspec.yaml
package:http2 pkgs/http2/lib/src/connection.dart
pkgs/http2/lib/src/frames/frame_types.dart
pkgs/http2/lib/src/streams/stream_handler.dart
pkgs/http2/pubspec.yaml
package:http_multi_server pkgs/http_multi_server/lib/http_multi_server.dart
pkgs/http_multi_server/pubspec.yaml
package:http_parser pkgs/http_parser/lib/src/authentication_challenge.dart
pkgs/http_parser/lib/src/case_insensitive_map.dart
pkgs/http_parser/lib/src/chunked_coding/decoder.dart
pkgs/http_parser/lib/src/http_date.dart
pkgs/http_parser/lib/src/media_type.dart
pkgs/http_parser/lib/src/utils.dart
pkgs/http_parser/pubspec.yaml
package:http_profile pkgs/http_profile/lib/src/http_client_request_profile.dart
pkgs/http_profile/lib/src/http_profile_request_data.dart
pkgs/http_profile/lib/src/http_profile_response_data.dart
pkgs/http_profile/lib/src/utils.dart
pkgs/http_profile/pubspec.yaml
package:ok_http pkgs/ok_http/example/pubspec.yaml
pkgs/ok_http/lib/src/jni/bindings.dart
pkgs/ok_http/lib/src/ok_http_client.dart
pkgs/ok_http/lib/src/ok_http_web_socket.dart
pkgs/ok_http/pubspec.yaml
package:web_socket pkgs/web_socket/lib/src/browser_web_socket.dart
pkgs/web_socket/lib/src/io_web_socket.dart
pkgs/web_socket/lib/src/utils.dart
pkgs/web_socket/lib/src/web_socket.dart
pkgs/web_socket/pubspec.yaml
package:web_socket_channel pkgs/web_socket_channel/lib/adapter_web_socket_channel.dart
pkgs/web_socket_channel/lib/html.dart
pkgs/web_socket_channel/lib/io.dart
pkgs/web_socket_channel/lib/src/channel.dart
pkgs/web_socket_channel/pubspec.yaml

Changes to files need to be accounted for in their respective changelogs.

This check can be disabled by tagging the PR with skip-changelog-check.

Coverage ⚠️
File Coverage
pkgs/cronet_http/example/integration_test/client_profile_test.dart 💔 Not covered
pkgs/cronet_http/example/integration_test/client_test.dart 💔 Not covered
pkgs/cronet_http/example/integration_test/cronet_engine_test.dart 💔 Not covered
pkgs/cronet_http/example/lib/book.dart 💔 Not covered
pkgs/cronet_http/example/lib/main.dart 💔 Not covered
pkgs/cronet_http/lib/src/cronet_client.dart 💔 Not covered
pkgs/cronet_http/lib/src/jni/jni_bindings.dart 💔 Not covered
pkgs/http/example/main.dart 💔 Not covered
pkgs/http/lib/http.dart 💚 100 %
pkgs/http/lib/retry.dart 💚 93 % ⬆️ 0 %
pkgs/http/lib/src/abortable.dart 💚 100 %
pkgs/http/lib/src/base_client.dart 💚 97 %
pkgs/http/lib/src/base_request.dart 💔 85 % ⬇️ 3 %
pkgs/http/lib/src/base_response.dart 💚 87 %
pkgs/http/lib/src/boundary_characters.dart 💔 Not covered
pkgs/http/lib/src/browser_client.dart 💔 Not covered
pkgs/http/lib/src/byte_stream.dart 💚 88 % ⬆️ 1 %
pkgs/http/lib/src/client.dart 💚 100 %
pkgs/http/lib/src/client_stub.dart 💔 Not covered
pkgs/http/lib/src/io_client.dart 💚 89 % ⬆️ 0 %
pkgs/http/lib/src/io_streamed_response.dart 💚 100 %
pkgs/http/lib/src/mock_client.dart 💚 100 %
pkgs/http/lib/src/multipart_file.dart 💚 95 % ⬆️ 1 %
pkgs/http/lib/src/multipart_file_io.dart 💚 100 %
pkgs/http/lib/src/multipart_file_stub.dart 💔 Not covered
pkgs/http/lib/src/multipart_request.dart 💚 93 % ⬆️ 0 %
pkgs/http/lib/src/request.dart 💚 98 %
pkgs/http/lib/src/response.dart 💚 100 %
pkgs/http/lib/src/streamed_request.dart 💚 100 %
pkgs/http/lib/src/streamed_response.dart 💚 100 %
pkgs/http/lib/src/utils.dart 💚 97 % ⬆️ 0 %
pkgs/http2/lib/src/connection.dart 💚 83 % ⬆️ 0 %
pkgs/http2/lib/src/frames/frame_types.dart 💔 54 % ⬇️ 4 %
pkgs/http2/lib/src/streams/stream_handler.dart 💚 91 %
pkgs/http_multi_server/lib/http_multi_server.dart 💚 65 % ⬆️ 1 %
pkgs/http_parser/lib/src/authentication_challenge.dart 💚 100 %
pkgs/http_parser/lib/src/case_insensitive_map.dart 💚 100 %
pkgs/http_parser/lib/src/chunked_coding/decoder.dart 💚 94 %
pkgs/http_parser/lib/src/http_date.dart 💚 100 %
pkgs/http_parser/lib/src/media_type.dart 💚 98 %
pkgs/http_parser/lib/src/utils.dart 💚 100 %
pkgs/http_profile/lib/src/http_client_request_profile.dart 💚 98 %
pkgs/http_profile/lib/src/http_profile_request_data.dart 💚 100 %
pkgs/http_profile/lib/src/http_profile_response_data.dart 💚 96 %
pkgs/http_profile/lib/src/utils.dart 💚 100 %
pkgs/ok_http/example/integration_test/certificate_test.dart 💔 Not covered
pkgs/ok_http/example/integration_test/client_configuration_test.dart 💔 Not covered
pkgs/ok_http/example/integration_test/client_profile_test.dart 💔 Not covered
pkgs/ok_http/example/lib/book.dart 💔 Not covered
pkgs/ok_http/example/lib/main.dart 💔 Not covered
pkgs/ok_http/lib/src/jni/bindings.dart 💔 Not covered
pkgs/ok_http/lib/src/ok_http_client.dart 💔 Not covered
pkgs/ok_http/lib/src/ok_http_web_socket.dart 💔 Not covered
pkgs/web_socket/example/web_socket_example.dart 💔 Not covered
pkgs/web_socket/lib/src/browser_web_socket.dart 💔 Not covered
pkgs/web_socket/lib/src/io_web_socket.dart 💚 87 % ⬆️ 2 %
pkgs/web_socket/lib/src/utils.dart 💚 100 %
pkgs/web_socket/lib/src/web_socket.dart 💚 68 %
pkgs/web_socket_channel/lib/adapter_web_socket_channel.dart 💚 96 % ⬆️ 0 %
pkgs/web_socket_channel/lib/html.dart 💔 Not covered
pkgs/web_socket_channel/lib/io.dart 💚 100 %
pkgs/web_socket_channel/lib/src/channel.dart 💔 40 % ⬇️ 20 %

This check for test coverage is informational (issues shown here will not fail the PR).

This check can be disabled by tagging the PR with skip-coverage-check.

Breaking changes ✔️
Package Change Current Version New Version Needed Version Looking good?
cronet_http Non-Breaking 1.8.0 1.9.0-wip 1.9.0-wip ✔️
http None 1.6.0 1.6.1-wip 1.6.1-wip ✔️
http2 Non-Breaking 2.3.1 3.0.1-wip 3.0.1-wip ✔️
http_multi_server None 3.2.2 3.2.2 3.2.2 ✔️
http_parser None 4.1.2 4.1.2 4.1.2 ✔️
http_profile None 0.1.0 0.1.1-wip 0.1.1-wip ✔️
ok_http Non-Breaking 0.1.0 0.1.1-wip 0.1.1-wip ✔️
web_socket None 1.0.1 1.0.1 1.0.1 ✔️
web_socket_channel None 3.0.3 3.0.4-wip 3.0.4-wip ✔️

This check can be disabled by tagging the PR with skip-breaking-check.

API leaks ⚠️

The following packages contain symbols visible in the public API, but not exported by the library. Export these symbols or remove them from your publicly visible API.

Package Leaked API symbol Leaking sources
ok_http $Certificate$NullableType jni/bindings.dart::Certificate::nullableType
ok_http $Certificate$Type jni/bindings.dart::Certificate::type
ok_http PublicKey jni/bindings.dart::Certificate::verify::publicKey
jni/bindings.dart::$PublicKey$NullableType
jni/bindings.dart::$PublicKey$NullableType::nullableType
jni/bindings.dart::$PublicKey$Type
jni/bindings.dart::$PublicKey$Type::nullableType
jni/bindings.dart::Certificate::verify$1::publicKey
jni/bindings.dart::Certificate::verify$2::publicKey
jni/bindings.dart::Certificate::getPublicKey
jni/bindings.dart::X509Certificate::verify2::publicKey
ok_http $PublicKey$NullableType jni/bindings.dart::PublicKey::nullableType
ok_http $PublicKey$Type jni/bindings.dart::PublicKey::type
ok_http $PublicKey jni/bindings.dart::PublicKey::implementIn::$impl
jni/bindings.dart::PublicKey::implement::$impl
ok_http $X509Certificate$NullableType jni/bindings.dart::X509Certificate::nullableType
ok_http $X509Certificate$Type jni/bindings.dart::X509Certificate::type
ok_http $PrivateKey$NullableType jni/bindings.dart::PrivateKey::nullableType
ok_http $PrivateKey$Type jni/bindings.dart::PrivateKey::type
ok_http $PrivateKey jni/bindings.dart::PrivateKey::implementIn::$impl
jni/bindings.dart::PrivateKey::implement::$impl

This check can be disabled by tagging the PR with skip-leaking-check.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant