5.0.0
This major bump brings a lot of internal improvements. Also, we extracted some integrations out of the SDKs and put them
in their own package called @sentry/integrations. For a detailed guide how to upgrade from 4.x to 5.x refer to our migration guide.
Migration from v4
If you were using the SDKs high level API, the way we describe it in the docs, you should be fine without any code
changes. This is a breaking release since we removed some methods from the public API and removed some classes from
the default export.
- breaking [node] fix: Events created from exception shouldn't have top-level message attribute
- [utils] ref: Update wrap method to hide internal sentry flags
- [utils] fix: Make internal Sentry flags non-enumerable in fill utils
- [utils] ref: Move
SentryError+PromiseBufferto utils - breaking [core] ref: Use
SyncPromiseinternally, this reduces memory pressure by a lot. - ref: Move internal
ExtendedErrorto a types package - breaking [browser] ref: Removed
BrowserBackendfrom default export. - breaking [node] ref: Removed
BrowserBackendfrom default export. - breaking [core] feat: Disable client once flushed using
closemethod - breaking [core] ref: Pass
EventtosendEventinstead of already stringified data - [utils] feat: Introduce
isSyntheticEventutil - breaking [utils] ref: remove
isArrayutil in favor ofArray.isArray - breaking [utils] ref: Remove
isNaNutil in favor ofNumber.isNaN - breaking [utils] ref: Remove
isFunctionutil in favor oftypeof === 'function' - breaking [utils] ref: Remove
isUndefinedutil in favor of=== void 0 - breaking [utils] ref: Remove
assignutil in favor ofObject.assign - breaking [utils] ref: Remove
includesutil in favor of nativeincludes - breaking [utils] ref: Rename
serializeKeysToEventMessagetokeysToEventMessage - breaking [utils] ref: Rename
limitObjectDepthToSizetonormalizeToSizeand rewrite its internals - breaking [utils] ref: Rename
safeNormalizetonormalizeand rewrite its internals - breaking [utils] ref: Remove
serialize,deserialize,cloneandserializeObjectfunctions - breaking [utils] ref: Rewrite normalization functions by removing most of them and leaving just
normalizeand
normalizeToSize - breaking [core] ref: Extract all pluggable integrations into a separate
@sentry/integrationspackage - breaking [core] ref: Move
extraErrorDataintegration to@sentry/integrationspackage - [core] feat: Add
maxValueLengthoption to adjust max string length for values, default is 250. - [hub] feat: Introduce
setExtras,setTags,clearBreadcrumbs. - breaking [all] feat: Move
MechanismtoException - [browser/node] feat: Add
synthetictoMechanismin exception. - [browser/node] fix: Use
addExceptionTypeValuein helpers - [browser] ref: Remove unused TraceKit code
- breaking [all] build: Expose
moduleinpackage.jsonas entry point for esm builds. - breaking [all] build: Use
es6target instead of esnext for ESM builds - [all] feat: Prefix all private methods with
_ - [all] build: Use terser instead of uglify
- [opentracing] feat: Introduce
@sentry/opentracingproviding functions to attach opentracing data to Sentry Events - breaking [core] ref:
DedupeIntegration is now optional, it is no longer enabled by default. - breaking [core] ref: Removed default client fingerprinting for messages
- [node] ref: Remove stack-trace dependencies
- breaking [core] ref: Transport function
captureEventwas renamed tosendEvent - [node] fix: Check if buffer isReady before sending/creating Promise for request.
- [browser] fix: Remove beacon transport.
- [browser] fix: Don't mangle names starting with two
__ - [utils] fix: Ensure only one logger instance
- [node] feat: Add esm build
- [integrations] feat: Fix build and prepare upload to cdn
- [integrations] fix: Bug in vue integration with
attachProps - breaking [core] ref: Remove SDK information integration
- breaking [core] ref: Remove
installfunction on integration interface - [node] feat: Add esm build
- [integrations] feat: Fix build and prepare upload to cdn
- [integrations] fix: Bug in vue integration with
attachProps