NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #3516 most downloaded on pub.dev
Chuck is an HTTP Inspector tool which helps debugging http requests. It catches and stores http requests and responses, which can be viewed via simple UI.
Last release 4 days ago
04 Oct 2026
Release timing varies
gaps range from 8 days to 3 months
Nearly every release is documented
notes for 59 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
5 years old
73 releases · first in 2021
Removed the package_info_plus dependency. App details in exported logs now come from ChuckCore.getPackageInfo(), which awaits an optional packageInfoP
package_info_plus dependency. App details in exported logs now come from ChuckCore.getPackageInfo(),
which awaits an optional packageInfoProvider passed to Chuck (returns the new ChuckPackageInfo). Without a
provider the log header simply omits the app details.share_plus dependency. Chuck takes a single optional onShare callback (ChuckShareContent with
subject, text or filePath). Without it the share button on the call details screen and the "Share" action after
saving logs are hidden.ChuckCore.saveHttpRequests now returns Future<void>.Full Changelog : 3.1.0...3.1.3
Full Changelog: 3.1.0...3.1.3
One column per quarter.
material_ui to ^1.5.0, share_plus to ^13.3.1 and package_info_plus to ^10.2.2.dart:convert and dart:io imports in the save helper to the symbols it uses.
No API or behaviour changes.Fixed the ScrollController is attached to more than one ScrollPosition assertion thrown while scrolling or swiping tabs on the call details screen (iO
ScrollController is attached to more than one ScrollPosition assertion thrown while
scrolling or swiping tabs on the call details screen (iOS). The Preview tab now owns its
ScrollController instead of sharing the PrimaryScrollController with the other tabs.SliverList.builder). The tree is
flattened into the currently visible rows, so only rows on screen are built and large responses
scroll smoothly.Array<Object>[3]) consistently, and a
primitive JSON root value (e.g. "ok" or 42) is now displayed instead of an empty view.Formatted the package, example and tests with a 120 column page width (formatter.page_width in analysis_options.yaml). No API or behaviour changes.
material_ui to ^1.4.0.formatter.page_width
in analysis_options.yaml). No API or behaviour changes.Full Changelog : 3.0.1...3.1.0
Full Changelog: 3.0.1...3.1.0
Dropped the http (package:http) dependency. Chuck no longer pulls http into consumers'
dependency graphs.
Chuck.onHttpResponse(...) and the internal ChuckHttpAdapter.ChuckHttpExtensions extension (Future<Response>.interceptWithChuck(...)).New client agnostic API which replaces it and works with any http client, including
package:http, chopper, retrofit or a hand written one. It takes plain values (method, uri,
headers, body, status code), so Chuck does not need to depend on the client:
chuck.logHttpCall(...) logs a finished request and response in one step.chuck.logRequest(...) returns a call id; chuck.logResponse(id, ...) and
chuck.logError(id, ...) complete it later, for clients which stream the response.chuck.genericAdapter exposes the same methods as ChuckGenericAdapter if you prefer wiring
the adapter yourself.-1, so they never collide with the hashCode based ids
used by the Dio and HttpClient adapters.Migration for package:http users:
final response = await http.get(url);
chuck.logHttpCall(
method: response.request!.method,
uri: response.request!.url,
statusCode: response.statusCode,
requestHeaders: response.request?.headers,
responseHeaders: response.headers,
responseBody: response.body,
client: 'http package',
);
Dio and dart:io HttpClient integrations are unchanged.
Full Changelog : 3.0.0...3.0.1
Full Changelog: 3.0.0...3.0.1
ThemeData (ChuckThemeData.isolate / ChuckThemeData.buildTheme), so the app's colors, fonts,
tab and button styling can't leak into the inspector. Only the brightness and an explicit
ChuckThemeExtension override are still taken from the surrounding app..pubignore: package tests, the example app's test and
analysis config, pubspec.lock, .metadata and editor/CI folders are no longer shipped to
pub.dev (they stay in git). Only example/lib/main.dart, example/pubspec.yaml and
example/README.md remain so the pub.dev "Example" tab keeps working.Full Changelog : b.2.3.1...b.3.0.0
Full Changelog: b.2.3.1...b.3.0.0
flutter_local_notifications. Chuck no longer ships a native notification
dependency, which removes the notification permission, the notification channel setup and a large
chunk of native code from the final APK/IPA.
Chuck(showNotification: ...) and Chuck(notificationIcon: ...) parameters — delete
them from your Chuck(...) call.ChuckCore(showNotification: ..., notificationIcon: ...).ChuckButton: draggable floating button which shows the number of intercepted calls and
opens the inspector on tap. It replaces the notification as the default way of opening Chuck.
builder: chuck.builder in MaterialApp for the default placement, or build
ChuckButton(chuckCore: chuck.core, child: child) yourself to customise visible, alignment,
padding, draggable and hideWhenEmpty.enabled: false or while the inspector is open.Chuck.core, Chuck.callsStream and ChuckCore.callsStream / ChuckCore.isInspectorOpened
so a custom inspector entry point can be built without touching internals.>=3.13.0 and Flutter >=3.47.0; the example app now
uses the same constraints.Podfile.lock and
Pods/ removed, xcconfigs and workspace cleaned) and adopted the UIScene lifecycle
(UIApplicationSceneManifest with FlutterSceneDelegate, AppDelegate now registers plugins via
FlutterImplicitEngineDelegate).Full Changelog : 2.6.1...2.6.2
Full Changelog: 2.6.1...2.6.2
No ScaffoldMessenger widget found crash when tapping copy buttons (request/response body, headers, error, stack trace, JSON viewer, cURL) inside apps whose widget tree does not expose a ScaffoldMessenger above Chuck's screens.
ScaffoldMessenger.ChuckSnackBarHelper, which uses ScaffoldMessenger.maybeOf and logs instead of throwing when no messenger is reachable.Full Changelog : 2.6.0...2.6.1
Full Changelog: 2.6.0...2.6.1
prefer_if_elements_to_conditional_expressions lint violations in JSON viewer widget to resolve pub.dev pana static analysis and platform score.Performance optimization and code quality improvements for Chuck Interceptor by @SunnatilloShavkatov with @Copilot in #3
Full Changelog: https://github.com/SunnatilloShavkatov/chuck_interceptor/commits/2.6.0
enabled flag (default true). When set to false, interceptors short-circuit immediately with zero logging, zero memory allocation, and zero overhead for production builds.maxBodySize parameter (default 1 MB) to prevent OOM crashes on huge payloads (e.g. large file downloads, binary streams).permission_handler and 5 native sub-packages, significantly reducing APK/IPA binary size.share_plus (XFile) requiring zero Android storage permissions..pubignore by excluding platform and test build artifacts, reducing pub.dev archive size from 125 KB down to 39 KB (~70% reduction).ThemeExtension (ChuckThemeExtension) with comprehensive light & dark tokens (semantic status colors, HTTP method badges, JSON syntax highlighting).addError not clearing loading = false or calculating call duration, leaving errored calls indefinitely in pending state.firstWhere crash in call details screen when a call was evicted from FIFO while being viewed.* Updated dependencies.
* Updated dependencies.
Added ChuckThemeExtension and ChuckThemeData exports for package-level Chuck UI theming.
ChuckThemeExtension and ChuckThemeData exports for package-level Chuck UI theming.ThemeData.onAccent theme token to ensure readable foreground content on accent-colored surfaces.* Version bump for publishing
update version to 2.4.1 and upgrade flutter_local_notifications to 21.0.0
Updated dependencies: flutter_local_notifications to ^20.0.0
Updated dependencies: share_plus to ^12.0.1, flutter_local_notifications to ^19.5.0
* Version bump for publishing
fix: initialize maxCacheCountNotifier at declaration and update versi…
fix: initialize maxCacheCountNotifier at declaration and update versi…
…on to 2.3.1
fix: correct version number in CHANGELOG and update code block format…
fix: correct version number in CHANGELOG and update code block format…
…ting in README
* Updated dependencies.
* Updated dependencies.
* Updated dependencies.
* Updated dependencies.
* Updated dependencies.
* Updated dependencies.
* Updated dependencies.
* Updated dependencies.
* Updated dependencies.
* Updated dependencies.
* Updated dependencies.
* Updated dependencies.
* Updated dependencies.
* Updated dependencies.
Thank you, @Hayotbek_Ferghana, for fixing the ui bug!
UI bug fixes. Updated dependencies.
* Updated dependencies.
Updated dependencies. Updates minimum supported SDK version to Flutter 3.19 /Dart 3.3.0
* Updated dependencies
* Updated dependencies
* Updated dependencies
Nothing published for this version
* Updated dependencies
flutter_local_notifications package updated
* json viewer ui changes
* json viewer ui changes
Updates minimum supported SDK version to Flutter 3.13/Dart 3.1.0
Nothing published for this version
* Updated dependencies
flutter 2.10.0 support, dart 3 support
* Updated dependencies
* migration Flutter sdk 3.7.0
* bug fixed
* bug fixed
chopper package removed from dependencies
collection package removed from dependencies
* Updated dependencies
* open_file package remove
* Updated dependencies
Updated dependencies, Bug fixes
Your coding agent can read these notes before it upgrades. Set up the MCP server →