This release adds new options for user fingerprinting and makes some minor changes to the Tracker API. In addition, we have moved to a module-based project structure and added automated testing.
This post will cover the following topics:
- New feature: user fingerprint options
- Changes to the Snowplow API
- Move to modules
- Automated testing
- Removed deprecated functionality
- Other structural improvements
- Getting help
This version adds two new functions to control user fingerprinting:
User fingerprinting is turned on by default, but can be turned off like this:
If you want to choose the seed used to generate the user fingerprint, use
setUserFingerprintSeed like this:
If you do not set a custom hash seed, the default seed will be used instead.
The move to modules has allowed us to tighten our public API, making our helper functions private.
In addition, the global
SnowPlow object has been renamed to
Snowplow. This will only affect users who have implemented the synchronous tracker.
We have organised our code into modules using Browserify. Browserify recursively analyzes the dependencies of the Tracker and combines all the required modules into a single bundle. This allowed us to replace much of our code with external npm modules and a minimal lodash library.
Five deprecated functions have been removed:
attachUserIdis removed because there is no longer any need to enable or disable specific user IDs
setSiteIdshould be replaced with
getVisitorIdshould be replaced with
getVisitorInfoshould be replaced with
trackEventshould be replaced with
getStructEvent, the new name for this
trackImpression has been deprecated in preparation for the addition of an all-new
trackAdImpression in a coming version.
We have also:
- Added meta-data to our package.json including a description and keywords #83
- Moved the banner into our Gruntfile and dynamically templated in information from our package.json #82
- Removed the legacy Piwik plugin framework #56
- Named our Grunt tasks #86
- Added a “Built with Grunt” badge to the README #102
- Relocated some helper functions for consistency #91
UPDATED After an important post-release bug fix, the updated minified tracker is available here:
If you use the path:
then you will automatically get new semantic-minor versions and patches as they are released.
Check out the v1.0.0 release page on GitHub for the full list of changes made in this version.