gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-taler-android] 02/03: Enable code minification for release builds


From: gnunet
Subject: [taler-taler-android] 02/03: Enable code minification for release builds of all apps
Date: Fri, 31 Jul 2020 20:40:18 +0200

This is an automated email from the git hooks/post-receive script.

torsten-grote pushed a commit to branch master
in repository taler-android.

commit 4bd0ec921e7ba0b074fef28604febd7ad9d57d01
Author: Torsten Grote <t@grobox.de>
AuthorDate: Fri Jul 31 10:58:20 2020 -0300

    Enable code minification for release builds of all apps
    
    Attention: This brings a high run-time crash risk.
    So all release builds need to be thoroughly tested before publication.
    Nightly builds have been switched to release builds for that reason.
---
 cashier/.gitlab-ci.yml                  |  2 +-
 cashier/build.gradle                    |  2 +-
 cashier/proguard-rules.pro              |  4 ++++
 merchant-lib/consumer-rules.pro         |  1 +
 merchant-terminal/.gitlab-ci.yml        |  2 +-
 merchant-terminal/proguard-rules.pro    |  2 ++
 taler-kotlin-android/consumer-rules.pro | 15 +++++++++++++++
 wallet/.gitlab-ci.yml                   |  2 +-
 wallet/build.gradle                     |  2 +-
 wallet/proguard-rules.pro               |  4 ++++
 10 files changed, 31 insertions(+), 5 deletions(-)

diff --git a/cashier/.gitlab-ci.yml b/cashier/.gitlab-ci.yml
index 6b73dee..cbf2bf0 100644
--- a/cashier/.gitlab-ci.yml
+++ b/cashier/.gitlab-ci.yml
@@ -36,7 +36,7 @@ cashier_deploy_nightly:
     # Set nightly application ID
     - sed -i "s,^\(\s*applicationId\) \"*[a-z\.].*\",\1 
\"net.taler.cashier.nightly\"," cashier/build.gradle
     # Build the APK
-    - ./gradlew :cashier:assembleDebug
+    - ./gradlew :cashier:assembleRelease
     # START only needed while patch not accepted/released upstream
     - apt update && apt install patch
     - patch /usr/lib/python3/dist-packages/fdroidserver/nightly.py 
nightly-stats.patch
diff --git a/cashier/build.gradle b/cashier/build.gradle
index e443944..341562d 100644
--- a/cashier/build.gradle
+++ b/cashier/build.gradle
@@ -35,7 +35,7 @@ android {
 
     buildTypes {
         release {
-            minifyEnabled false
+            minifyEnabled true
             proguardFiles 
getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
         }
     }
diff --git a/cashier/proguard-rules.pro b/cashier/proguard-rules.pro
index f1b4245..f612b29 100644
--- a/cashier/proguard-rules.pro
+++ b/cashier/proguard-rules.pro
@@ -19,3 +19,7 @@
 # If you keep the line number information, uncomment this to
 # hide the original source file name.
 #-renamesourcefileattribute SourceFile
+
+# androidx.security:security-crypto
+# https://github.com/google/tink/issues/361
+-keep class * extends 
com.google.crypto.tink.shaded.protobuf.GeneratedMessageLite { *; }
diff --git a/merchant-lib/consumer-rules.pro b/merchant-lib/consumer-rules.pro
index e69de29..dc239e6 100644
--- a/merchant-lib/consumer-rules.pro
+++ b/merchant-lib/consumer-rules.pro
@@ -0,0 +1 @@
+-keep class net.taler.merchantlib.** {*;}
diff --git a/merchant-terminal/.gitlab-ci.yml b/merchant-terminal/.gitlab-ci.yml
index d159902..470cb58 100644
--- a/merchant-terminal/.gitlab-ci.yml
+++ b/merchant-terminal/.gitlab-ci.yml
@@ -38,7 +38,7 @@ merchant_deploy_nightly:
     # Set nightly application ID
     - sed -i "s,^\(\s*applicationId\) \"*[a-z\.].*\",\1 
\"net.taler.merchantpos.nightly\"," merchant-terminal/build.gradle
     # Build the APK
-    - ./gradlew :merchant-terminal:assembleDebug
+    - ./gradlew :merchant-terminal:assembleRelease
     # START only needed while patch not accepted/released upstream
     - apt update && apt install patch
     - patch /usr/lib/python3/dist-packages/fdroidserver/nightly.py 
nightly-stats.patch
diff --git a/merchant-terminal/proguard-rules.pro 
b/merchant-terminal/proguard-rules.pro
index f1b4245..1a50a50 100644
--- a/merchant-terminal/proguard-rules.pro
+++ b/merchant-terminal/proguard-rules.pro
@@ -19,3 +19,5 @@
 # If you keep the line number information, uncomment this to
 # hide the original source file name.
 #-renamesourcefileattribute SourceFile
+
+-keep class net.taler.merchantpos.** {*;}
diff --git a/taler-kotlin-android/consumer-rules.pro 
b/taler-kotlin-android/consumer-rules.pro
index e69de29..854cdfd 100644
--- a/taler-kotlin-android/consumer-rules.pro
+++ b/taler-kotlin-android/consumer-rules.pro
@@ -0,0 +1,15 @@
+-dontobfuscate
+
+# This is broad, but better leave a few common class and still optimize the 
rest out
+-keep class net.taler.common.** {*;}
+
+# AndroidX navigation
+-keepnames class androidx.navigation.fragment.NavHostFragment
+
+# Jackson serialization
+-keep class kotlin.Metadata { *; }
+-keep class kotlin.reflect.** { *; }
+
+# KotlinX serialization
+-keepattributes *Annotation*, InnerClasses
+-dontnote kotlinx.serialization.SerializationKt
diff --git a/wallet/.gitlab-ci.yml b/wallet/.gitlab-ci.yml
index c417aa9..42f561d 100644
--- a/wallet/.gitlab-ci.yml
+++ b/wallet/.gitlab-ci.yml
@@ -25,7 +25,7 @@ wallet_deploy_nightly:
     # Ensure that key exists
     - test -z "$DEBUG_KEYSTORE" && exit 0
     # Build the APK
-    - ./gradlew :wallet:assembleNightlyDebug
+    - ./gradlew :wallet:assembleNightlyRelease
     # START only needed while patch not accepted/released upstream
     - apt update && apt install patch
     - patch -b /usr/lib/python3/dist-packages/fdroidserver/nightly.py 
nightly-stats.patch
diff --git a/wallet/build.gradle b/wallet/build.gradle
index 1761018..93eef05 100644
--- a/wallet/build.gradle
+++ b/wallet/build.gradle
@@ -53,7 +53,7 @@ android {
     }
     buildTypes {
         release {
-            minifyEnabled false
+            minifyEnabled true
             proguardFiles 
getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
         }
     }
diff --git a/wallet/proguard-rules.pro b/wallet/proguard-rules.pro
index f1b4245..27f3799 100644
--- a/wallet/proguard-rules.pro
+++ b/wallet/proguard-rules.pro
@@ -19,3 +19,7 @@
 # If you keep the line number information, uncomment this to
 # hide the original source file name.
 #-renamesourcefileattribute SourceFile
+
+-keep class akono.AkonoJni {*;}
+
+-keep class net.taler.wallet.** {*;}

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]