Skip to content

Releases: openreplay/openreplay

v1.21.0

19 Nov 17:42
0ca9327
Compare
Choose a tag to compare

Notes:

  • Deprecated a bunch of cards in Analytics due to low usage and limited support for filtering, and reorganized the rest into 3 groups (Product Analytics, Monitors and Web Analytics)

🚀 Features

  • (Integrations) Connect Dynatrace to sync backend logs with session recordings and get the full front-to-back context behind each issue

💪 Improvements

  • (Replayer) More accurate values for web vitals in page load times
  • (DevTools) Redesigned the WebSockets panel for better readability
  • (DevTools) Improved X-Ray readability by grouping close-by frustration events
  • (DevTools) Better display of multi-tab data
  • (Analytics) Added 2 new cards for listing sessions with 4xx/5xx Requests and Slow Network Requests
  • (Analytics) Reworked the queries behind Funnels making it faster to build
  • (Spot) Capture network response payload and support of GraphQL
  • (Tracker) Improved the reliability of the string dictionary mechanism
  • (Tracker) Better support of edge cases in the CSS URL rewriter
  • (Tracker) Reviewed and improved the cross domain iFrame tracking logic
  • Minor UI/UX improvements
  • Security enhancements

🐞 Bugs

  • Fixed the locale detection for datetime format in frontend
  • Fixed a bug preventing heatmaps from properly rendering
  • Fixed a bug that caused canvas elements not being captured after a tracker restart
  • Fixed a bug causing time zone not to be updated from browser locale
  • BeaconProxy window is undefined error (#2742)
  • Time field not updating in network panel when navigating between requests (#2731)
  • Notes tab is empty from second page (#2653)
  • Ping command in the job.yaml is causing the job to fail in Azure Kubernetes cluster (#2630)
  • Cannot read properties of undefined: reading 'toString' (#2628)
  • Cannot read properties of undefined: reading 'line' (#2624)
  • 500 Error on POST sessions/search (#2614)
  • Cannot easily select and copy log text from Open Replay console (#2604)

v1.20.0

12 Sep 02:14
Compare
Choose a tag to compare

Notes:

  • Switched our default license to AGPLv3
  • Deprecated Feature Flags and User Testing modules

🚀 Features

  • (Spot)(Chrome Extension) Introducing Spot, the fastest way to record bugs directly from your browser, with all the context developers need to fix them. Check it out on the Chrome Store and see it in action.

💪 Improvements

  • (OmniSearch) Show the top 10 results for each event/filter making search faster
  • (OmniSearch) Filter sessions by click using CSS selectors
  • (Analytics) Sum the result of multiple series in timeseries card
  • (Analytics) Ability to aggregate results by unique users in different cards
  • (Analytics) Added 2 new cards/tables for top referrer and network requests
  • (Frontend) Revisited all used libraries and reduced the bundle size by 20%
  • Minor UI/UX improvements
  • Security enhancements

🐞 Bugs

  • Fixed issues in heatmaps related to filters and rendering of click rages
  • Fixed a bug where the tab was shown as closed before the end of the replay
  • Fixed an issue in the date/time picker preventing correct filtering of sessions
  • Fixed the apply current timestamp button in preferences which wasn’t firing
  • Resolved an issue affecting search for mobile replays
  • We got the errors table back in cards after it disappeared in latest release
  • Multiple issues with GraphQL plugin (#2399)
  • React-native session continue to record while app is in the background (#2438)
  • TypeError: Cannot read properties of undefined (reading 'images')(#2511)

v1.19.0

10 Jul 11:53
Compare
Choose a tag to compare

🚀 Features

  • (Analytics) Introducing heatmaps for tracking user clicks and frustrations
  • (Replayer) Support of cross-domain iFrames

💪 Improvements

  • (Analytics) Full revamp of dashboards and cards for a better experience
  • (Replayer) Page title is now displayed for each tab inside a recording
  • (Replayer) Clicks inside the click map section are now only relevant to the current session
  • (Replayer) Improved canvas recording and rendering logic
  • (DevTools) Filter by method in Network > Fetch/XHR
  • (DevTools) Show timestamp in all rows
  • (Plugins) Refactored the GraphQL plugin and added duration to queries
  • (Android) Support of Jetpack Compose
  • (DevOps) Support of HorizontalPodAutoscaler v2
  • (DevOps) Added node affinity support to all k8s apps
  • (Connectors)(EE) Improved data insertion/export into ClickHouse by integrating with S3
  • (Assist)(EE) Ability to run the tracker in an assist-only mode
  • Minor UI/UX improvements
  • Security enhancements

🐞 Bugs

  • Fixed an issue affecting the auto-complete of metadata in search
  • Fixed the copy invitation link when adding team members
  • Fixed a bug preventing next session from being played
  • Fixed an issue when caching stylesheets where the user-agent was not passed during retries
  • The weekly report section is now showing back in Preferences
  • Fixed the local time calculation for certain time zones in Preferences
  • Fixed the max length of websocket messages in DevTools
  • Resolved the sessions and events count cron not being triggered
  • Fixed the pagination issues in notes
  • Fixed the issue showing tabs as being closed in session replay
  • Fixed a permission issue with service accounts preventing the replay of sessions (EE)
  • Fixed an issue causing missing mobile recordings (EE)
  • Optional Chaining Breaks Build of NextJS React App (#2180)
  • Network tracking messes up with google maps (#2227)
  • Frontend Tracker ingressClassName hardcoded (#2256)
  • Weekly reports all sent to the same email (#2299)
  • 'recordGraphQL' is of type 'unknown'.ts for GraphQL Plugin (#2304)
  • Postgres show error log ERROR: relation "unstarted_sessions" (#2323)

v1.18.0

31 May 15:38
Compare
Choose a tag to compare

🚀 Features

  • (Android)(Beta) Support for — Android and React Native — apps for replaying mobile sessions with full-fledged DevTools (crashlytics/network payloads/performance metrics)
  • (iOS/Android)(EE) Limit the number of recorded sessions by capturing only those that meet certain conditions
  • (Connectors)(EE) Introducing S3, Elastic and OpenSearch data connectors

💪 Improvements

  • (Replayer) Play and sync an audio track with the session recording
  • (Replayer) View tabs that were closed by the user during a multi-tab session
  • (Replayer) Added keyboard shortcuts for easier navigation
  • (Replayer) Prefetch the first part of the recording’s file for faster time-to-replay
  • (OmniSearch) Find sessions using UTM parameters (source, medium or campaign)
  • (Assist) Support of compression (gzip) for large batches in cobrowsing sessions
  • (Assist) Initiate the Peer socket only upon starting a webRTC call
  • (Plugins) Rewrote the Redux actions and state tracking logic
  • (Plugins) Better TypeScript support in Zustand
  • (DevTools) Redesigned the Redux state view into logs (prevStateactionnextState)
  • (Backend) Improved the canvas pipeline by getting rid of videos (ffmpeg) therefore reducing CPU and storage
  • (Backend) New logging format and tracing in all ingestion services
  • (Backend) Added support for IAM Roles in AWS
  • (Tracker) Better handling of alpha channels in webGL through .webp image format
  • (Tracker)(EE) Ability to run in a co-browser (assist) mode only
  • (Postgres)(EE) Support of partitioning for all tables related to sessions and events
  • Minor UI/UX improvements
  • Security enhancements

🐞 Bugs

  • Fixed an issue in tags preventing it from rendering right after applying changes
  • Assist reports were broken and unusable
  • Fixed an issue with datetime component not properly picking time range
  • Resolved a bug in frontend not sending the refreshToken to the API leading to disconnections
  • Fixed an issue in clickmap causing filters to be ignored
  • Fixed a rendering bug in clickmap card
  • Removed duplicate filters in clickmap card
  • Resolved an issue preventing notes from opening during replay
  • Platform filter was being ignored in table card
  • Couldn’t replay sessions from the funnel card
  • Fixed crash happening in Chrome (code 11)
  • Fixed a crash in replayer caused by iFrame node onload
  • Fixed usability test description check
  • Fixed a bug when streaming multiple canvases in assist
  • Fixed a bug in ClickHouse preventing URL parameters and CSS selectors from being inserted
  • TypeError: Cannot read properties of undefined (reading 'createdAt') (#1884)
  • Paging issue in sessions list (#1891)
  • Srcset value is not saved correctly if the URLs contain commas (#1895)
  • Minio. Access denied for assets in sessions-assets bucket (#1911)
  • Assets are not loading (#1915)
  • Building React Native app crashes (#1918)
  • Video player issue loading images (#1947)
  • Tracker - Aborted request raise exception (#1980)
  • Network Sanitizer type does not allow to return null (#1992)
  • Error while caching asset "NotImplemented: Header 'x-amz-tagging' with value 'retention=default' not implemented" (#2018)
  • XhrProxy silently failing when passed URL object (#2035)

v1.17.0

27 Jan 03:03
Compare
Choose a tag to compare

🚀 Features

  • (Tag and Watch) Tag a particular element in your web app (e.g. popup) and search for sessions where it’s been displayed for users
  • (DevTools) Ability to capture and troubleshoot websocket messages
  • (Offline Mode) Record sessions even when your web app is offline
  • (Conditional Recording)(EE) Limit the number of recorded sessions by capturing only those that meet certain conditions

💪 Improvements

  • (React-Native)(iOS) Support of network payloads in DevTools
  • (Assist) Improved search and reviewed the way we manage WebSockets
  • (Backend) Reworked the canvas processing pipeline and reduced resource consumption
  • (Tracker) Better handling of pages with multiple canvas elements
  • (Plugins)(Assist) Changed the WebSocket reconnection policy by adding exponential waits
  • Minor UI/UX improvements
  • Security enhancements

🐞 Bugs

  • Fixed a bug preventing dead clicks and errors from appearing in X-Ray
  • Added method to restart canvas capture in case of context recreation
  • Fixed an issue preventing iOS sessions from being returned to frontend
  • Fixed an issue in sessions list not properly resetting its pagination
  • Fixed a display issue with multiple canvases in session replay
  • Fixed a bug in frontend related to enabling the Elastic integration
  • Fixed the display of events for mobile recordings
  • Fixed a bug in CLI when installing k9s
  • Console.log shows as coming from console.js in devtools (#1842)
  • Receiving emails with blank body (#1829)
  • Error during clean install - command not found (#1818)
  • Error Occurs in Tracker when Aborting XHR Calls (#1813)
  • Remove console.log Statements from Tracker (#1810)
  • Fix invitation password set (#1795)
  • Cannot reset password or accept invitation (#1794)

v1.14.0

11 Jul 21:27
Compare
Choose a tag to compare

🚀 Features

  • (Feature Flags) Enable or disable a feature, make gradual releases and A/B test all without redeploying your app

💪 Improvements

  • (Replayer) Improved the rendering performance with less re-renders from the control bar
  • (Tracker) Console and Network modules were rewritten to use Proxy objects instead of directly patching the window object (useProxy: true | false to network config)
  • (Tracker) Added a forceFlushBatch method to send over current events on demand (#1395)
  • (UI/UX) Moved session settings to preferences page
  • (Backend)(EE) Added a Redis based cache layer
  • (Connectors)(EE) Reviewed message processing pipeline in Redshift
  • (API)(EE) Support of multi-workers and better async handling
  • (API)(EE) Introduced the notion of a service account
  • Minor UI/UX improvements
  • Security enhancements

🐞 Bugs

  • Re-added the handler of custom events in db service after being mistakenly deleted
  • Added a check in tracker to ensure browser has the required API for multi-tabs (broadcast channel)
  • Fixed the closed pool error in db service
  • Fixed a crash in replayer caused by recordings having way too many tabs
  • Fixed a panic occurring in heuristics service
  • Fixed input durations recorded on programmable autofill in tracker
  • Fixed a bug in Redshift connector preventing userId from being exported
  • Cannot read properties of undefined (reading 'axiosResponseObj.config') (#1392)
  • OpenReplay session getting freeze on popup modals (#1335)

v1.15.0

13 Nov 13:24
Compare
Choose a tag to compare

🚀 Features

  • (iOS)(Beta) Support for — iOS and React Native — apps for replaying mobile sessions with full-fledged DevTools (crashlytics/network payloads/performance metrics) and heuristics (crash detection/click rage)
  • (Analytics) Introducing Path Analysis to help visualize how users navigate through your website
  • (Assist)(EE) Keep an eye on key metrics, audit team sessions and create reports
  • (Deployment) Support of Docker Compose

💪 Improvements

  • (Replayer) Show closed tabs as users browse your app in multi-tab sessions
  • (Replayer) Display the user's timezone in playback and sessions page
  • (Replayer) Added a contextual menu to the player for quickly launching DevTools
  • (DevTools) Capture of TransferBodySize in network activity
  • (UI/UX) Reviewed the navigation workflow and implemented a new menu
  • (UI/UX) Added modules to allow enabling or disabling specific sections in frontend
  • (UI/UX) Redesigned the integrations section in Preferences
  • (Tracker) Ability to catch browser rendering delays and reflect them in replays
  • (Tracker) Added a safe wrapper for Angular apps
  • (API) Simplified the OmniSearch logic to make it easy to add new analytics capabilities
  • (Backend) Implemented a reconnection mechanism to Postgres, ClickHouse, Redis and Kafka clients
  • (Backend) Refactored assist and reviewed the socket handling mechanism
  • (Backend) Improved session end logic and partition management in ender
  • (Connectors)(EE) Full rewriting of Redshift and ClickHouse connectors in Golang
  • (Assist)(EE) Added prometheus metrics for better monitoring
  • (Deployment) Improved the support of external proxies
  • Minor UI/UX improvements
  • Security enhancements

🐞 Bugs

  • Fixed an issue with missing "js_exception" in sessions table
  • Updated the "getSessionURL" function in tracker
  • Fixed iFrame observer timeout in tracker
  • Added a safe guard for HTML tag names in replayer
  • Disabled mouse movement on inactive tabs during replays
  • Fixed an issue with height resizer in clickmaps
  • Resolved the cursor position in cobrowsing sessions
  • Fixed a reconnection issue when initiating a cobrowsing session
  • Fixed multiple issues related to multi-tab feature with tab state duplication
  • Fixed a bug causing CPU surge in assist service
  • Fixed a bug affecting referrer not being inserted in db
  • Unable to Access /signup after OpenReplay installation (#1502)
  • Browser doesn't support required api, or doNotTrack is active (#1463)
  • Session Token header not allowed on all urls (#1449)
  • Ky http requests not getting session token header (#1446)
  • Chalice health check failing with self signed cert (#1421)
  • Unhandled Exception Error ReferenceError: fetch is not defined (#1420)
  • ReferenceError: XMLHttpRequest is not defined (#1414)
  • Add a "finalizeBatch" method that could send all current events over on demand (#1395)
  • Multi-Step funnel with metadata filter not applying metadata filter (#1599)

v1.16.0

12 Dec 17:28
Compare
Choose a tag to compare

🚀 Features

  • (Replayer) Support of <canvas> elements in session replay as well as in co-browsing
  • (Usability Testing)(Beta) Conduct usability tests efficiently and gain valuable insights into user behavior to improve UX

💪 Improvements

  • (Replayer) Made the DevTools panel resizeable
  • (Backend) Use of the Zstandard compression algorithm for storing recordings (via the COMPRESSION_ALGO: zstd env variable)
  • (Assist) Reworked the service from the ground up for improved performance
  • (Integrations) Refactored the code to make contributions easier
  • (Community) Add nodeSelector or affinity for the migrationJob config in helm chart (#1687)
  • Minor UI/UX improvements
  • Security enhancements

🐞 Bugs

  • Fixed an issue that prevented source maps from being processed
  • Fixed an issue with cards not being deleted
  • Fixed an issue in search resulting from a key conflict between metadata and events
  • Fixed an issue when searching using the not_contains operator
  • Fixed a bug in search with performance related events not taken into account
  • Fixed an issue that caused the Redux tab to crash in DevTools
  • Fixed an issue in the display of clickmaps
  • MS Teams integration subtitle contains placeholder text (#1724)
  • Empty message box on MS Teams error alert (#1719)
  • Unable to create new alert targeting MS Teams integration (#1677)
  • Sharing session to MS Teams displays empty box (#1681)
  • Cannot Reset Password (#1665)
  • Error Deleting User (#1664)
  • Opening a session causes 'Exception in ASGI application' (#1554)
  • Uncaught (in promise) TypeError: Failed to execute 'removeChild' (#1511)
  • Sourcemap-uploader logs all of the files in the console (#1694)

v1.12.0

06 May 01:53
Compare
Choose a tag to compare

🚀 Features

  • (Replayer) Detection of new frustrations like crashes and text selection
  • (Replayer) Show a trail with each mouse movement

💪 Improvements

  • (Replayer) Made jumps almost instant (up to 5x faster on heavy recordings) by rethinking the DOM node creation logic
  • (Replayer) Files are up to 3x smaller (brotli compression) for faster time-to-replay
  • (Replayer) Choose your preferred playback display time (relative vs absolute)
  • (Tracker) Support of compression on big messages to reduce bandwidth usage
  • (Analytics) Improved the way we capture selectors and display clickmaps
  • (Backend) Reduced the size of recordings (by 30% on average) by improving our messaging protocol
  • (Backend) Implemented a memory control manager for ender and heuristics services
  • (Backend) Deprecated input values insertion in databases
  • (Backend) Added support for mutual TLS to cache assets behind authentication walls (#1034)
  • (API) Ability to configure an expiration date for the deleted jobs
  • (API) Better handling of failed Postgres queries
  • (UI/UX) Redesigned the onboarding and getting started pages
  • (UI/UX) Enforced strong password usage
  • (UI/UX) Show the number of recorded sessions and events in the health status widget
  • (DevOps) Ability in CLI to fetch latest patches for the current release
  • (EE)(Assist) Support of compression in WebSockets to speed up connection times (2x faster)
  • (EE) Allow windows integrated authentication for SAML (#1072)
  • (EE) Support of project filtering in all data warehouse connectors
  • Minor UI/UX improvements
  • Security enhancements

🐞 Bugs

  • Fixed a deadlock issue in audit trail
  • Fixed an issue affecting the login time when using multiple projects
  • Fixed a broken replay issue due to dictionary not being initialized properly
  • Fixed the unmount logic after leaving the replay page
  • Fixed a regression affecting console logs in live sessions
  • Fixed a performance issue affecting tracker caused by crash detection
  • Improved the email sanitizer regexp performance in tracker
  • Fixed a bug affecting the configuration of the Elasticsearch integration
  • Fixed search and scrolling in assist’s multi-view slideout
  • Delete user job is not executed (#1150)
  • Custom filters in sessions URL get dropped via a redirect (#1171)
  • Time and issues are not displayed in red in custom events (#1029)

v1.13.0

16 Jun 13:11
Compare
Choose a tag to compare

Release Notes

🚀 Features

  • (Replayer) Support of tabbed browsing by grouping multi-tab sessions into a single recording (you can now see your users move across tabs as they browse your app)
  • (Replayer) Made geolocation a bit more accurate by determining the state and city associated with a session

💪 Improvements

  • (Replayer) Better splitting of recording files (based on duration) for faster time-to-replay
  • (OmniSearch) Ability to search for sessions by state and/or city
  • (Plugins) Improved MobX actions and state display
  • (Analytics)(EE) Reviewed the displayed text and number formats for insights
  • (API) Enhanced SMTP integration for issue detection
  • (EE) Native support of Azure Blob Storage
  • (EE) Support of custom port in SSO
  • Minor UI/UX improvements
  • Security enhancements

🐞 Bugs

  • Fixed an issue causing caching of projects to fail in backend services
  • Ignore lowercase HTTP methods when saving network requests to Clickhouse
  • Fixed a bug leading to XHR headers not being captured with network requests
  • Fixed broken replays due to random resets in string dictionary
  • Prevent the stop() method from causing auto restarts in tracker
  • Fixed a regression preventing strong password from being enforced when signing up
  • Frontend crashes when all projects have been removed
  • Fixed a crash in frontend when clicking on DevTools > Performance
  • Long URLs are shrunk to an invalid value (#1253)
  • Upgrade from 1.8.1 "failed to query with labels: unauthorized" (#1255)
  • VueX tracker does not capture all store states (#328)