Skip to content

Latest commit

 

History

History
733 lines (456 loc) · 24.2 KB

CHANGELOG.md

File metadata and controls

733 lines (456 loc) · 24.2 KB

7.6.0 (2023-09-27)

Enhancements

  • Allow DexGuard version to be specified manually (as bugsnag.dexguardMajorVersion) for DexGuard < 9 #531

7.5.0 (2023-04-20)

Enhancements

  • Determine the NDK version being used based on the package.xml files within the NDK directories, with a fallback to the directory-name. #514

7.4.1 (2023-02-22)

Bug Fixes

  • Fix task ordering when using DexGuard and a bundle*** task #496
  • Improve support for Gradle Configuration Caching #491 #499

7.4.0 (2022-11-10)

Enhancements

  • Support using objcopy instead of objdump to extract native symbols (when supported by the current NDK). #484

Bug Fixes

  • Fix FileAlreadyExistsException errors when building ReactNative projects with Hermes #482

7.3.1 (2022-10-05)

  • Fixed a bug where using ndkBuild generated empty some mapping files which could not be uploaded #478
  • Support ReactNative projects using Hermes #477

7.3.0 (2022-07-27)

  • Emit an error if the ReactNative bundle task cannot be found instead of silently failing #470
  • Do not fail builds for Expo apps, which do not depend on @bugsnag/react-native #471
  • Basic support for Gradle Config Caching by collecting VariantOutput info earlier in the configuration #469

7.2.1 (2022-05-24)

  • Support for AGP 7.2 #464

7.2.0 (2022-01-13)

  • Prevent exception when old Moshi version on buildScript classpath #439

  • Address task dependency warning when using APK splits #412

  • Fix "Task with name *** not found" errors when using custom build variants and DexGuard #452

7.1.0 (2021-09-20)

  • Custom Dexguard paths are resolved correctly (relative to the project) #421

  • Support extracting SO files from bugsnag AARs for library modules #423

  • Support DexGuard with AGP 7 #426

7.0.0 (2021-08-12)

  • Address task dependency warning when using APK splits #407

  • Added clear error messages when node_modules cannot be located in ReactNative projects #410

  • Upgrade AGP dependency to 7.0.0 #415

7.0.0-beta01 (2021-06-23)

Support for Android Gradle Plugin 7.0.0-beta04 added. This version introduces no new features and should only be used along-side Android Gradle Plugin 7.0.0-beta04 and higher. For more information see the upgrading guide.

5.7.6 (2021-04-08)

  • Replace Groovy XML library used for parsing AndroidManifest.xml #379

5.7.5 (2021-03-30)

  • Improve DexGuard support #377

  • Respect versionCodeOverride when using AGP 4.1+ and APK splits #375

5.7.4 (2021-03-04)

  • Fix nodeModulesDir option not being applied #366

5.7.3 (2021-02-02)

  • Support uploading JS sourcemaps generated with Hermes #362

5.7.2 (2021-01-27)

  • Add support for DexGuard 9 #359

5.7.1 (2021-01-18)

  • Add warning in BAGP for React Native when running via react-native CLI #357

5.7.0 (2021-01-13)

  • Support AGP 4.2 #350

  • Prevent Windows crash when generating Unity mapping files #344

  • Support uploading JS sourcemaps for React Native projects #346

5.6.0 (2020-12-03)

Bump version to prevent v5.5.0-alpha01 being picked up by users with wildcard dependency versions.

5.4.0 (2020-11-04)

This release improves performance by always compressing ProGuard/R8 mapping files before attempting upload. Depending on the contents of the mapping file, this can reduce the upload size by ~80%.

  • Create separate task for generating JVM mapping file #335

  • Compress JVM mapping files using gzip #336

5.3.0 (2020-10-15)

  • Ensure libil2cpp has correct file extension #320

  • Remove previous files from intermediate build directory #318

  • Automatically search for NDK shared object files in unity projects #316

  • Create additional E2E scenarios for Unity SO file upload #314

  • Generate shared object mapping files for libunity and libil2cpp #312 #315

  • Register unity shared object generation and upload tasks #311

  • Support Unity shared object files in upload task #307

  • Generate shared object mapping files in separate class #304

  • Separate generation/upload of shared objects into two tasks #303

  • Add uploadNdkUnityLibraryMappings flag to bugsnag extension #306

  • JNI install task should always takes place if NDK build enabled #323

5.2.0 (2020-09-22)

  • Support mapping upload from Android Gradle Plugin through a proxy #298

5.1.0 (2020-09-17)

  • Remove uploadDebugBuildMappings flag in favour of variantFilter #301

  • Fix task ordering for upload task on AGP 3.5 #300

  • Fix bugsnag.sharedObjectPaths not uploading SO files #295

5.0.2 (2020-09-10)

  • Reword log messages that implied duplicate uploads #296

  • Only set mappingFilesProvider on release task if obfuscation enabled #292

  • Fix task dependencies and order for BugsnagManifestUuidTask in AGP <4.1.0 #294

