-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Closed
Labels
a: leak trackingIssues and PRs related to memory leaks detected by leak_trackerIssues and PRs related to memory leaks detected by leak_trackera: tests"flutter test", flutter_test, or one of our tests"flutter test", flutter_test, or one of our testsframeworkflutter/packages/flutter repository. See also f: labels.flutter/packages/flutter repository. See also f: labels.team-frameworkOwned by Framework teamOwned by Framework team
Description
Steps to reproduce
- Search for
if (isLeakTrackingEnabled()) {in the code and temporarily replace it withif (true) - Run the following test:
testWidgets('Overlay.wrap', (WidgetTester tester) async {
await tester.pumpWidget(
Directionality(
textDirection: TextDirection.ltr,
child: Overlay.wrap(
child: const Center(
child: Text('Hello World'),
),
),
),
);
});Test output
✓ Overlay.wrap
Expected: leak free
Actual: <Instance of 'Leaks'>
Which: contains leaks:
# The text is generated by leak_tracker.
# For leak troubleshooting tips open:
# https://github.com/dart-lang/leak_tracker/blob/main/doc/TROUBLESHOOT.md
notDisposed:
total: 2
objects:
OverlayEntry:
test: Overlay.wrap
identityHashCode: 870391968
context:
start: >
#6_______dispatchFlutterEventToLeakTracker_(package:leak_tracker_flutter_testing/src/testing.dart:74:23)
#7______FlutterMemoryAllocations.dispatchObjectEvent_(package:flutter/src/foundation/memory_allocations.dart:249:23)
#8______FlutterMemoryAllocations.dispatchObjectCreated_(package:flutter/src/foundation/memory_allocations.dart:283:5)
#9______OverlayEntry._maybeDispatchObjectCreation_(package:flutter/src/widgets/overlay.dart:174:41)
#10_____new_OverlayEntry_(package:flutter/src/widgets/overlay.dart:89:7)
#11______WrappingOverlayState._entry_(package:flutter/src/widgets/overlay.dart:852:36)
#12______WrappingOverlayState._entry_(package:flutter/src/widgets/overlay.dart)
#13______WrappingOverlayState.build_(package:flutter/src/widgets/overlay.dart:870:38)
#14_____StatefulElement.build_(package:flutter/src/widgets/framework.dart:5599:27)
#15_____ComponentElement.performRebuild_(package:flutter/src/widgets/framework.dart:5487:15)
#16_____StatefulElement.performRebuild_(package:flutter/src/widgets/framework.dart:5650:11)
#17_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#18_____ComponentElement._firstBuild_(package:flutter/src/widgets/framework.dart:5469:5)
#19_____StatefulElement._firstBuild_(package:flutter/src/widgets/framework.dart:5641:11)
#20_____ComponentElement.mount_(package:flutter/src/widgets/framework.dart:5463:5)
#21_____Element.inflateWidget_(package:flutter/src/widgets/framework.dart:4340:16)
#22_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3849:18)
#23_____ComponentElement.performRebuild_(package:flutter/src/widgets/framework.dart:5512:16)
#24_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#25_____ComponentElement._firstBuild_(package:flutter/src/widgets/framework.dart:5469:5)
#26_____ComponentElement.mount_(package:flutter/src/widgets/framework.dart:5463:5)
#27_____Element.inflateWidget_(package:flutter/src/widgets/framework.dart:4340:16)
#28_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3843:20)
#29_____ComponentElement.performRebuild_(package:flutter/src/widgets/framework.dart:5512:16)
#30_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#31_____ProxyElement.update_(package:flutter/src/widgets/framework.dart:5816:5)
#32_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3827:15)
#33_____ComponentElement.performRebuild_(package:flutter/src/widgets/framework.dart:5512:16)
#34_____StatefulElement.performRebuild_(package:flutter/src/widgets/framework.dart:5650:11)
#35_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#36_____StatefulElement.update_(package:flutter/src/widgets/framework.dart:5673:5)
#37_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3827:15)
#38_____ComponentElement.performRebuild_(package:flutter/src/widgets/framework.dart:5512:16)
#39_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#40_____ProxyElement.update_(package:flutter/src/widgets/framework.dart:5816:5)
#41_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3827:15)
#42_____ComponentElement.performRebuild_(package:flutter/src/widgets/framework.dart:5512:16)
#43_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#44_____ProxyElement.update_(package:flutter/src/widgets/framework.dart:5816:5)
#45_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3827:15)
#46______RawViewElement._updateChild_(package:flutter/src/widgets/view.dart:291:16)
#47______RawViewElement.update_(package:flutter/src/widgets/view.dart:378:5)
#48_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3827:15)
#49_____ComponentElement.performRebuild_(package:flutter/src/widgets/framework.dart:5512:16)
#50_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#51_____StatelessElement.update_(package:flutter/src/widgets/framework.dart:5563:5)
#52_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3827:15)
#53_____RootElement._rebuild_(package:flutter/src/widgets/binding.dart:1466:16)
#54_____RootElement.update_(package:flutter/src/widgets/binding.dart:1444:5)
#55_____RootElement.performRebuild_(package:flutter/src/widgets/binding.dart:1458:7)
#56_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#57_____BuildOwner.buildScope_(package:flutter/src/widgets/framework.dart:2905:19)
#58_____AutomatedTestWidgetsFlutterBinding.drawFrame_(package:flutter_test/src/binding.dart:1418:19)
#59_____RendererBinding._handlePersistentFrameCallback_(package:flutter/src/rendering/binding.dart:443:5)
#60_____SchedulerBinding._invokeFrameCallback_(package:flutter/src/scheduler/binding.dart:1392:15)
#61_____SchedulerBinding.handleDrawFrame_(package:flutter/src/scheduler/binding.dart:1313:9)
#62_____AutomatedTestWidgetsFlutterBinding.pump.<anonymous_closure>_(package:flutter_test/src/binding.dart:1273:9)
#63______rootRun_(dart:async/zone.dart:1399:13)
#64______CustomZone.run_(dart:async/zone.dart:1301:19)
#65_____TestAsyncUtils.guard_(package:flutter_test/src/test_async_utils.dart:71:41)
#66_____AutomatedTestWidgetsFlutterBinding.pump_(package:flutter_test/src/binding.dart:1260:27)
#67_____WidgetTester.pumpWidget.<anonymous_closure>_(package:flutter_test/src/widget_tester.dart:602:22)
#68______rootRun_(dart:async/zone.dart:1399:13)
#69______CustomZone.run_(dart:async/zone.dart:1301:19)
#70_____TestAsyncUtils.guard_(package:flutter_test/src/test_async_utils.dart:71:41)
#71_____WidgetTester.pumpWidget_(package:flutter_test/src/widget_tester.dart:599:27)
#72_____main.<anonymous_closure>_(file:///Users/ksokolovskyi/development/flutter_master/packages/flutter/test/widgets/overlay_test.dart:1554:18)
#73_____testWidgets.<anonymous_closure>.<anonymous_closure>_(package:flutter_test/src/widget_tester.dart:183:29)
<asynchronous_suspension>
#74_____TestWidgetsFlutterBinding._runTestBody_(package:flutter_test/src/binding.dart:1017:5)
<asynchronous_suspension>
#75_____StackZoneSpecification._registerCallback.<anonymous_closure>_(package:stack_trace/src/stack_zone_specification.dart:114:42)
<asynchronous_suspension>
ValueNotifier<_OverlayEntryWidgetState?>:
test: Overlay.wrap
identityHashCode: 1040880156
context:
start: >
#6_______dispatchFlutterEventToLeakTracker_(package:leak_tracker_flutter_testing/src/testing.dart:74:23)
#7______FlutterMemoryAllocations.dispatchObjectEvent_(package:flutter/src/foundation/memory_allocations.dart:249:23)
#8______FlutterMemoryAllocations.dispatchObjectCreated_(package:flutter/src/foundation/memory_allocations.dart:283:5)
#9______ChangeNotifier.maybeDispatchObjectCreation_(package:flutter/src/foundation/change_notifier.dart:234:41)
#10_____new_ValueNotifier_(package:flutter/src/foundation/change_notifier.dart:538:22)
#11_____new_OverlayEntry_(package:flutter/src/widgets/overlay.dart:167:74)
#12______WrappingOverlayState._entry_(package:flutter/src/widgets/overlay.dart:852:36)
#13______WrappingOverlayState._entry_(package:flutter/src/widgets/overlay.dart)
#14______WrappingOverlayState.build_(package:flutter/src/widgets/overlay.dart:870:38)
#15_____StatefulElement.build_(package:flutter/src/widgets/framework.dart:5599:27)
#16_____ComponentElement.performRebuild_(package:flutter/src/widgets/framework.dart:5487:15)
#17_____StatefulElement.performRebuild_(package:flutter/src/widgets/framework.dart:5650:11)
#18_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#19_____ComponentElement._firstBuild_(package:flutter/src/widgets/framework.dart:5469:5)
#20_____StatefulElement._firstBuild_(package:flutter/src/widgets/framework.dart:5641:11)
#21_____ComponentElement.mount_(package:flutter/src/widgets/framework.dart:5463:5)
#22_____Element.inflateWidget_(package:flutter/src/widgets/framework.dart:4340:16)
#23_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3849:18)
#24_____ComponentElement.performRebuild_(package:flutter/src/widgets/framework.dart:5512:16)
#25_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#26_____ComponentElement._firstBuild_(package:flutter/src/widgets/framework.dart:5469:5)
#27_____ComponentElement.mount_(package:flutter/src/widgets/framework.dart:5463:5)
#28_____Element.inflateWidget_(package:flutter/src/widgets/framework.dart:4340:16)
#29_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3843:20)
#30_____ComponentElement.performRebuild_(package:flutter/src/widgets/framework.dart:5512:16)
#31_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#32_____ProxyElement.update_(package:flutter/src/widgets/framework.dart:5816:5)
#33_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3827:15)
#34_____ComponentElement.performRebuild_(package:flutter/src/widgets/framework.dart:5512:16)
#35_____StatefulElement.performRebuild_(package:flutter/src/widgets/framework.dart:5650:11)
#36_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#37_____StatefulElement.update_(package:flutter/src/widgets/framework.dart:5673:5)
#38_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3827:15)
#39_____ComponentElement.performRebuild_(package:flutter/src/widgets/framework.dart:5512:16)
#40_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#41_____ProxyElement.update_(package:flutter/src/widgets/framework.dart:5816:5)
#42_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3827:15)
#43_____ComponentElement.performRebuild_(package:flutter/src/widgets/framework.dart:5512:16)
#44_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#45_____ProxyElement.update_(package:flutter/src/widgets/framework.dart:5816:5)
#46_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3827:15)
#47______RawViewElement._updateChild_(package:flutter/src/widgets/view.dart:291:16)
#48______RawViewElement.update_(package:flutter/src/widgets/view.dart:378:5)
#49_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3827:15)
#50_____ComponentElement.performRebuild_(package:flutter/src/widgets/framework.dart:5512:16)
#51_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#52_____StatelessElement.update_(package:flutter/src/widgets/framework.dart:5563:5)
#53_____Element.updateChild_(package:flutter/src/widgets/framework.dart:3827:15)
#54_____RootElement._rebuild_(package:flutter/src/widgets/binding.dart:1466:16)
#55_____RootElement.update_(package:flutter/src/widgets/binding.dart:1444:5)
#56_____RootElement.performRebuild_(package:flutter/src/widgets/binding.dart:1458:7)
#57_____Element.rebuild_(package:flutter/src/widgets/framework.dart:5203:7)
#58_____BuildOwner.buildScope_(package:flutter/src/widgets/framework.dart:2905:19)
#59_____AutomatedTestWidgetsFlutterBinding.drawFrame_(package:flutter_test/src/binding.dart:1418:19)
#60_____RendererBinding._handlePersistentFrameCallback_(package:flutter/src/rendering/binding.dart:443:5)
#61_____SchedulerBinding._invokeFrameCallback_(package:flutter/src/scheduler/binding.dart:1392:15)
#62_____SchedulerBinding.handleDrawFrame_(package:flutter/src/scheduler/binding.dart:1313:9)
#63_____AutomatedTestWidgetsFlutterBinding.pump.<anonymous_closure>_(package:flutter_test/src/binding.dart:1273:9)
#64______rootRun_(dart:async/zone.dart:1399:13)
#65______CustomZone.run_(dart:async/zone.dart:1301:19)
#66_____TestAsyncUtils.guard_(package:flutter_test/src/test_async_utils.dart:71:41)
#67_____AutomatedTestWidgetsFlutterBinding.pump_(package:flutter_test/src/binding.dart:1260:27)
#68_____WidgetTester.pumpWidget.<anonymous_closure>_(package:flutter_test/src/widget_tester.dart:602:22)
#69______rootRun_(dart:async/zone.dart:1399:13)
#70______CustomZone.run_(dart:async/zone.dart:1301:19)
#71_____TestAsyncUtils.guard_(package:flutter_test/src/test_async_utils.dart:71:41)
#72_____WidgetTester.pumpWidget_(package:flutter_test/src/widget_tester.dart:599:27)
#73_____main.<anonymous_closure>_(file:///Users/ksokolovskyi/development/flutter_master/packages/flutter/test/widgets/overlay_test.dart:1554:18)
#74_____testWidgets.<anonymous_closure>.<anonymous_closure>_(package:flutter_test/src/widget_tester.dart:183:29)
<asynchronous_suspension>
#75_____TestWidgetsFlutterBinding._runTestBody_(package:flutter_test/src/binding.dart:1017:5)
<asynchronous_suspension>
#76_____StackZoneSpecification._registerCallback.<anonymous_closure>_(package:stack_trace/src/stack_zone_specification.dart:114:42)
<asynchronous_suspension>
package:matcher expect
package:leak_tracker_testing/src/leak_testing.dart 69:24 LeakTesting.collectedLeaksReporter.<fn>
package:leak_tracker_flutter_testing/src/testing.dart 70:37 maybeTearDownLeakTrackingForAll
===== asynchronous gap ===========================
dart:async _CustomZone.registerBinaryCallback
package:flutter_test/src/test_compat.dart 283:3 _tearDownForTestFile
✖ (tearDownAll)Flutter Doctor output
Doctor output
[!] Flutter (Channel [user-branch], 3.18.0-18.0.pre.1479, on macOS 14.1 23B2073 darwin-arm64, locale en-US)
! Flutter version 3.18.0-18.0.pre.1479 on channel [user-branch] at /Users/ksokolovskyi/development/flutter_master
Currently on an unknown channel. Run `flutter channel` to switch to an official channel.
If that doesn't fix the issue, reinstall Flutter by following instructions at https://flutter.dev/docs/get-started/install.
! Upstream repository unknown source is not the same as FLUTTER_GIT_URL
• FLUTTER_GIT_URL = [email protected]:ksokolovskyi/flutter.git
• Framework revision 90e15dbf42 (60 minutes ago), 2024-03-25 14:50:27 +0100
• Engine revision 857584c458
• Dart version 3.4.0 (build 3.4.0-268.0.dev)
• DevTools version 2.34.0-dev.12
• If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
• Android SDK at /Users/ksokolovskyi/Library/Android/sdk
• Platform android-34, build-tools 34.0.0
• ANDROID_HOME = /Users/ksokolovskyi/Library/Android/sdk
• Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 15.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Build 15C65
• CocoaPods version 1.14.3
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 2022.3)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)
[✓] VS Code (version 1.87.2)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.84.0
[✓] Connected device (4 available)
• macOS (desktop) • macos • darwin-arm64 • macOS 14.1 23B2073 darwin-arm64
• Chrome (web) • chrome • web-javascript • Google Chrome 120.0.6099.199
[✓] Network resources
• All expected network resources are available.
! Doctor found issues in 1 category.Metadata
Metadata
Assignees
Labels
a: leak trackingIssues and PRs related to memory leaks detected by leak_trackerIssues and PRs related to memory leaks detected by leak_trackera: tests"flutter test", flutter_test, or one of our tests"flutter test", flutter_test, or one of our testsframeworkflutter/packages/flutter repository. See also f: labels.flutter/packages/flutter repository. See also f: labels.team-frameworkOwned by Framework teamOwned by Framework team