Releases: unravelin/ravelinjs
v2.0.0
New Features
This release adds support for detecting whether a user is a bot. This data is automatically captured for clients using the track module.
Major Updates
This update removes support for Internet Explorer, which itself was retired in 2022. As such, the ability to inject a custom promise has been removed as it is no longer needed. Please see our upgrading documentation for information on moving to version 2.
The codebase has been fully migrated to TypeScript to increase reliability, maintainability, and provide better IDE support for developers.
Bug Fixes
Instantiating RavelinJS with cookieExpiryDays set to zero i.e.
const rav = new Ravelin({ key: 'publishable_key_...', cookieExpiryDays: 0 }); will now properly treat the named cookie as read-only and will not default its expiry to 365 days.
v1.10.0
New Features
This release adds a new cookieSameSite config option to allow customising the cookies' SameSite attribute. This can be used to control how cookies are sent in cross-site requests.
If not provided, the default behaviour will continue to use SameSite=None;Secure for HTTPS connections. This is to support clients who process card payments in iframes or WebViews.
Example usage:
new Ravelin({
key: '...',
cookieSameSite: 'Strict;Secure'
});v1.9.0
New Features
- This release adds support for tracking if the browser is in incognito or private mode. This data is automatically captured for clients using the track module, and no integration changes are required.
v1.8.1
Bug Fixes
- There was an issue with the npm package for v1.8.0. This has been fixed.
v1.8.0
New Features
- RavelinJS now includes the browser's timezone offset in the metadata of track events sent to Ravelin. No integration changes are required by developers using the library.
v1.7.1
New Features
- RavelinJS is only designed to be run in a browser, so it will error if you attempt to initialise it in an environment like node or deno where
windowis not defined. However, we now support importing the library without erroring during SSR, for example. #332
Dev Work
- We've upgraded node to the latest LTS v18, and many of the other test packages to their latest versions. This won't have changed the final product, though.
v1.7.0
v1.6.0
New Features
- Options to disable all tracking or just page-load tracking in +track bundles. We don't expect these new options to be useful to anybody except us at Ravelin, as we're in the process of writing a shim to replace some old JavaScript scripts with something using RavelinJS v1 under the hood.
Removed
- We've removed the sourcemap files and the annotations from the bottom of built files.
v1.5.0
New Features
- You can now install v1 in un-minified, with-comments UMD/CommonJS format from npm. If you're using a JavaScript build system already this might make keeping up-to-date simpler for you. (#132 #138)
- For track bundle users, you can now provide a
pageinitialisation option which is used to annotate the initial page-load event with extra descriptions. For single-page apps where you might callr.track.load()you can pass these in asr.track.load(page). (#144)
v1.3.0 - Kali
New Features
- The session ID cookie has been moved from the track bundle into core, so you will find this new cookie if you are not using track. This will help extend the usual lifetime of the
Bug Fixes
- XMLHttpRequests which resolve with status zero are retried (#102)
- Rejected Promises are never a plain object any more, as Sentry error reporting didn't like it (#102)
- Firefox "can't access dead object" errors may have been fixed (#105)
Thanks
Kali became a member of the Ravelin family on June 21st 2019. After the stress of her previous home left her unwell several times per year, Kali was taken to an adoption centre when the owner's child became allergic. Fortunately, this lead her into the care and support of Jo. A path I'm sure many Ravelinos can relate to. Those of us lucky enough to have cat-sit for Kali will remember her fondness for chasing things under a blanket and nose-boops when she's happy.

