PackageTrack
Sign in Get early access

ispectify_dio

Dio interceptor for ISpect that captures correlated request, response, error, timing, and redacted payload diagnostics.

6.1.7 3.7K downloads/mo #4275 most downloaded on pub.dev yelmuratoff/ispect

What this package is like to depend on

Last release 6 days ago

18 Aug 2026

Ships on a steady schedule

a new release about every 9 days

Most releases are documented

notes for 49 of 62 stable releases

Nothing withdrawn

no release was ever pulled

2 years old

229 releases · first in 2025

166 releases in the last 12 months

see the full history below

Release timeline

229 releases · Jan 2025 to Aug 2026
2026
Release Pre-release

Releases

latest 60 of 229
  1. 7.0.0-dev9 15 Aug 2026 pre-release

    Nothing published for this version

  2. 7.0.0-dev8 12 Aug 2026 pre-release

    Nothing published for this version

  3. 7.0.0-dev7 12 Aug 2026 pre-release

    Nothing published for this version

  4. 7.0.0-dev6 04 Aug 2026 pre-release

    Nothing published for this version

  5. 7.0.0-dev5 01 Aug 2026 pre-release

    Nothing published for this version

  6. 7.0.0-dev4 30 Jul 2026 pre-release

    Nothing published for this version

  7. 7.0.0-dev3 27 Jul 2026 pre-release

    Nothing published for this version

  8. 7.0.0-dev2 27 Jul 2026 pre-release

    Nothing published for this version

  9. 7.0.0-dev10 18 Aug 2026 pre-release

    Nothing published for this version

  10. 6.1.7 25 Jul 2026
    Release notes

    Bug Fixes

    • JSON Lines export: Logs containing client-specific objects in nested diagnostic metadata are now exported without losing the original log fields.
    Open source →
  11. 6.1.6 25 Jul 2026
    Release notes

    Security

    • Redaction coverage: Trace and database error strings, URL fragments, and numeric JSON fields are now redacted, and the default sensitive-key set covers session, passphrase, credential(s), and pincode.
    • Fail-closed defaults: Depth-limited key redaction, filtered log file export, and JSON-tree value copy now redact by default instead of passing data through unredacted.
    Open source →
  12. 6.1.4 21 Jul 2026
    Release notes

    Bug Fixes

    • Log detail panel: Opening a log from search results now preserves the focused match and list position.
    • Log search navigation: Previous/next match arrows now scroll to the correct card when HTTP request and response logs are grouped into transactions.
    • Web/WASM log files: Browser Blob validation now behaves consistently in JavaScript and WebAssembly builds.
    • Web log imports: Malformed structured text is no longer misclassified as JSON, and file stream failures stop processing without a second success callback.

    Code Quality

    • Deprecation schedule: Compatibility APIs retained in 6.x now have a consistent 7.0.0 removal target and migration inventory.

    CI

    • Package gates: ispectify_riverpod and the web logs viewer now run analyzer and test coverage checks in CI.
    Open source →
  13. 6.1.3 17 Jul 2026
    Release notes

    Improvements

    • High-volume profiling: The benchmark now exercises the real ISpect logger and log viewer, with isolated filters-off/on frame summaries and recorded display metadata.
    Open source →
  14. 6.1.2 13 Jul 2026
    Release notes

    Bug Fixes

    • JSON log sharing: Sharing all logs no longer fails when diagnostic metadata contains values such as Duration, Uri, enums, or client-specific objects.
    Open source →
  15. 6.1.1 13 Jul 2026
    Release notes

    Improvements

    • Published benchmark results: CI-generated AOT hot-path and Android release-footprint metrics are now linked from the performance guide; physical-device startup and frame profiling remain explicitly documented as pending measurements.
    • Faster onboarding: the README now opens with a copy-paste Flutter setup, an integration package selector, and a documented ispectify logger-only path.
    • Focused examples: the ispect showcase now has separate network, WebSocket, database, BLoC, Riverpod, and routing targets; BLoC and Riverpod also include standalone pure-Dart examples.
    • Architecture walkthroughs: new integration guidance shows where ISpect fits in Clean Architecture, BLoC, Riverpod, and Navigator-based routing.
    • Database setup guidance: the database guide now passes ISpectDbConfig directly to traced calls, matching the public API.
    Open source →
  16. 6.1.0 12 Jul 2026
    Release notes

    Security

    • URL fragment redaction: sensitive values in a URL fragment — such as the OAuth #access_token=… redirect — are now masked in logs, error messages, and exports.
    • Export credential scrubbing: URL credentials and Bearer/Basic/Token values are now stripped from text, Markdown, CSV, and JSON Lines exports even when no redaction keys are supplied.
    • Trace value redacted by default: the value captured by trace and its async/sync/stream variants is now redacted alongside meta and target; opt out with ISpectTraceConfig(redact: false).
    • Wider export redaction: CSV targets, exported stack traces, and the JSON Lines fallback are now redacted, and a failed JSON encode surfaces the error instead of being dropped.
    • Network redaction fails closed: redacted network payloads never fall back to raw data when a value can't be processed.

    Bug Fixes

    • WebAssembly compatibility: opt-in rolling file history no longer prevents Web/WASM builds.
    • Web-safe log IDs: log entry IDs stay correctly time-sortable on web builds.
    • copyWith keeps identity: ISpectLogData.copyWith/copy preserve the original id so copies compare equal and de-duplicate correctly; pass id: for a new one.
    • Observer recursion: a log emitted synchronously from inside an observer is dropped instead of recursing.
    • WebSocket log keys: wsSend/wsReceive always use ws-sent/ws-received — and error frames ws-error — regardless of the operation name.
    • Request ID collisions: network request IDs no longer collide between separate app runs started close together.

    Improvements

    • Rolling file history: opt-in RollingFileLogHistory persists redacted daily JSON Lines with bounded retention, archive support, and legacy 4.x daily-file compatibility.
    • meta on graphqlTrace and sse: both now accept an optional meta map, matching the other trace helpers.
    • Consistent projection warnings: a throwing projectResult/projectEvent is logged as a warning across all trace variants instead of being silently dropped in streams.
    • Private keys in lists: internal _-prefixed keys nested inside list elements are now stripped from exports.
    Open source →
  17. 6.0.7 03 Jul 2026
    Release notes

    Improvements

    • Kurdish localization: ISpect's UI is now translated into Sorani (ckb) and Kurmanji (ku); both resolve automatically through ISpectLocalization.supportedLocales. Apps that display ISpect in these locales own their Material/Cupertino delegates, as with every other locale.
      Thanks @RekanAnwar
    Open source →
  18. 6.0.6 03 Jul 2026

    Nothing published for this version

  19. 6.0.5 28 Jun 2026
    Release notes

    Improvements

    • dart:developer console output: Opt into DevTools-native structured logging with ISpectBaseLogger(output: developerLogOutput) — each entry becomes one log() call (boxed output stays intact) with the log level mapped through. The default print/console output is unchanged (#85).
    Open source →
  20. 6.0.4 28 Jun 2026
    Release notes

    Improvements

    • Pretty/boxed console logs: Opt into framed, visually-separated console output via ConsoleSettings(formatter: const BoxedLogEntryFormatter()), or supply any custom ILogEntryFormatter. The compact default is unchanged (#85).
    Open source →
  21. 6.0.3 27 Jun 2026
    Release notes

    Bug Fixes

    • WebAssembly (WASM) support: ispect is WASM-ready and supports all six platforms (Android, iOS, web, Windows, macOS, Linux). flutter build web --wasm now succeeds; log export uses the browser download on web and WASM, and the native filesystem on other platforms.
    Open source →
  22. 6.0.2 26 Jun 2026
    Release notes

    Security

    • Redaction hardened across capture and export: Sensitive keys are matched more broadly (camelCase and whitespace-trimmed forms), the default sensitive-key set is broadened, and credential/PII values are fully masked. Redaction now fails closed — a payload that can't be processed is masked rather than passed through.
    • Diagnostics redacted everywhere they leave the app: Network URLs (including in generated cURL), database values and error messages, BLoC/Riverpod console output, navigation route arguments, and every export path (JSON, text, Markdown, file share, and clipboard copy) are redacted by default.
    • One-switch redaction control: A single source of truth turns redaction on or off everywhere at once — ISpectRedaction.enabled = false (or ISpect.run(redactionEnabled: false)) disables masking across network, database, BLoC/Riverpod, navigation, and all export paths. On by default; disabling is a deliberate opt-out.
    • Inert in production builds: When ISpect is compiled out (ISPECT_ENABLED omitted), observers stay silent and the global logger retains no history and writes nothing to the console, so diagnostics don't accumulate in release builds.
    Open source →
  23. 6.0.1 26 Jun 2026

    Nothing published for this version

  24. 6.0.0 22 Jun 2026
    Release notes

    Improvements

    • Owned dark theme by default: ISpect now ships its own flat dark design across all surfaces — logs, JSON viewer, composer, sheets, inspector, and the performance overlay — independent of the host app, with a paired light variant. Choose the mode via ISpectTheme.themeMode, or set ISpectTheme.useHostColors: true to inherit the host ColorScheme as before.
    • Squircle surfaces: Cards, buttons, fields, sheets, tiles, and the inspector overlay use continuous (squircle) corners for a smoother, more cohesive look.
    • ispectify_riverpod: New package — ISpectRiverpodObserver logs provider lifecycle under riverpod-* keys (closes #80).
    • Provider-agnostic ispectify_ws: WebSocket diagnostics now log any client (ws, socket_io_client, and web_socket_channel adapters ship in the example), plus a new ws-state log type for connection lifecycle.
    • HTTP composer (mini-Postman): Replay a captured request or compose a new one and send it through your own client via ISpect.registerSender(...); the result lands back in the network logs. Redacted values are never resent.
    • Compact network URLs: Collapsed transactions show only the path and query; the full URL stays in the expanded view. On by default, toggle in Settings.
    • Clearer network cards: Per-method colored badges, a status-colored accent bar, de-duplicated expanded sections, and higher-contrast rows.
    • Richer widget inspector: Property chips for composite values (offset, border, gradient, shadow), image/SVG source and decode details, correct selection boxes for rotated and skewed widgets, and grouped RichText spans.
    • ISpectPerformanceOverlay rebuilt: Cross-platform (web + desktop) overlay with UI/raster/total bars, FPS, avg/p99 and jank stats, plus an opt-in enableJankLogging callback for severe frames.
    • Draggable panel 3.0.0: More reliable hide/reveal and a content-sized adaptive layout; customize it fully via ISpectOptions.panelBuilder.
    • Export metadata: ISpectOptions.metadataProvider embeds app/device details into exported and shared logs via the typed ISpectMetadata (host-supplied and not redacted — keep secrets and PII out).

    Behavioral Changes

    • BLoC observer keys: Granular bloc-event, bloc-transition, bloc-state, bloc-create, bloc-close, bloc-done, bloc-error replace state-change / state-error, and meta keys are now kebab-case (BlocJsonKeys.*). Update any filters keyed on the old names.
    • Fuller payloads by default: BLoC and Riverpod now log full event/state values instead of only the runtime type (int → int becomes 0 → 1). Use ISpectRiverpodSettings.compact, or set BLoC's printEventFullData / printStateFullData to false, when state may carry PII. The old ISpectBlocSettings.verbose now matches the default and is deprecated.
    • ISpect.run uncaught-error hook: Typed onUncaughtError(Object error, StackTrace? stack) replaces onUncaughtErrors(List<dynamic>).
    • ispectify_ws drops the ws dependency: Copy the adapter from the package example and add ws to your app; ISpectWSInterceptorSettings and the ws-sent / ws-received / ws-error keys are unchanged.

    Bug Fixes

    • Typed request bodies: DTOs (e.g. Retrofit / json_serializable models) now render as their JSON shape instead of Instance of ... in ispectify_dio and ispectify_ws logs, with redaction reaching their nested fields.
    • ispectify_dio: Responses no longer stay stuck on "Pending" when a downstream interceptor rewrites the request via copyWith.
    • Reliable error capture: Flutter, platform, and zoned errors now report the original thrown object and stack trace, and ISpect.run's onInit / onInitialized run inside the guarded zone so binding-setup errors are no longer dropped.
    • Navigation logging: A page opened from under a modal (e.g. pushed from a bottom sheet) is logged as a page transition again instead of being dropped.
    • Logs screen reactivity: "Clear history" empties the list immediately, and view-controller history changes refresh the UI without a new log emission.
    • Network status code shown again: Grouped transactions display the response status-code chip (it was read from the wrong metadata key).
    • Color picker accuracy: The sampled colour now matches the pixel under the crosshair, reports the true colour for translucent and anti-aliased pixels, and no longer drifts to a neighbour when you lift your finger.

    Code Quality

    • Sealed core classes: Several data and utility classes (LogDetails, RedactionResult, CurlUtils, JsonTruncator, NetworkPayloadSanitizer, and others) are now final / abstract final. RedactionService, ISpectErrorHandler, NetworkTransaction, and the two log formatters stay open for subclassing.
    Open source →
  25. 6.0.0-dev.35 22 Jun 2026 pre-release

    Nothing published for this version

  26. 6.0.0-dev.34 22 Jun 2026 pre-release

    Nothing published for this version

  27. 6.0.0-dev.33 22 Jun 2026 pre-release

    Nothing published for this version

  28. 6.0.0-dev.32 22 Jun 2026 pre-release

    Nothing published for this version

  29. 6.0.0-dev.31 21 Jun 2026 pre-release

    Nothing published for this version

  30. 6.0.0-dev.30 19 Jun 2026 pre-release

    Nothing published for this version

  31. 5.2.0-dev.28 19 Jun 2026 pre-release

    Nothing published for this version

  32. 5.2.0-dev.27 18 Jun 2026 pre-release

    Nothing published for this version

  33. 5.2.0-dev.26 17 Jun 2026 pre-release

    Nothing published for this version

  34. 5.2.0-dev.25 17 Jun 2026 pre-release

    Nothing published for this version

  35. 5.2.0-dev.24 17 Jun 2026 pre-release

    Nothing published for this version

  36. 5.2.0-dev.23 15 Jun 2026 pre-release

    Nothing published for this version

  37. 5.2.0-dev.22 15 Jun 2026 pre-release

    Nothing published for this version

  38. 5.2.0-dev.21 12 Jun 2026 pre-release

    Nothing published for this version

  39. 5.2.0-dev.20 12 Jun 2026 pre-release

    Nothing published for this version

  40. 5.2.0-dev.19 09 Jun 2026 pre-release

    Nothing published for this version

  41. 5.2.0-dev.18 08 Jun 2026 pre-release

    Nothing published for this version

  42. 5.2.0-dev.17 03 Jun 2026 pre-release

    Nothing published for this version

  43. 5.2.0-dev.16 03 Jun 2026 pre-release

    Nothing published for this version

  44. 5.2.0-dev.15 02 Jun 2026 pre-release

    Nothing published for this version

  45. 5.2.0-dev.14 02 Jun 2026 pre-release

    Nothing published for this version

  46. 5.2.0-dev.13 31 May 2026 pre-release

    Nothing published for this version

  47. 5.2.0-dev.12 31 May 2026 pre-release

    Nothing published for this version

  48. 5.2.0-dev.11 29 May 2026 pre-release

    Nothing published for this version

  49. 5.2.0-dev.10 25 May 2026 pre-release

    Nothing published for this version

  50. 5.2.0-dev.9 24 May 2026 pre-release

    Nothing published for this version

  51. 5.2.0-dev.8 24 May 2026 pre-release

    Nothing published for this version

  52. 5.2.0-dev.7 24 May 2026 pre-release

    Nothing published for this version

  53. 5.2.0-dev.6 23 May 2026 pre-release

    Nothing published for this version

  54. 5.2.0-dev.5 22 May 2026 pre-release

    Nothing published for this version

  55. 5.2.0-dev.3 22 May 2026 pre-release

    Nothing published for this version

  56. 5.2.0-dev.2 22 May 2026 pre-release

    Nothing published for this version

  57. 5.2.0-dev.1 22 May 2026 pre-release

    Nothing published for this version

  58. 5.0.4 19 May 2026
    Release notes

    Added

    • Layout inspector breadcrumb: The selected widget's hit-test ancestor chain (Row, Column, Stack, Padding, SizedBox, Align, and other meaningful render objects) is now surfaced as horizontally scrollable chips under the panel title. Tap any chip to re-target the inspector without re-tapping the screen.

    Improvements

    • Breadcrumb navigation: Auto-scrolls the selected chip into view on every selection change, and uses clamping scroll physics so the list never overscrolls or bounces.

    Bug Fixes

    • Layout inspector — icon selection inside chips: Material ActionChip, Chip, FilterChip, and InputChip previously routed every tap to the label slot, hiding the avatar Icon from the inspector path. Tapping the avatar now correctly selects it.
    Open source →
  59. 5.0.3 19 May 2026
    Release notes

    Added

    • The log viewer app bar now surfaces aggregate log statistics and a filter count badge, so active filters and totals are visible without opening the filter sheet.
    • The JSON viewer breadcrumb bar auto-scrolls to the end as you drill in, keeping the current path segment in view on deep structures.

    Improvements

    • The JSON viewer's path navigation got a visual refresh: updated segment colors, tighter spacing, and tap-to-jump segments. The breadcrumb bar moved to its own file for easier reuse.
    • App bar leading icons gained consistent padding and dynamic width so action targets stay tappable across varied layouts.

    Fixed

    • ISpectSettingsState.toJson() no longer throws when disabled_log_types is non-empty. toMap() now returns a List<String> for that field instead of an unmodifiable Set.
    Open source →
  60. 5.0.2 18 May 2026

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive