github openreplay/openreplay v1.28.0
v1.28

8 hours ago

🚀 Features

  • (MCP) Introducing the OpenReplay MCP app, to replay sessions, build charts and more directly from any MCP-enabled host
  • (Flutter)(Beta) New Flutter SDK for recording sessions on iOS and Android apps
  • (Integrations) Added Linear as an issue tracker integration

💪 Improvements

  • (Replay) Support for native <dialog> elements and page color schemes
  • (Replay) Native <select> dropdowns are now shown when opened by the user
  • (Analytics) Breakdowns now support event properties and more session attributes (duration, screen size, browser version, metadata)
  • (Analytics) Page titles are now displayed in user journeys
  • (Tracker) Added resanitize() for updating sanitization rules on the fly
  • (Tracker) Improved privateMode with data-openreplay-unmask now applying to entire subtrees and sanitization of referrer URLs
  • (Tracker) Better compatibility with pages overriding core DOM methods (Prototype.js, MooTools, some polyfills)
  • (Tracker) Full TypeScript definitions for all entry points
  • (Assist) Ask for the user's permission before an agent can view their live session
  • (React-Native) Support for v0.85 and fixes for the new architecture
  • (Frontend) Faster dashboards thanks to a new charting library and lazy loading
  • (Frontend) Localized the UI in Korean and Ukrainian
  • (Backend) Fewer services to run as we merged heuristics into db, assist-api, integrations and assist-stats into api service
  • (Backend) Reworked the message parser and the db and ender services for higher throughput, lower memory usage and no data loss on restarts
  • (Backend) Reworked assets caching with smarter retries, per-host throttling and optional compression
  • (Backend)(EE) Reworked metrics across all backend services
  • (Spot) Refactored the extension's messaging and storage for better stability
  • (DevOps) Replaced MinIO with RustFS as the default object storage
  • (DevOps) Self-contained Docker Compose setup with health checks, ordered startup and a new docker-upgrade.sh
  • Minor UI/UX tweaks
  • Security enhancements

🐞 Bugs

  • Fixed filters on device type and OS version being ignored
  • Fixed a bug causing zero-duration sessions to never end
  • Fixed page titles being lost on location events
  • Fixed a crash when displaying user initials with non-latin characters
  • Fixed the player getting stuck in a loading state
  • Fixed touch cursors drifting in mobile replays on unknown devices
  • Fixed replays breaking when the page's root <html> element is replaced
  • Fixed session reset between tabs in tracker
  • Fixed JS error messages being cut in tracker
  • Fixed Windows 11 detection in tracker
  • Fixed UTC offset for half-hour time zones in tracker
  • Fixed assist filter operators
  • Fixed cards being clipped in dashboards
  • Fixed missing sessions returning errors instead of 404 on replay endpoints
  • Fixed Kafka topics using only half of the available partitions
  • Tracker declarations fail strict TypeScript NodeNext resolution (#4910)
  • Sprite icons blank in replay: #OPENREPLAY_SPRITES_MAP container missing (#4895)
  • Tracker: People batcher drops user_id when merging same-type actions (#4879)
  • Live co-browsing does not update input values in Firefox (#4858)
  • Canvas replay is blank in Chrome (#4853)
  • Session metadata chips overlap the session timestamp in the Sessions list (#4844)
  • Early user input during tracker start produces a malformed batch, truncating the session to ~1s (#4836)
  • Adding a custom Event filter never triggers a refetch (#4829)
  • Tracker 18.1.2 sends visual batches without split that v1.27 rejects (#4826)
  • meta_ url filter is broken (#4798)
  • Native <dialog showModal()> not restored on session replay (#4797)
  • Heatmap filter doesn't change path to create card (#4792)
  • openreplay -s fails on Kubernetes version check (#4758)
  • Canvases ingress missing /ingest rewrite + CORS (#4706)
  • Performance module able to hang entire page randomly (#4656)
  • JWT refresh leeway default of 3 days allows extended token reuse after expiry (#4649)
  • Typo in spot refresh token log message (#4648)
  • Log injection in password reset (#4647)
  • False positive "app_crash" issues (#4623)
  • [React Native] Getting OOM crashes on production (#4581)
  • Frontend requests non-existent /v2/api/* endpoints (#4558)
  • Elements using conditional CSS not shown in session replays (#4328)

🙏 Special thanks

Don't miss a new openreplay release

NewReleases is sending notifications on new releases.