Conversation
- Fix local variable shadowing errors (controller / scopeContext) that broke compilation - Fix self-assignment of innerRefItem* fields in ChatScrollObserver.standby - Guard BuildContext usage across async gaps with mounted checks - Migrate to package:material_ui; require Dart ^3.13.0 / Flutter >=3.47.0 - Upgrade flutter_lints to ^6.0.0 in package and example, resolve all lints - Format all Dart sources with the Dart 3.13 formatter - Replace the outdated counter smoke test in example with a home page smoke test - Bump version to 2.0.0 and update CHANGELOG
Member
|
Thanks a lot for the effort! Since scrollview_observer doesn't use any Material widgets, #156 can be solved by simply importing package:flutter/widgets.dart instead of material.dart. That way we don't need a material_ui dependency or to raise the minimum SDK to Flutter 3.47, and it can ship as a patch release. So I'm going to close this PR in favor of that smaller change. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR fixes all analyzer errors/warnings, modernizes the codebase for current Flutter/Dart, and bumps the package to 2.0.0.
Changes
Bug fixes
var controller = controller;) in_scrollToIndex,_handleScrollToIndexForFixedHeightand_handleScrollToIndexthat prevented compilation underflutter_lints6 (no_leading_underscores_for_local_identifiers).scopeContextin_checkTagChange.innerRefItemIndex,innerRefItemIndexAfterUpdateandinnerRefItemLayoutOffsetinstandby.BuildContextusage across async gaps withmountedchecks (use_build_context_synchronously).Tooling / lint
flutter_lintsto^6.0.0in both the package and the example, and resolve every reported lint (super parameters,baseclass modifiers, null-aware elements,sort_child_properties_last, etc.).dart format --set-exit-if-changedpasses in CI.anyconstraints to concrete versions.Release
2.0.0and add the CHANGELOG entry.Verification
flutter analyze(package)flutter analyze(example)dart format . -o none --set-exit-if-changedflutter test(package)flutter test(example)flutter pub publish --dry-runEnvironment: Flutter 3.47.3 (stable) / Dart 3.13.3.
Notes for reviewers
@Deprecated('It will be removed in version 2 ...')are intentionally kept in this PR to keep the change reviewable; they can be removed in a follow-up.material.dart → material_ui.dartimport swap and formatter output; the behavioral fixes are concentrated inobserver_controller.dart,observer_widget.dartandchat_scroll_observer.dart.