2.30.4 (2024-11-05)
2.30.3 (2024-11-05)
2.30.2 (2024-10-28)
2.30.1 (2024-10-15)
2.30.0 (2024-10-11)
2.29.0 (2024-10-08)
2.28.3 (2024-09-16)
2.28.2 (2024-09-11)
2.28.1 (2024-09-04)
2.28.0 (2024-08-26)
2.27.0 (2024-08-13)
2.26.10 (2024-06-18)
2.26.9 (2024-06-11)
2.26.8 (2024-06-04)
2.26.7 (2024-05-29)
2.26.6 (2024-05-28)
2.26.5 (2024-05-22)
2.26.4 (2024-05-13)
2.26.3 (2024-04-29)
2.26.2 (2024-04-23)
2.26.1 (2024-04-22)
2.26.0 (2024-04-15)
- Implement audience API feature flag (#865) (faa4520)
- Migrate First and Last Seen Time Setters and Getters to Store (#856) (86a9535)
- Update audience logic to new backend response (#844) (8a63045)
- Update url to nativesdks and update server response (#863) (9e46cef)
2.25.3 (2024-04-08)
2.25.2 (2024-04-01)
- Combine End Session Logging Messaging flow (#848) (a2c902d)
- Create a simple merge object utility (#849) (61e82da)
2.25.1 (2024-02-06)
2.25.0 (2024-01-29)
2.24.0 (2024-01-09)
2.23.9 (2024-01-08)
2.23.8 (2024-01-02)
- Add filtered user identities to identity complete methods (#816) (715e217)
- Replace identify method strings with constants (#817) (1bca974)
2.23.7 (2023-10-23)
- Prevent immediate upload for UserAttributeChange Events (#793) (2f0c5ac)
- Respect sideloaded kit filter dictionaries (#792) (91b6afa)
2.23.6 (2023-10-17)
2.23.5 (2023-10-09)
2.23.4 (2023-09-25)
2.23.3 (2023-09-19)
2.23.2 (2023-07-17)
2.23.1 (2023-07-10)
2.23.0 (2023-06-26)
2.22.1 (2023-06-12)
- Add Sideloaded Kit flag to Batches (#613) (13a113b)
- Revise priority of device id when initializing state (#618) (b71f746)
2.22.0 (2023-06-05)
- Add MPSideloadedKit class (#564) (252a2ce)
- Expose MPSideloadedKit class to public API (#568) (47a9186)
2.21.2 (2023-05-15)
2.21.1 (2023-05-02)
2.21.0 (2023-04-18)
2.20.3 (2023-04-10)
2.20.2 (2023-04-05)
2.20.1 (2023-04-05)
2.20.0 (2023-03-15)
2.19.3 (2023-03-08)
- removeUserAttribute and forwarder filters fix (#391) (838f267)
- Verify Batches and events are uploaded in order of creation (#394) (8553331)
2.19.2 (2023-03-03)
- Revert "refactor: Modify BatchUploader to use promises for individual uploads (#385)" (#398) (bc9de3a)
2.19.1 (2023-02-16)
2.19.0 (2023-02-08)
2.18.3 (2023-02-01)
2.18.2 (2023-01-25)
2.18.1 (2023-01-04)
- Fix Firefox Runner and Remove references to node 12 (#369) (083672f)
- Prevent Batches from queuing empty events (#367) (4bf8ef9)
2.18.0 (2022-11-08)
2.17.4 (2022-10-11)
2.17.3 (2022-10-03)
2.17.2 (2022-09-14)
2.17.1 (2022-08-25)
2.17.0 (2022-08-23)
2.16.3 (2022-07-28)
2.16.2 (2022-06-29)
2.16.1 (2022-06-16)
2.16.0 (2022-05-18)
- add package to batch application info (#238) (5e6e773)
- add support for client side rules (#241) (dc40f14)
2.15.5 (2022-05-11)
2.15.4 (2022-05-02)
- add UAC and UIC as upload triggers (7576509)
2.15.3 (2022-04-28)
- revert slugify removal (15c6af5)
2.15.2 (2022-04-27)
2.15.1 (2022-04-20)
- add validation to prevent null event category from sending (#358) (cc93497)
- decode cookie error on special character attributes (#365) (9237a44)
- ensure sessions/AST initialize before identity callback (#360) (2663a57)
2.15.0 (2022-03-01)
- prevent erroneous event logging to kits when an event is not sent (dfc0f4f)
2.14.2 (2022-02-09)
- Refactor Public methods to queue if Store is not initialized (#311) (27d506c)
- Update cookie sync date only upon successful cookie sync (48d6fe1)
- update reusable workflow urls (#265) (1c334d3)
2.14.1 (2021-09-02)
- Add launch_referrer to event data (cd7dc62)
- Allow multiple promotions to be logged when calling logPromotion (9e0dd5b)
2.14.0 (2021-08-04)
- Allow scope param on user alias requests (a864aef)
2.13.0 (2021-07-29)
2.12.9 (2021-06-23)
- Update esm/common rollup.config to prevent regenerator runtime issue (2ff362f)
--
- Any new workspaces with JS API Keys will now batch all web events in order to save bandwidth and improve site performance. To read more about web batching see here - https://docs.mparticle.com/developers/sdk/web/getting-started#upload-interval--batching. This does not require any updates to the SDK itself. No implementation changes are required. If you have a workspace created prior to 2020-05-06 and are not yet on batching, please contact your Customer Success Manager.
- Bugfix: Rename pageViewFilters to screenAttributeFilters Enables screen attributes to be filtered out on downstream forwarders
- Bugfix - Add product impressions to kit blocking
- Feat - Consent-based cookie-sync
- Bugfix - Add source message id
- Bugfix - Use addEventListeners for life cycle events
- Bugfix - Set setCurrencyCode on eCommerce object
- Refactor - Import version from package.json
- Format code styling
- Bugfix - update is first run to booleans
- Bugfix - Sanitize ecommerce amounts to numbers
- Bugfix - Set sessionStartDate to 0 instead of null
- Bugfix - Error events - Set to null if stack trace is undefined; Add context to error events
- Bugfix - Fix data plan options API
- Bugfix - Add try/catch to cookie searching
- Fix Typo in logging
- Update identity mappings
- Bugfix - Add check for window for node environments
- Feat - Implement client side kit blocking You can now use Data Master to block unplanned events and attributes from being sent to client side forwarders.
- Remove eventsApiModels.ts in favor of js-events npm module
- Feat - Add event and product context to sanitized attributes
- Add logic to handle Media Events as Custom Events
- Add additional tests for app name change in config
- Feat - Add transactionAttributes to logProductAction method signature
- Bugfix - Make tagging batches with appropriate UI more robust
- Bugfix - prevent null CCPA consent on events v3 endpoint
- Bugfix - logProductActions of purchase/refund conform to logPurchase/logRefund
- Feat - Add Other5-Other10, mobile/phone number identity types
- Bugfix - Fix v3 events endpoint location payload
- Bugfix - Send specific user along with UIC and UAC Events
- Dependabot - Bump Acorn version
- Don't set empty TransactionAttribute fields
- Deprecate removeCCPAState in favor of removeCCPAConsentState
- Feat - XHR Support for Batching
- Migrate network tests from local Mockhttprequest to Sinon
- Bugfix - Flush eventQueue after identity callback
- Update node version for Travis
- Api docs update
- Bugfix - Enable configuration of v1 endpoints
- Feat - Modify reset API for public consumption
- Feat - Import @mparticle/event-models to replace eventApiModels
- Bugfix - Typo & keep persistence checking consistent
- Update package.json (Add mparticle.js to dist/ for partner kit testing)
- Feat - Add support for custom v3 URL
- Bugfix - resolve when browser has disabled localStorage
- Bugfix - Do not log deprecated warnings when logging purchases
- Feat - Add support for Data Planning to V2 Events upload
- Feat - Add CCPA support
- Add batch creator class for ESLint data planning plugin
- Feat - Pass appName to config
- Bugfix - Do not populate data plan context when plan id is null
- Feat - Implement Multiple Instances
- Bugfix - Parse string in shouldEnableBatching
- Deprecate Cart - The mParticle functionality will be removed in a future release, please
- Bugfix - Self hosting namespaces storage with workspaceToken again
- Remove mparticle.js from root
- Feat - Stub logBaseEvent in snippet, add snippet comments
- Feat - Implement User Identity Change & User Attribute Change Events
- Allow MediaEvents and Media PageEvents to be supported
- Happy Halloween! 🎃
- Refactor codebase with Prettier
- Bugfix - Resolve Sonarqube code smells
- Modify Rollup builds
- Support event batching and beacon API; provide new Events API v3 endpoint which supports batching
- Implement Typescript and Babel compilation
- Feat - Enable configuration of config endpoint
- Feat - Add Base Event functionality to core for future child SDK use
- Update .eslintrc, fix urls in yuidoc comments
- Add integration tests for bundlers (webpack, browserify, rollup)
- Bugfix - Make getCartProducts more robust
- Bugfix - Fix immediate logging for self hosting
- Feat - add session start to server DTO
- Bugfix - update modify old_value
- Bugfix - Check all event attributes when forwarding rules are set
- Migrate to ES6 Modules; Replace Browserify with Rollup
- Bugfix - noHttpCoverage code properly sent to callback
- Bugfix - Configure forwarders prior to identify callback
- Bugfix - Alias requests respect isDevelopmentMode setting
- Bugfix - set isInitialized in both web and webview contexts
- Feature: log error custom attributes
- Update build parameters
- Modify files for self hosting
- Add a /config endpoint
- Accept 2nd argument to init for configuration
- Bugfix - Initialize Logger before Store
- Bugfix - retain mParticle.isIOS on script load
- Bugfix - respect mParticle.isIOS setting
- Make endpoints configurable
- Implement User Aliasing
- Bugfixes - Helpers.debug & set isFirstRun to false after app inits for the first time
- Implement firstSeen and lastSeen fields for MParticleUser
- Sort MParticleUser Array returned by getUsers() by lastSeenTime
- Bugfix - Callback validation & correct warning message
- Add getPreviousUser() to Identity callbacks
- Refactor config into a class
- Implement Logger
- Fix consent object validation and remove unneeded null check
- Prefer modules over public mParticle methods
- Simplify / remove migrations
- Bugfix - Native SDK - prioritize equality of requiredWebviewBridgeName
- Update native bridge logic
- Namespace localstorage with workspace token
- Add callback to location tracking method
- Set session attributes when using native bridge
- Bugfix - Check for LocalStorage before migrating
- Bugfix - Guard against undefined result from crypto API
- Bugfix - Call identify if cookies exist, but there is no current user
- Add identityMethod to onUserIdentified function definition
- Bugfix - return 0 instead of null for hashing boolean false
- Fix autogen yuidocs comments
- Add get/setIntegrationAttribute APIs
- Add snippet tests
- Add boolean validation for isDevelopmentMode
- Initialize forwarders based on logged in status
- Bugfix - remove cart item uses proper product persistence
- Bugfix - Guard against corrupt local storage/cookies
- Bugfix - guard against null cookie
- Add getUser method to identity callback results
- Only call initial identify and callback once
- Bugfix - logLevel
- Bugfix - Remove corrupt localStorage
- Bugfix - Fix encoding LS for special characters
- Bugfix - Always init forwarder when no UA filters are present
- Re-initialize forwarders after userAttr changes
- Capitalize all letters in sessionId
- Bugfix - Create copy of MP.eventQueue to iterate through
- Add setUserAttributes to public API
- Implement forwarderUploader module, feaure flags, batch forwarder stats
- Bugfix - Change ProductActionTypes to be consistent with mobile/S2S
- Implement customFlags per public API method
- Update growl and hoek for testing dependencies
- Bugfix - sendEventToForwarder fix
- Default forceHttps to true
- Add apiClient module
- Implement Consent forwarding rules
- Bugfix - Fix filterUserAttributeValues break/continue
- Expose getUser and getUsers to public Identity API
- Bugfix - send newUser to forwarder on user identified
- Add filtered user object
- Bugfix - encode event value before sending to iOS
- Update package-lock.json to pass CI tests
- Implement Consent State
- Expose Identitiy HTTP constants to the public
- Bugfix - filter user attributes to forwarders on init
- Bugfix - filter user attributes to forwarders on init
- Bugfix - Compare strings when filtering event/user attribute values
- Bugfix - Prioritize client entered config over persistence
- Bugfix - Correct capitalization of clearing eCommerce carts
- Add Identify to public API
- Add forceHttps as a config option
- Fix linting
- Migrate all mpids between cookies and LS when useCookieStorage changes
- Bugfix - add shouldUseNativeSdk logic to fix null user and null path values
- Add config option for maxCookieSize
- Refactor useNativeSdk and prevent identify calls when in webview
- Update logic for useNativeSdk and isIOS
- Pass identityApiData to native SDKs
- Queue events when mpid is null or 0
- Stub primary methods for pre-loading SDK invocation
- Add eventSubscriptionId to forwarder contract
- Update readme to remove adchemix
- Remove product bags
- Update version endpoint for /Forwarding
- Ensure customerid is always the first identity being set
- Auto generate API docs
- Add migration for base64 encoded products
- Finalize Other IDs
- Bugfix - Adjust logic for session end event
- Remove logLTVIncrease
- Return an empty array when there are no cart products
- Bugfix - Adjust arguments for applyToForwarders
- Add setForwarderOnUserIdentified, return null currentUser when MPID is null
- Modularize tests for readability and robustness
- Adjust Application State Transition, include initial location
- Bugfix - Add CheckoutOption to ProductAction-related switch statements
- Add parseStringOrNumber function
- Sanitize additional attributes
- Correct order of internal createProducts arguments
- Refactor logPageView
- Require explicit UIWebview binding
- Migrate persistence to v4
- Add onUserAlias callback
- Add support for filtering user attribute values
- Update persistence after a modify call
- Complete modularization of SDK
- Modularize Types, Constants, Helpers, DTO, Identity, Ecommerce
- Reorganize tests
- Bugfix - Execute useLocalStorage method
- Fixes for cookie syncing. Properly cookie sync when MPID changes, and only perform a cookie sync when debug modes for defined pixel and mParticle match
- Store productBags and cartProducts to cookies, with config option to change number of products allowed in each (config.maxProducts = 20 by default)
- Prevent setUserIdentity from accepting booleans
- Clean up code - Add additional validations, convert remaining == to ===
- Support for cookie-syncing. Cookie-syncing enables the optional collection of 3rd-party IDs to enable enhanced audience sharing with advertising platforms such as DoubleClick, Adobe, and AppNexus
- Add application state transition to mParticle initialization
- Fix for removing duplicate user identities where ID is missing, allow ID to be
undefined
- Fix for creating CGID on initial load
- Send sessionLength to server when sessionEnd is called.
- Add deviceId, and deviceId retrieval via
mParticle.getDeviceId()
.
- Add new session management.
- Fixed a bug where the same sessionId may be associated with events over several days.
- Added config option for useCookieStorage to allow use of either cookies or localStorage. By default, localStorage is used (useCookieStorage = false). If localStorage not available, reverts to cookie use.
- Fixed a bug where
forwarders
contained a mix of both initialized and uninitialized forwarders.forwarders
now only contains initialized forwarders.
- Fixed bug where calling setUserIdentity with a similar type added another identity, rather than replacing the identity.
- Calling setUserIdentity with
id = null
and valid type will remove the user identity of that type. - Include CommerceEvent custom attributions in expansion; makes a copy of the original commerce event rather than referencing it, which would mutate it.