5.0.1 (2020-08-26)

  • Retry request by constructing new OkHttp request #278

  • Apply requestTimeoutMs as an idle timeout #282

  • Fix Bintray/jcenter publishing #283

5.0.0 (2020-08-20)

This release contains breaking changes. It contains numerous performance improvements compared to previous versions of the plugin, such as:

See the Upgrade Guide for migration instructions.

Changes

Support configuration caching #257

Change how bugsnag plugin is disabled for build variants #255

Convert plugin extension to use property syntax #251

Deduplicate unnecessary upload requests for APK splits #248

Switch to OkHttp for networking #247 #268 #269

Specify shared object files as input for ndk task #243

Make upload tasks support up-to-date checks #239

Avoid unnecessary SO mapping file uploads for ABI splits #238

Alter bugsnag extension to allow multiple shared object paths #237

Support for manifest processing in AGP 4.1.0-alpha04 and above #234 #236 #240

Alter bugsnag tasks to support the Incremental Build API #230

Rename properties on bugsnag extension that control request autoUpload #231

Bump supported JDK version to 8 #224

Use register() rather than create() for adding tasks #221 #227

Avoid eager task initialization #261

Remove unused BugsnagProguardConfigTask #209

Make AGP dependency compile only #211

Remove apiKey property from bugsnag plugin extension #210

4.7.5 (2020-05-18)

Add compatibility with AGP 4.0 by using the mappingFileProvider API when possible #202

4.7.4 (2020-03-11)

Prevent existing buildUuid being overridden by gradle plugin #192

4.7.3 (2020-01-14)

Use getOrNull() rather than Provider#get() #188

4.7.2 (2019-11-06)

Allow overriding the 'appVersion' field from the AndroidManifest #181

4.7.1 (2019-10-24)

Fix AGP 3.6.0 breaking project builds due to changed return type of getBundleManifestOutputDirectory() #179

Avoid uploading zero-length proguard mapping files #180

4.7.0 (2019-10-14)

Add ability to override reported value for versionCode #175

4.6.0 (2019-09-24)

Add configurable timeout for all http requests #173

4.5.2 (2019-07-18)

Update plugin to extract SO files from transitive dependencies #171

4.5.1 (2019-07-17)

Lookup shared object files correctly in new artefact IDs #170

4.5.0 (2019-07-15)

Search for shared object files in the new artefact locations introduced by modularisation of bugsnag-android. This affects versions v4.17.0 and above of bugsnag-android and bugsnag-android-ndk. #168

4.4.1 (2019-06-19)

Skip uploading mapping files for shared objects which have no debug info #166

4.4.0 (2019-06-10)

This release is companion update for bugsnag-android v4.15.0, which supports detecting and reporting C/C++ crashes without a separate library.

Since bugsnag-android now contains native code, update shared object extraction to include libraries from there as well as bugsnag-android-ndk #164

4.3.1 (2019-05-31)

  • Calculate correct location for objdump on windows, fixing NDK symbol upload #163

4.3.0 (2019-05-30)

  • Resolve pre-existing CodeNarc style violations #160

4.2.0 (2019-04-16)

  • Alter NDK project detection to check for the cmake/ndkbuild path #156

  • Disable proguard mapping task setup when variant does not obfuscate #157

4.1.2 (2019-04-02)

  • Fix task ordering of build UUID generation when shrinkResources enabled #155

4.1.1 (2019-03-21)

  • Add BUILD_UUID to app bundle manifests #153

4.1.0 (2019-03-13)

Note: this version of the plugin will fail the build if a mapping file is not uploaded successfully. Previously if this occurred the failure would have been logged as an error and the build would have continued.

This behaviour can be disabled by setting failOnUploadError to false.

  • Fail on upload error #151

4.0.0 (2019-01-23)

  • Remove support for Jack compiler #142

  • Address provider api warnings #146

3.6.0 (2018-12-12)

  • Support automatic upload when building App Bundles #137

  • Manually calculate location of objdump in gradle plugin #136

Bug fixes

  • Create tasks for debug variant which are not run by default #139

3.5.0 (2018-10-18)

Bug fixes

  • Add option for setting projectRoot on bugsnag plugin extension #133

3.4.2 (2018-09-27)

Bug fixes

  • Fix native artifact resolution for NDK projects manually installing bugsnag-android-ndk #130

3.4.1 (2018-09-11)

Bug fixes

  • Reduce processing requirements to improve upload speed for NDK mapping files Dave Perryman #129

  • Close IO streams after the plugin has finished reading and writing Jamie Lynch #126

3.4.0 (2018-08-30)

3.3.1 (2018-08-10)

Bug fixes

  • Support Provider API introduced in gradle 4.7, which the manifestOutputDirectory in AGP 3.3.0-alpha04 now uses Jamie Lynch #122

3.3.0 (2018-07-20)

  • Improve support for Dexguard APK splits by manually calculating location of mapping file Jamie Lynch #117

Bug fixes

  • Add a version check for bugsnag-android dependency, disabling redundant ProGuard config if >= v4.6.0 Jamie Lynch #116

3.2.8 (2018-06-21)

