diff --git a/app/build.gradle b/app/build.gradle index 539293fb..f6d68347 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -11,9 +11,6 @@ android { multiDexEnabled true testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } - dexOptions { - javaMaxHeapSize "4g" - } flavorDimensions "default" productFlavors { free { @@ -48,6 +45,10 @@ android { } } +repositories { + mavenCentral() +} + configurations { cleanedAnnotations compile.exclude group: 'org.jetbrains', module: 'annotations' @@ -57,7 +58,7 @@ dependencies { def lifecycle_version = '2.4.1' def markwon_version = '4.6.2' def work_version = "2.7.1" - def acra = "5.7.0" + def acra = '5.8.4' implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'androidx.appcompat:appcompat:1.4.1' @@ -70,7 +71,7 @@ dependencies { androidTestImplementation 'androidx.test:runner:1.4.0' androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' implementation 'com.squareup.okhttp3:okhttp:5.0.0-alpha.2' - implementation "com.google.code.gson:gson:2.8.9" + implementation "com.google.code.gson:gson:2.9.0" implementation "com.squareup.picasso:picasso:2.71828" implementation 'jp.wasabeef:picasso-transformations:2.4.0' implementation 'jp.co.cyberagent.android:gpuimage:2.1.0' @@ -95,10 +96,11 @@ dependencies { implementation "io.noties.markwon:simple-ext:$markwon_version" implementation 'org.codeberg.qwerty287:markwonprism4j:9d3ef078cd' implementation 'org.codeberg.qwerty287:Prism4j:3.0.0' - implementation 'com.google.guava:guava:29.0-android' + implementation 'com.google.guava:guava:31.1-android' implementation "io.noties.markwon:image-picasso:$markwon_version" implementation "com.github.HamidrezaAmz:BreadcrumbsView:0.2.9" - implementation "commons-io:commons-io:20030203.000550" + //noinspection GradleDependency + implementation 'commons-io:commons-io:2.11.0' // do not "upgrade" to 20030203.000550 - this was published over 15 years ago implementation 'org.apache.commons:commons-lang3:3.12.0' implementation "com.github.chrisbanes:PhotoView:2.3.0" implementation "ch.acra:acra-mail:$acra" diff --git a/app/src/main/java/org/mian/gitnex/activities/FileViewActivity.java b/app/src/main/java/org/mian/gitnex/activities/FileViewActivity.java index 22ab7fc8..5b3da002 100644 --- a/app/src/main/java/org/mian/gitnex/activities/FileViewActivity.java +++ b/app/src/main/java/org/mian/gitnex/activities/FileViewActivity.java @@ -17,6 +17,7 @@ import androidx.activity.result.contract.ActivityResultContracts; import androidx.core.app.NotificationCompat; import com.vdurmont.emoji.EmojiParser; import org.apache.commons.io.FileUtils; +import org.apache.commons.io.FilenameUtils; import org.gitnex.tea4j.models.Files; import org.mian.gitnex.R; import org.mian.gitnex.clients.RetrofitClient; @@ -99,7 +100,7 @@ public class FileViewActivity extends BaseActivity implements BottomSheetListene if(responseBody != null) { runOnUiThread(() -> binding.progressBar.setVisibility(View.GONE)); - String fileExtension = FileUtils.getExtension(filename); + String fileExtension = FilenameUtils.getExtension(filename); boolean processable = false; @@ -216,7 +217,7 @@ public class FileViewActivity extends BaseActivity implements BottomSheetListene inflater.inflate(R.menu.generic_nav_dotted_menu, menu); inflater.inflate(R.menu.files_view_menu, menu); - if(!FileUtils.getExtension(file.getName()) + if(!FilenameUtils.getExtension(file.getName()) .equalsIgnoreCase("md")) { menu.getItem(0) diff --git a/app/src/main/java/org/mian/gitnex/activities/SettingsSecurityActivity.java b/app/src/main/java/org/mian/gitnex/activities/SettingsSecurityActivity.java index 7544df67..c41d387e 100644 --- a/app/src/main/java/org/mian/gitnex/activities/SettingsSecurityActivity.java +++ b/app/src/main/java/org/mian/gitnex/activities/SettingsSecurityActivity.java @@ -160,7 +160,7 @@ public class SettingsSecurityActivity extends BaseActivity { try { FileUtils.deleteDirectory(cacheDir); - FileUtils.mkdir(cacheDir.getAbsolutePath()); + FileUtils.forceMkdir(cacheDir); this.recreate(); this.overridePendingTransition(0, 0); } diff --git a/app/src/main/java/org/mian/gitnex/core/MainApplication.java b/app/src/main/java/org/mian/gitnex/core/MainApplication.java index e3bd7bcd..91823840 100644 --- a/app/src/main/java/org/mian/gitnex/core/MainApplication.java +++ b/app/src/main/java/org/mian/gitnex/core/MainApplication.java @@ -90,9 +90,12 @@ public class MainApplication extends Application { CoreConfigurationBuilder ACRABuilder = new CoreConfigurationBuilder(this); - ACRABuilder.setBuildConfigClass(BuildConfig.class).setReportFormat(StringFormat.KEY_VALUE_LIST); - ACRABuilder.getPluginConfigurationBuilder(MailSenderConfigurationBuilder.class).setReportAsFile(true).setMailTo(getResources().getString(R.string.appEmail)).setSubject(getResources().getString(R.string.crashReportEmailSubject, AppUtil - .getAppBuildNo(context))).setEnabled(true); + ACRABuilder.withBuildConfigClass(BuildConfig.class).setReportFormat(StringFormat.KEY_VALUE_LIST); + ACRABuilder.getPluginConfigurationBuilder(MailSenderConfigurationBuilder.class).withMailTo(getResources().getString(R.string.appEmail)) + .withSubject(getResources().getString(R.string.crashReportEmailSubject, AppUtil + .getAppBuildNo(context))) + .withReportAsFile(true) + .withEnabled(true); ACRABuilder.getPluginConfigurationBuilder(LimiterConfigurationBuilder.class).setEnabled(true); ACRA.init(this, ACRABuilder); diff --git a/build.gradle b/build.gradle index b60e1d09..e5c03b99 100644 --- a/build.gradle +++ b/build.gradle @@ -7,7 +7,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:4.2.2' + classpath 'com.android.tools.build:gradle:7.0.0' } } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 5551b431..a3aaf6e2 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.1-all.zip