github getsentry/sentry-java 6.0.0

latest releases: 7.15.0-alpha.1, 7.14.0, 7.13.0...
2 years ago

Sentry Self-hosted Compatibility

  • Starting with version 6.0.0 of the sentry package, Sentry's self hosted version >= v21.9.0 is required or you have to manually disable sending client reports via the sendClientReports option. This only applies to self-hosted Sentry. If you are using sentry.io, no action is needed.

Features

  • Allow optimization and obfuscation of the SDK by reducing proguard rules (#2031)
  • Relax TransactionNameProvider (#1861)
  • Use float instead of Date for protocol types for higher precision (#1737)
  • Allow setting SDK info (name & version) in manifest (#2016)
  • Allow setting native Android SDK name during build (#2035)
  • Include application permissions in Android events (#2018)
  • Automatically create transactions for UI events (#1975)
  • Hints are now used via a Hint object and passed into beforeSend and EventProcessor as @NotNull Hint object (#2045)
  • Attachments can be manipulated via hint (#2046)
  • Add sentry-servlet-jakarta module (#1987)
  • Add client reports (#1982)
  • Screenshot is taken when there is an error (#1967)
  • Add Android profiling traces (#1897) (#1959) and its tests (#1949)
  • Enable enableScopeSync by default for Android (#1928)
  • Feat: Vendor JSON (#1554)
    • Introduce JsonSerializable and JsonDeserializer interfaces for manual json
      serialization/deserialization.
    • Introduce JsonUnknwon interface to preserve unknown properties when deserializing/serializing
      SDK classes.
    • When passing custom objects, for example in Contexts, these are supported for serialization:
      • JsonSerializable
      • Map, Collection, Array, String and all primitive types.
      • Objects with the help of refection.
        • Map, Collection, Array, String and all primitive types.
        • Call toString() on objects that have a cyclic reference to a ancestor object.
        • Call toString() where object graphs exceed max depth.
    • Remove gson dependency.
    • Remove IUnknownPropertiesConsumer

Fixes

  • Calling Sentry.init and specifying contextTags now has an effect on the Logback SentryAppender (#2052)
  • Calling Sentry.init and specifying contextTags now has an effect on the Log4j SentryAppender (#2054)
  • Calling Sentry.init and specifying contextTags now has an effect on the jul SentryAppender (#2057)
  • Update Spring Boot dependency to 2.6.8 and fix the CVE-2022-22970 (#2068)
  • Sentry can now self heal after a Thread had its currentHub set to a NoOpHub (#2076)
  • No longer close OutputStream that is passed into JsonSerializer (#2029)
  • Fix setting context tags on events captured by Spring (#2060)
  • Isolate cached events with hashed DSN subfolder (#2038)
  • SentryThread.current flag will not be overridden by DefaultAndroidEventProcessor if already set (#2050)
  • Fix serialization of Long inside of Request.data (#2051)
  • Update sentry-native to 0.4.17 (#2033)
  • Update Gradle to 7.4.2 and AGP to 7.2 (#2042)
  • Change order of event filtering mechanisms (#2001)
  • Only send session update for dropped events if state changed (#2002)
  • Android profiling initializes on first profile start (#2009)
  • Profiling rate decreased from 300hz to 100hz (#1997)
  • Allow disabling sending of client reports via Android Manifest and external options (#2007)
  • Ref: Upgrade Spring Boot dependency to 2.5.13 (#2011)
  • Ref: Make options.printUncaughtStackTrace primitive type (#1995)
  • Ref: Remove not needed interface abstractions on Android (#1953)
  • Ref: Make hints Map<String, Object> instead of only Object (#1929)
  • Ref: Simplify DateUtils with ISO8601Utils (#1837)
  • Ref: Remove deprecated and scheduled fields (#1875)
  • Ref: Add shutdownTimeoutMillis in favor of shutdownTimeout (#1873)
  • Ref: Remove Attachment ContentType since the Server infers it (#1874)
  • Ref: Bind external properties to a dedicated class. (#1750)
  • Ref: Debug log serializable objects (#1795)
  • Ref: catch Throwable instead of Exception to suppress internal SDK errors (#1812)
  • SentryOptions can merge properties from ExternalOptions instead of another instance of SentryOptions
  • Following boolean properties from SentryOptions that allowed null values are now not nullable - debug, enableUncaughtExceptionHandler, enableDeduplication
  • SentryOptions cannot be created anymore using PropertiesProvider with SentryOptions#from method. Use ExternalOptions#from instead and merge created object with SentryOptions#merge
  • Bump: Kotlin to 1.5 and compatibility to 1.4 for sentry-android-timber (#1815)

Don't miss a new sentry-java release

NewReleases is sending notifications on new releases.