Bug fixes

  • Update ProGuard keep rules for Breadcrumb class, fixing NDK compatibility Jamie Lynch #114

3.2.7 (2018-06-05)

Bug fixes

  • Add compatibility with Gradle 4.8 - use def rather than TreeSet when finding the buildType Jamie Lynch #110

3.2.6 (2018-04-24)

  • Update Android Plugin for Gradle version to 3.1.0

Bug fixes

  • Fix possible failed NDK symbol map uploads which could occur if the mapping file was still being written when the process status was checked Jamie Lynch #104

  • Fix malformed metadata uploaded by release task Jamie Lynch #91

  • Reduce log level of failed shell commands in the release task. Shell commands are used to automatically detect source control information and are not a critical error if one fails to run. Jamie Lynch #88

3.2.5 (2018-02-20)

Bug fixes

  • Support applying the gradle plugin to a module separate from the base application by changing the task execution order when generating and attaching build UUIDs Jamie Lynch #87

3.2.4 (2018-01-19)

  • Remove reference to unused task resulting in build failure

3.2.3 (2018-01-18)

  • Add example projects with gradle plugin
  • Fix manifest lookup in project with only APK splits enabled

3.2.2 (2018-01-15)

  • Fixes versionCode cast exception in upload task

3.2.1 (2018-01-10)

  • Automatically add copy task for shared object files to NDK projects

3.2.0 (2018-01-09)

  • Automatically record release/build information to Bugsnag Build API
  • NDK projects are now automatically detected

3.1.1 (2017-12-07)

  • Fix location of shared object files for NDK

3.1.0 (2017-11-17)

  • Finalise upload task on assemble rather than build
  • Support Library variant upload

3.0.0 (2017-10-26)

  • Support Android Studio 3 stable release

3.0.0-beta5 (2017-10-25)

  • Add separate task for holding Splits Info

3.0.0-beta4 (2017-10-16)

  • Fix upload of files for ARM ABI splits

3.0.0-beta3 (2017-10-10)

  • Support upload of APK splits

Breaking changes

If you run the upload task manually, the task name has now changed to use the VariantOutput name, rather than the Variant name.

./gradlew clean build uploadBugsnag${variantOutputName}Mapping

For example, the following would upload the release mapping file for the x86 split of the javaExample productFlavor in the example module:

./gradlew clean build :example:uploadBugsnagJavaExample-x86-releaseMapping

3.0.0-beta2 (2017-09-22)

  • Expose manual upload gradle task

3.0.0-beta (2017-09-06)

  • Support Android Plugin for Gradle 3.0.0

2.4.2 (2017-05-10)

Bug fixes

  • Improve performance of NDK object file generation

2.4.1 (2017-01-30)

Enhancements

  • Support NDK symbols in versioned dependent libraries

Bug fixes

  • Fix typo in internal Proguard configuration

2.4.0 (2017-01-27)

Enhancements

Add support for uploading NDK symbols

2.3.2 (2016-09-26)

Bug Fixes

  • Reduce dependent version of HttpClient to 4.2.1

2.3.1 (2016-09-15)

Bug Fixes

  • Fix error log on upload failures unrelated to server/network outage

2.3.0 (2016-09-13)

Enhancements

  • Support retrying the mapping file upload via retryCount config property Felipe Duarte #27

Bug Fixes

  • Fix build failure if the Bugsnag server could not be reached

2.2.1 (2016-09-05)

Bug fixes

  • Restore support for running alongside older versions of HttpClient

2.2.0 (2016-09-05)

Enhancements

2.1.3 (2016-08-31)

  • Fix build error during task execution

2.1.2 (2016-08-30)

  • Avoid creating new build UUID for Instant Run builds

2.1.1 (2016-05-18)

  • Update enableBugsnag feature to be configurable on a per-variant basis | Tim Mellor | #22

2.1.0 (2016-05-13)

Enhancements

  • Add configuration option enableBugsnag allowing you to completely disable Bugsnag in certain situations | Tim Mellor | #21
  • Plugin id changed to com.bugsnag.android.gradle from bugsnag
  • Now published on https://plugins.gradle.org

2.0.2 (2016-03-16)

  • Depend on Android Gradle plugin 1.5 to avoid lint warnings

2.0.1 (2016-03-14)

Bug Fixes

  • Target Java 6 when building, instead of Java 8

2.0.0 (2016-03-11)

This update added a few enhancements making usage easier and more customizable. There are more details in the README about the improvements to configuration. While gradle compatibility is preserved, this is a breaking change for users of previous versions of the plugin.

Bug Fixes

1.2.2 (2016-03-02)

  • Fix bug causing obfuscated variants to not be detected with newer Android toolchains

1.2.1 (2016-01-18)

  • Configure Bugsnag plugin after project has been evaluated

1.2.0

  • Add build UUID support

1.1.1

  • Fix bug when multiple variants have proguard configured

1.1.0

  • Configure proguard correctly automatically

1.0.0

  • Send versionCode & applicationId
  • Fix when -dontobfuscate is configured in proguard
  • Fix when multiple variants have proguard enabled

0.1.0

  • Initial release