Skip to content

Releases: unravelin/ravelinjs

v2.0.0

04 Mar 11:44

Choose a tag to compare

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

03 Apr 12:50

Choose a tag to compare

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

11 Mar 11:25

Choose a tag to compare

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

21 Jun 15:52

Choose a tag to compare

Bug Fixes

  • There was an issue with the npm package for v1.8.0. This has been fixed.

v1.8.0

06 Jun 15:51

Choose a tag to compare

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.

⚠️ There is an issue with the npm package for this release. This was fixed with v1.8.1.

v1.7.1

01 Jun 12:33

Choose a tag to compare

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 window is 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

11 May 10:43

Choose a tag to compare

New Features

  • A new prefix configuration option has been added for overriding the default "rjs-" deviceId prefix. We plan to use this for backwards-compatibility in some environments where the deviceId is expected to be a UUID.

v1.6.0

05 May 09:30

Choose a tag to compare

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

24 Sep 09:11

Choose a tag to compare

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 page initialisation option which is used to annotate the initial page-load event with extra descriptions. For single-page apps where you might call r.track.load() you can pass these in as r.track.load(page). (#144)

v1.3.0 - Kali

09 Jul 10:49
dba6697

Choose a tag to compare

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.