Skip to main content

xray_serverpod_interceptor 0.1.2 copy "xray_serverpod_interceptor: ^0.1.2" to clipboard
xray_serverpod_interceptor: ^0.1.2 copied to clipboard

Shows the calls a Serverpod client makes in the xRay network inspector, by endpoint and method, with readable arguments, results and errors.

Changelog #

For license information, see LICENSE.

All xRay inspector packages share one version and are released together. Entries are prefixed with the package(s) they affect.

0.1.2 - 2026-10-21 #

Features #

  • decode protobuf bodies, with schema folders pinned per app (#210) (ac923d2)

0.1.1 - 2026-10-20 #

Bug Fixes #

  • xray_website: say what xRay is, for Flutter teams, with alpha access and protected connections (#188) (2b1633c)

0.1.0 - 2026-10-17 #

⚠ BREAKING CHANGES #

  • InspectorEvent has a new subtype for WebSocket messages, so an exhaustive switch over InspectorEvent must handle it.
  • allowInReleaseMode without a password or trusted desktops no longer starts the server, and profile builds need allowInReleaseMode.

Features #

  • add keys in the Key-Value inspector (f7ac47c)
  • alpha feedback issues, redesign and bug fixes (c786af8)
  • browse, preview, save and delete app files in the Files tab (f7ac47c)
  • desktop redesign with the timeline, sessions, GraphQL, device actions and command menu (#63) (f7ac47c)
  • drive the connected app from the device actions drawer: quick settings, deep links, pushes and feature flags (f7ac47c)
  • export sessions to .xray files and HAR, and open them read-only (f7ac47c)
  • redesign onboarding, sign-in, update prompts, settings and the changelog (f7ac47c)
  • search every inspector and run any action from the command menu (f7ac47c)
  • show everything an app did in one Timeline tab (f7ac47c)
  • show GraphQL operations, errors returned with a 200 and subscription messages in Network (f7ac47c)
  • show the roadmap as a board with recently shipped features (f7ac47c)
  • xray_device_actions: apply the desktop app's appearance, locale, text scale, animation and debug overrides in Flutter apps (f7ac47c)
  • xray_inspector_core: add file entries and the files inspector type (f7ac47c)
  • xray_inspector_core: add logger, error and stack trace to log entries and types to key-value entries (f7ac47c)
  • xray_inspector_core: add the device actions protocol (f7ac47c)
  • xray_inspector_core: describe which value types a key-value store can create (f7ac47c)
  • xray_inspector: add the device inspector for deep links, simulated pushes, feature flags and quick settings (f7ac47c)
  • xray_inspector: add XRayFileInspector to browse, read and delete app files (f7ac47c)
  • xray_inspector: create key-value entries with a chosen type (f7ac47c)
  • xray_inspector: record WebSocket connections and messages with networkInspector.recordWebSocket, for example GraphQL subscriptions (f7ac47c)
  • xray_secure_storage_inspector: add string keys from the desktop app (f7ac47c)
  • xray_shared_preferences_inspector: add keys of every shared preferences type (f7ac47c)

Bug Fixes #

  • block websites from reading inspector data through the browser (a18cc1f)
  • clearing a key-value inspector no longer crashes the host app on storage errors (4b273bd)
  • close the floating inspector panel on back when the host has pushed pages (8c5f735)
  • complete captured calls whose socket is detached for a WebSocket (ccd6212)
  • don't start the inspector server in release builds unless opted in (103d984)
  • encode discovery messages as UTF-8 (#15) (387600a)
  • export XRayHttpOverrides and XRayNetworkInspectorHttpClient to the analyzer (#25) (64567c3)
  • give every captured network call and log entry a unique id (31dc3c3)
  • harden the inspector server running inside host apps (b5aea38)
  • keep shared preferences types intact when editing from the desktop app (1ed635f)
  • keep streaming network and log events once an inspector's list is full (13db50f)
  • keep the host app's HttpOverrides working when enableHttpOverride is on (2a73721)
  • keep the macOS window controls clear of the top bar (f7ac47c)
  • let Android back navigate inside the floating inspector panel (0d667b8)
  • let inspectors that share a title use distinct ids (0d2724e)
  • let multiple apps on one device share the discovery port (#16) (0a8bc11)
  • make network and log capture safe for the host app (b11d3d9)
  • make the inspector server restartable and never throw into the host app (c0931b7)
  • make the inspector UI connection lifecycle race-free (8d3f39d)
  • never let the Dio interceptor's bookkeeping fail a host app request (ee4aade)
  • performance and lifecycle fixes in the UI packages (2f0a922)
  • record Dio calls once when enableHttpOverride is also enabled (fae4f5b)
  • refuse to start the inspector server with duplicate inspector ids (c4c1f06)
  • reject a non-positive maxCalls or maxEntries with an ArgumentError (df3806b)
  • release the inspector ports when stop() runs during start() (d89ba05)
  • report the real package version and a protocol version from /api/ping (0dc8a4b)
  • restore const constructor of XRayInspectorServerConfig (#18) (1256d30)
  • serialize network calls with non-JSON bodies or headers (974d04a)
  • show an error instead of an endless spinner when key-value refresh fails (0c548f5)
  • show placeholders for binary, streamed and multipart Dio bodies (7d97815)
  • show the final url of HttpClient calls that followed redirects (b3c7e04)
  • start dev builds when the version check cannot reach the platform (f7ac47c)
  • stop "Stream has already been listened to" when using close() and done together (bf2d808)
  • stop duplicate key-value broadcasts and reject invalid writes with 400 (b3018ea)
  • stop leaking listeners from the inspector settings tiles (3962980)
  • stream intercepted HttpClient responses without buffering or breaking cancel (bc2f6c3)
  • support key-value keys containing '#', '?', '/' or '%' (d902003)
  • uninstall the global HttpClient override when its inspector is disposed (#24) (1d453ec)

Performance Improvements #

  • cap captured network calls and logs to keep long sessions fast (19c5dec)
  • cap inspector UI lists and upsert events by id (ff8565c)
  • let clients fetch only the newest network calls and log entries (bc251ba)
  • only rebuild the network call detail when that call changes (a1941d5)
  • stop replaying the full history on every WebSocket connect (2dc05d4)

0.0.10 #

  • xray_inspector: Fixed HTTP override response body always being empty.
  • xray_inspector: Fixed inspector's own internal calls appearing in the "Network (Http)" tab.
  • xray_inspector: Setting enableHttpOverride: true on more than one XRayNetworkInspector now throws a StateError at startup.

0.0.9 #

  • xray_inspector_core: Extended XRayNetworkCall.copyWith with requestHeaders and requestBody parameters.
  • xray_inspector: Added opt-in global dart:io HttpClient override via enableHttpOverride flag on XRayNetworkInspector. When enabled, all HTTP traffic made through dart:io (including package:http, Cronet, and any other client that delegates to HttpClient) is captured automatically. Silently ignored on web.
  • xray_inspector: Exported XRayHttpOverrides and XRayNetworkInspectorHttpClient for advanced manual wiring.

0.0.8 #

  • Added repository link to pubspec so pub.dev surfaces the GitHub source repository alongside the existing homepage and issue tracker links.

0.0.7 #

  • xray_inspector: Fixed CORS preflight (OPTIONS) responses being returned as 405 Method Not Allowed without CORS headers for the DELETE and PUT endpoints on /api/network/:id/calls, /api/log/:id/entries, and /api/key-value/sources/:sourceId/entries/:key. The CORS middleware is now applied as an outer pipeline wrapper so it also runs for routing misses.

0.0.6 #

  • Version alignment only; no functional changes.

0.0.5 #

0.0.4 #

  • Improved README.md.

0.0.3 #

  • Added support for partnership licenses.

0.0.2 #

0.0.1 #

1
likes
0
points
726
downloads

Documentation

Documentation

Publisher

verified publisherxrayinspector.dev

Weekly Downloads

Shows the calls a Serverpod client makes in the xRay network inspector, by endpoint and method, with readable arguments, results and errors.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

http, serverpod_client, xray_inspector

More

Packages that depend on xray_serverpod_interceptor