FlutterGen / flutter_gen

The Flutter code generator for your assets, fonts, colors, … — Get rid of all String-based APIs.
https://pub.dev/packages/flutter_gen
MIT License
1.46k stars 146 forks source link

upgrade: update dependency dart to v3.5.0 #550

Closed renovate[bot] closed 1 month ago

renovate[bot] commented 1 month ago

Mend Renovate

This PR contains the following updates:

Package Update Change
dart (source) minor 3.4.4 -> 3.5.0

Release Notes

dart-lang/sdk (dart) ### [`v3.5.0`](https://togithub.com/dart-lang/sdk/blob/HEAD/CHANGELOG.md#350) [Compare Source](https://togithub.com/dart-lang/sdk/compare/3.4.4...3.5.0) ##### Language - **Breaking Change** [#​55418][]: The context used by the compiler to perform type inference on the operand of an `await` expression has been changed to match the behavior of the analyzer. This change is not expected to make any difference in practice. - **Breaking Change** [#​55436][]: The context used by the compiler to perform type inference on the right hand side of an "if-null" expression (`e1 ?? e2`) has been changed to match the behavior of the analyzer. change is expected to have low impact on real-world code. But in principle it could cause compile-time errors or changes in runtime behavior by changing inferred types. The old behavior can be restored by supplying explicit types. [#​55418]: https://togithub.com/dart-lang/sdk/issues/55418 [#​55436]: https://togithub.com/dart-lang/sdk/issues/55436 ##### Libraries ##### `dart:core` - **Breaking Change** [#​44876][]: `DateTime` on the web platform now stores microseconds. The web implementation is now practically compatible with the native implementation, where it is possible to round-trip a timestamp in microseconds through a `DateTime` value without rounding the lower digits. This change might be breaking for apps that rely in some way on the `.microsecond` component always being zero, for example, expecting only three fractional second digits in the `toString()` representation. Small discrepancies in arithmetic due to rounding of web integers may still occur for extreme values, (1) `microsecondsSinceEpoch` outside the safe range, corresponding to dates with a year outside of 1685..2255, and (2) arithmetic (`add`, `subtract`, `difference`) where the `Duration` argument or result exceeds 570 years. [#​44876]: https://togithub.com/dart-lang/sdk/issues/44876 ##### `dart:io` - **Breaking Change** [#​55786][]: `SecurityContext` is now `final`. This means that `SecurityContext` can no longer be subclassed. `SecurityContext` subclasses were never able to interoperate with other parts of `dart:io`. - A `ConnectionTask` can now be created using an existing `Future`. Fixes [#​55562]. [#​55786]: https://togithub.com/dart-lang/sdk/issues/55786 [#​55562]: https://togithub.com/dart-lang/sdk/issues/55562 ##### `dart:typed_data` - **Breaking Change** [#​53785][]: The unmodifiable view classes for typed data have been removed. These classes were deprecated in Dart 3.4. To create an unmodifiable view of a typed-data object, use the `asUnmodifiableView()` methods added in Dart 3.3. - Added superinterface `TypedDataList` to typed data lists, implementing both `List` and `TypedData`. Allows abstracting over all such lists without losing access to either the `List` or the `TypedData` members. A `ByteData` is still only a `TypedData`, not a list. [#​53785]: https://togithub.com/dart-lang/sdk/issues/53785 ##### `dart:js_interop` - **Breaking Change** [#​55508][]: `importModule` now accepts a `JSAny` instead of a `String` to support other JS values as well, like `TrustedScriptURL`s. - **Breaking Change** [#​55267][]: `isTruthy` and `not` now return `JSBoolean` instead of `bool` to be consistent with the other operators. - **Breaking Change** `ExternalDartReference` no longer implements `Object`. `ExternalDartReference` now accepts a type parameter `T` with a bound of `Object?` to capture the type of the Dart object that is externalized. `ExternalDartReferenceToObject.toDartObject` now returns a `T`. `ExternalDartReferenceToObject` and `ObjectToExternalDartReference` are now extensions on `T` and `ExternalDartReference`, respectively, where `T extends Object?`. See [#​55342][] and [#​55536][] for more details. - Fixed some consistency issues with `Function.toJS` across all compilers. Specifically, calling `Function.toJS` on the same function gives you a new JS function (see issue [#​55515][]), the maximum number of arguments that are passed to the JS function is determined by the static type of the Dart function, and extra arguments are dropped when passed to the JS function in all compilers (see [#​48186][]). [#​55508]: https://togithub.com/dart-lang/sdk/issues/55508 [#​55267]: https://togithub.com/dart-lang/sdk/issues/55267 [#​55342]: https://togithub.com/dart-lang/sdk/issues/55342 [#​55536]: https://togithub.com/dart-lang/sdk/issues/55536 [#​55515]: https://togithub.com/dart-lang/sdk/issues/55515 [#​48186]: https://togithub.com/dart-lang/sdk/issues/48186 ##### Tools ##### Linter - Added the [`unintended_html_in_doc_comment`][unintended_html_in_doc_comment] lint. - Added the [`invalid_runtime_check_with_js_interop_types`][invalid_runtime_check_with_js_interop_types] lint. - Added the [`document_ignores`][document_ignores] lint. [`unintended_html_in_doc_comment`]: https://dart.dev/lints/unintended_html_in_doc_comment [`invalid_runtime_check_with_js_interop_types`]: https://dart.dev/lints/invalid_runtime_check_with_js_interop_types [`document_ignores`]: https://dart.dev/lints/document_ignores ##### Pub - New flag `dart pub downgrade --tighten` to restrict lower bounds of dependencies' constraints to the minimum that can be resolved. ##### Dart Runtime - The Dart VM only executes sound null safe code, running of unsound null safe code using the option `--no-sound-null-safety` has been removed. - `Dart_NewListOf` and `Dart_IsLegacyType` functions are removed from Dart C API. - `Dart_DefaultCanonicalizeUrl` is removed from the Dart C API.

Configuration

📅 Schedule: Branch creation - "every weekend" in timezone Asia/Tokyo, Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

â™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR was generated by Mend Renovate. View the repository job log.

codecov[bot] commented 1 month ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 97.52%. Comparing base (eac0d85) to head (620e77d).

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #550 +/- ## ======================================= Coverage 97.52% 97.52% ======================================= Files 24 24 Lines 848 848 ======================================= Hits 827 827 Misses 21 21 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.