[GH-ISSUE #1699] Reproducible Builds (for IzzyOnDroid) #1130

Closed
opened 2026-02-25 22:39:05 +03:00 by kerem · 23 comments
Owner

Originally created by @obfusk on GitHub (Aug 19, 2024).
Original GitHub issue: https://github.com/floccusaddon/floccus/issues/1699

Describe the feature you'd like to request

At IzzyOnDroid we support Reproducible Builds (see: Reproducible Builds, special client support and more in our repo).

Your app used to be reproducible but recent versions aren't because there is an extra file in the APKs attached to your releases that is missing when building from source (and doesn't seem to be in the repository): assets/public/icons/logo_128_white.png.

 -rw-r--r--  0.0 unx     1041 b-     1041 stor 1981-01-01 01:01:02 46c86ece assets/public/icons/logo.png
 -rw-r--r--  0.0 unx     1959 b-      866 defN 1981-01-01 01:01:02 3771e22b assets/public/icons/logo.svg
 -rw-r--r--  0.0 unx     2149 b-     2149 stor 1981-01-01 01:01:02 fc740066 assets/public/icons/logo_128.png
--rw-r--r--  0.0 unx     7364 b-     7364 stor 1981-01-01 01:01:02 11042e5b assets/public/icons/logo_128_white.png
 -rw-r--r--  0.0 unx      746 b-      746 stor 1981-01-01 01:01:02 a21f4dbe assets/public/icons/logo_32.png
 -rw-r--r--  0.0 unx    10902 b-    10902 stor 1981-01-01 01:01:02 33b0c9e6 assets/public/icons/logo_512.png
 -rw-r--r--  0.0 unx     1397 b-     1397 stor 1981-01-01 01:01:02 f2c411a2 assets/public/icons/logo_64.png

We'd appreciate if you could help making your build reproducible. We've prepared some hints on Reproducible Builds.

Thank you!

cc @IzzySoft

Describe the solution you'd like

Either adding the missing file to the repo so it is included in our builds from source as well, or not including it in your release builds, should make your app reproducible again :)

Describe alternatives you've considered

N/A

Originally created by @obfusk on GitHub (Aug 19, 2024). Original GitHub issue: https://github.com/floccusaddon/floccus/issues/1699 ### Describe the feature you'd like to request At IzzyOnDroid we support [Reproducible Builds](https://reproducible-builds.org/) (see: [Reproducible Builds, special client support and more in our repo](https://android.izzysoft.de/articles/named/iod-rbs-mirrors-clients?lang=en)). Your app used to be reproducible but recent versions aren't because there is an extra file in the APKs attached to your releases that is missing when building from source (and doesn't seem to be in the repository): `assets/public/icons/logo_128_white.png`. ```diff -rw-r--r-- 0.0 unx 1041 b- 1041 stor 1981-01-01 01:01:02 46c86ece assets/public/icons/logo.png -rw-r--r-- 0.0 unx 1959 b- 866 defN 1981-01-01 01:01:02 3771e22b assets/public/icons/logo.svg -rw-r--r-- 0.0 unx 2149 b- 2149 stor 1981-01-01 01:01:02 fc740066 assets/public/icons/logo_128.png --rw-r--r-- 0.0 unx 7364 b- 7364 stor 1981-01-01 01:01:02 11042e5b assets/public/icons/logo_128_white.png -rw-r--r-- 0.0 unx 746 b- 746 stor 1981-01-01 01:01:02 a21f4dbe assets/public/icons/logo_32.png -rw-r--r-- 0.0 unx 10902 b- 10902 stor 1981-01-01 01:01:02 33b0c9e6 assets/public/icons/logo_512.png -rw-r--r-- 0.0 unx 1397 b- 1397 stor 1981-01-01 01:01:02 f2c411a2 assets/public/icons/logo_64.png ``` We'd appreciate if you could help making your build reproducible. We've prepared some [hints on Reproducible Builds](https://gitlab.com/IzzyOnDroid/repo/-/wikis/Reproducible-Builds). Thank you! cc @IzzySoft ### Describe the solution you'd like Either adding the missing file to the repo so it is included in our builds from source as well, or not including it in your release builds, should make your app reproducible again :) ### Describe alternatives you've considered N/A
kerem 2026-02-25 22:39:05 +03:00
Author
Owner

@github-actions[bot] commented on GitHub (Aug 19, 2024):

Hello 👋

Thank you for taking the time to open this issue with floccus. I know it's frustrating when software
causes problems. You have made the right choice to come here and open an issue to make sure your problem gets looked at
and if possible solved.
I'm Marcel and I created floccus and have been maintaining it ever since.
I currently work for Nextcloud which leaves me with less time for side projects like this one
than I used to have.
I still try to answer all issues and if possible fix all bugs here, but it sometimes takes a while until I get to it.
Until then, please be patient.
Note also that GitHub is a place where people meet to make software better together. Nobody here is under any obligation
to help you, solve your problems or deliver on any expectations or demands you may have, but if enough people come together we can
collaborate to make this software better. For everyone.
Thus, if you can, you could also have a look at other issues to see whether you can help other people with your knowledge
and experience. If you have coding experience it would also be awesome if you could step up to dive into the code and
try to fix the odd bug yourself. Everyone will be thankful for extra helping hands!
One last word: If you feel, at any point, like you need to vent, this is not the place for it; you can go to the forum,
to twitter or somewhere else. But this is a technical issue tracker, so please make sure to
focus on the tech and keep your opinions to yourself.

I look forward to working with you on this issue
Cheers 💙

<!-- gh-comment-id:2295470622 --> @github-actions[bot] commented on GitHub (Aug 19, 2024): Hello :wave: Thank you for taking the time to open this issue with floccus. I know it's frustrating when software causes problems. You have made the right choice to come here and open an issue to make sure your problem gets looked at and if possible solved. I'm Marcel and I created floccus and have been maintaining it ever since. I currently work for Nextcloud which leaves me with less time for side projects like this one than I used to have. I still try to answer all issues and if possible fix all bugs here, but it sometimes takes a while until I get to it. Until then, please be patient. Note also that GitHub is a place where people meet to make software better *together*. Nobody here is under any obligation to help you, solve your problems or deliver on any expectations or demands you may have, but if enough people come together we can collaborate to make this software better. For everyone. Thus, if you can, you could also have a look at other issues to see whether you can help other people with your knowledge and experience. If you have coding experience it would also be awesome if you could step up to dive into the code and try to fix the odd bug yourself. Everyone will be thankful for extra helping hands! One last word: If you feel, at any point, like you need to vent, this is not the place for it; you can go to the forum, to twitter or somewhere else. But this is a technical issue tracker, so please make sure to focus on the tech and keep your opinions to yourself. I look forward to working with you on this issue Cheers :blue_heart:
Author
Owner

@marcelklehr commented on GitHub (Aug 19, 2024):

Oh, I didn't notice that file wasn't checked in. It's great to hear that floccus is already reproducible 🎉

<!-- gh-comment-id:2295879954 --> @marcelklehr commented on GitHub (Aug 19, 2024): Oh, I didn't notice that file wasn't checked in. It's great to hear that floccus is already reproducible :tada:
Author
Owner

@marcelklehr commented on GitHub (Aug 19, 2024):

Thank you for all your work on this 💙

<!-- gh-comment-id:2295883411 --> @marcelklehr commented on GitHub (Aug 19, 2024): Thank you for all your work on this :blue_heart:
Author
Owner

@obfusk commented on GitHub (Aug 19, 2024):

Thanks for the quick fix :)

<!-- gh-comment-id:2296931642 --> @obfusk commented on GitHub (Aug 19, 2024): Thanks for the quick fix :)
Author
Owner

@obfusk commented on GitHub (Sep 3, 2024):

As expected, today's v5.2.7 is confirmed reproducible again and will show up with a green shield at IzzyOnDroid :)

<!-- gh-comment-id:2326841021 --> @obfusk commented on GitHub (Sep 3, 2024): As expected, today's v5.2.7 is confirmed reproducible again and will show up with a green shield at IzzyOnDroid :)
Author
Owner

@IzzySoft commented on GitHub (Nov 11, 2024):

@marcelklehr unfortunately, 5.3.3 no longer is RB. Diff of the APKs:

  -rw-r--r--  0.0 unx       46 b-       48 defN 1981-01-01 01:01:02 b8ff6554 META-INF/version-control-info.textproto
- -rw-r--r--  0.0 unx     2137 b-     2137 stor 1981-01-01 01:01:02 8d1d93b2 assets/dexopt/baseline.prof
- -rw-r--r--  0.0 unx      229 b-      229 stor 1981-01-01 01:01:02 d869f0a0 assets/dexopt/baseline.profm
- -rw-r--r--  0.0 unx  6716936 b-  2431833 defN 1981-01-01 01:01:02 e0a6292a classes.dex
+ -rw-r--r--  0.0 unx     2391 b-     2391 stor 1981-01-01 01:01:02 b537b711 assets/dexopt/baseline.prof
+ -rw-r--r--  0.0 unx      231 b-      231 stor 1981-01-01 01:01:02 4a58917a assets/dexopt/baseline.profm
+ -rw-r--r--  0.0 unx  6716920 b-  2431677 defN 1981-01-01 01:01:02 d95a0150 classes.dex
  -rw-r--r--  0.0 unx     3056 b-     1131 defN 1981-01-01 01:01:02 48267148 classes2.dex

Profile differing is to be expected here as classes.dex differs – and the diff in Dex is a little bigger. Are you sure you've built from a clean tree at the commit? And (as your Github workflow files state) with Node-20 and JDK-17?

Diff of classes.dex

 magic               : 'dex\n035\0'
-checksum            : efc8dd6c
-signature           : 341f...8315
-file_size           : 6716936
+checksum            : 46eb37da
+signature           : 150a...9067
+file_size           : 6716920
 header_size         : 112
 link_size           : 0
 link_off            : 0 (0x000000)
-string_ids_size     : 46112
+string_ids_size     : 46114
 string_ids_off      : 112 (0x000070)
-type_ids_size       : 6682
-type_ids_off        : 184560 (0x02d0f0)
+type_ids_size       : 6683
+type_ids_off        : 184568 (0x02d0f8)
 proto_ids_size      : 11358
-proto_ids_off       : 211288 (0x033958)
-field_ids_size      : 19464
-field_ids_off       : 347584 (0x054dc0)
-method_ids_size     : 47128
-method_ids_off      : 503296 (0x07ae00)
-class_defs_size     : 5422
-class_defs_off      : 880320 (0x0d6ec0)
-data_size           : 5663112
-data_off            : 1053824 (0x101480)
+proto_ids_off       : 211300 (0x033964)
+field_ids_size      : 19465
+field_ids_off       : 347596 (0x054dcc)
+method_ids_size     : 47129
+method_ids_off      : 503316 (0x07ae14)
+class_defs_size     : 5423
+class_defs_off      : 880348 (0x0d6edc)
+data_size           : 5663036
+data_off            : 1053884 (0x1014bc)

access_flags : 1 (0x0001)
static_fields_size : 0
@@ -393440,8 +393440,6 @@
virtual_methods_size: 4

VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Landroid/os/AsyncTask<" "Ljava/lang/String;" "Ljava/lang/Void;" "Lcom/byteowls/capacitor/oauth2/ResourceCallResult;" ">;" }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 } names={ null }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 } names={ null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/io/IOException; }

    Class descriptor : 'Lcom/byteowls/capacitor/oauth2/ResourceUrlAsyncTask;'
    @@ -396287,7 +396285,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 } names={ null }

    Class descriptor : 'Lcom/capacitorjs/plugins/network/Network$1;'
    Access flags : 0x0000 ()
    @@ -396352,7 +396349,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/capacitorjs/plugins/network/Network;
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name="ConnectivityCallback"

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 } names={ null }

    Class descriptor : 'Lcom/capacitorjs/plugins/network/Network$ConnectivityCallback;'
    Access flags : 0x0000 ()
    @@ -396770,9 +396766,7 @@
    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/capacitorjs/plugins/network/NetworkStatus;
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=16409 name="ConnectionType"
    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/Enum<" "Lcom/capacitorjs/plugins/network/NetworkStatus$ConnectionType;" ">;" }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 0 } names={ null null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/String;" ")V" }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32768 } names={ null }

    Class descriptor : 'Lcom/capacitorjs/plugins/network/NetworkStatus$ConnectionType;'
    Access flags : 0x4011 (PUBLIC FINAL ENUM)
    @@ -397434,7 +397428,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=load
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 } names={ null }

    Class descriptor : 'Lcom/capacitorjs/plugins/share/SharePlugin$1;'
    Access flags : 0x0000 ()
    @@ -398193,7 +398186,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=showWithAndroid12API
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 } names={ null null }

    Class descriptor : 'Lcom/capacitorjs/plugins/splashscreen/SplashScreen$1;'
    Access flags : 0x0000 ()
    @@ -398327,7 +398319,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=showWithAndroid12API
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 } names={ null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "()V" }

    Class descriptor : 'Lcom/capacitorjs/plugins/splashscreen/SplashScreen$2;'
    @@ -398548,7 +398539,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=show
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 4112 4112 } names={ null null null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "()V" }

    Class descriptor : 'Lcom/capacitorjs/plugins/splashscreen/SplashScreen$3;'
    @@ -398745,7 +398735,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=hide
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 } names={ null }

    Class descriptor : 'Lcom/capacitorjs/plugins/splashscreen/SplashScreen$4;'
    Access flags : 0x0000 ()
    @@ -411223,9 +411212,7 @@
    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/getcapacitor/FileUtils;
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=16409 name="Type"
    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/Enum<" "Lcom/getcapacitor/FileUtils$Type;" ">;" }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 0 } names={ null null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/String;" ")V" }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32768 } names={ null }

    Class descriptor : 'Lcom/getcapacitor/FileUtils$Type;'
    Access flags : 0x4011 (PUBLIC FINAL ENUM)
    @@ -413079,15 +413066,10 @@
    VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; }
    VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; }
    VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 } names={ null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 } names={ null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 } names={ null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 } names={ null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 } names={ null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; }
    VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; }

@@ -414888,9 +414870,7 @@
virtual_methods_size: 1

VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/Enum<" "Lcom/getcapacitor/PermissionState;" ">;" }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 0 } names={ null null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/String;" ")V" }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32768 } names={ null }

    Class descriptor : 'Lcom/getcapacitor/PermissionState;'
    Access flags : 0x4011 (PUBLIC FINAL ENUM)
    @@ -417139,7 +417119,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/getcapacitor/PluginCall;
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name="PluginCallDataTypeException"

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 0 } names={ null null }

    Class descriptor : 'Lcom/getcapacitor/PluginCall$PluginCallDataTypeException;'
    Access flags : 0x0000 ()
    @@ -419946,9 +419925,7 @@
    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/getcapacitor/ServerPath;
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=16409 name="PathType"
    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/Enum<" "Lcom/getcapacitor/ServerPath$PathType;" ">;" }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 } names={ null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "()V" }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32768 } names={ null }

    Class descriptor : 'Lcom/getcapacitor/ServerPath$PathType;'
    Access flags : 0x4011 (PUBLIC FINAL ENUM)
    @@ -423775,7 +423752,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=http
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 4112 } names={ null null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "()V" }

    Class descriptor : 'Lcom/getcapacitor/plugin/CapacitorHttp$1;'
    @@ -424587,6 +424563,87 @@
    0x0000 - 0x0050 reg=2 (null) Ljava/lang/String;

+access_flags : 4096 (0x1000)
+static_fields_size : 1
+instance_fields_size: 0
+direct_methods_size : 1
+virtual_methods_size: 0
+

  • VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/getcapacitor/plugin/util/HttpRequestHandler;
  • VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=4104 name=null
  • Class descriptor : 'Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;'
  • Access flags : 0x1000 (SYNTHETIC)
  • Superclass : 'Ljava/lang/Object;'
  • Interfaces -
  • Static fields -
  • #0 : (in Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;)
  •  name          : '$SwitchMap$com$getcapacitor$plugin$util$HttpRequestHandler$ResponseType'
    
  •  type          : '[I'
    
  •  access        : 0x1018 (STATIC FINAL SYNTHETIC)
    
  • Instance fields -
  • Direct methods -
  • #0 : (in Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;)
  •  name          : '<clinit>'
    
  •  type          : '()V'
    
  •  access        : 0x10008 (STATIC CONSTRUCTOR)
    
  •  code          -
    
  •  registers     : 3
    
  •  ins           : 0
    
  •  outs          : 1
    
  •  insns size    : 63 16-bit code units
    

+| com.getcapacitor.plugin.util.HttpRequestHandler$1.:()V
+|: invoke-static {}, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.values:()[Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;
+|: move-result-object v0
+|: array-length v0, v0
+|: new-array v0, v0, [I
+|: sput-object v0, Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;.$SwitchMap$com$getcapacitor$plugin$util$HttpRequestHandler$ResponseType:[I
+|: sget-object v1, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.ARRAY_BUFFER:Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;
+|: invoke-virtual {v1}, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.ordinal:()I
+|: move-result v1
+|: const/4 v2, #int 1 // #1
+|: aput v2, v0, v1
+|: sget-object v0, Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;.$SwitchMap$com$getcapacitor$plugin$util$HttpRequestHandler$ResponseType:[I
+|: sget-object v1, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.BLOB:Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;
+|: invoke-virtual {v1}, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.ordinal:()I
+|: move-result v1
+|: const/4 v2, #int 2 // #2
+|: aput v2, v0, v1
+|: sget-object v0, Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;.$SwitchMap$com$getcapacitor$plugin$util$HttpRequestHandler$ResponseType:[I
+|: sget-object v1, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.JSON:Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;
+|: invoke-virtual {v1}, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.ordinal:()I
+|: move-result v1
+|: const/4 v2, #int 3 // #3
+|: aput v2, v0, v1
+|: sget-object v0, Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;.$SwitchMap$com$getcapacitor$plugin$util$HttpRequestHandler$ResponseType:[I
+|: sget-object v1, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.DOCUMENT:Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;
+|: invoke-virtual {v1}, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.ordinal:()I
+|: move-result v1
+|: const/4 v2, #int 4 // #4
+|: aput v2, v0, v1
+|: sget-object v0, Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;.$SwitchMap$com$getcapacitor$plugin$util$HttpRequestHandler$ResponseType:[I
+|: sget-object v1, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.TEXT:Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;
+|: invoke-virtual {v1}, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.ordinal:()I
+|: move-result v1
+|: const/4 v2, #int 5 // #5
+|: aput v2, v0, v1
+|: return-void

  •  catches       : 5
    
  •    0x0009 - 0x0012
    
  •      Ljava/lang/NoSuchFieldError; -> 0x0012
    
  •    0x0012 - 0x001d
    
  •      Ljava/lang/NoSuchFieldError; -> 0x001d
    
  •    0x001d - 0x0028
    
  •      Ljava/lang/NoSuchFieldError; -> 0x0028
    
  •    0x0028 - 0x0033
    
  •      Ljava/lang/NoSuchFieldError; -> 0x0033
    
  •    0x0033 - 0x003e
    
  •      Ljava/lang/NoSuchFieldError; -> 0x003e
    
  •  positions     :
    
  •  locals        :
    
  • Virtual methods -

access_flags : 1 (0x0001)
static_fields_size : 0
instance_fields_size: 7
@@ -425034,9 +425091,7 @@
VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/getcapacitor/plugin/util/HttpRequestHandler;
VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=16409 name="ResponseType"
VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/Enum<" "Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;" ">;" }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 0 } names={ null null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/String;" ")V" }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32768 } names={ null }

    Class descriptor : 'Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;'
    Access flags : 0x4011 (PUBLIC FINAL ENUM)
    @@ -425584,7 +425639,7 @@
    registers : 6
    ins : 2
    outs : 2

  •  insns size    : 106 16-bit code units
    
  •  insns size    : 110 16-bit code units
    

| com.getcapacitor.plugin.util.HttpRequestHandler.readData:(Lcom/getcapacitor/plugin/util/ICapacitorHttpUrlConnection;Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;)Ljava/lang/Object;
|: invoke-interface {v4}, Lcom/getcapacitor/plugin/util/ICapacitorHttpUrlConnection;.getErrorStream:()Ljava/io/InputStream;
|: move-result-object v0
@@ -425592,9 +425647,9 @@
|: invoke-interface {v4, v1}, Lcom/getcapacitor/plugin/util/ICapacitorHttpUrlConnection;.getHeaderField:(Ljava/lang/String;)Ljava/lang/String;
|: move-result-object v1
|: const/4 v2, #int 1 // #1
-|: if-eqz v0, 002d // +0022
-|: const/4 v4, #int 2 // #2
-|: new-array v4, v4, [Lcom/getcapacitor/plugin/util/MimeType;
+|: const/4 v3, #int 2 // #2
+|: if-eqz v0, 002d // +0021
+|: new-array v4, v3, [Lcom/getcapacitor/plugin/util/MimeType;
|: const/4 v5, #int 0 // #0
|: sget-object v3, Lcom/getcapacitor/plugin/util/MimeType;.APPLICATION_JSON:Lcom/getcapacitor/plugin/util/MimeType;
|: aput-object v3, v4, v5
@@ -425627,12 +425682,14 @@
|: return-object v4
|: invoke-interface {v4}, Lcom/getcapacitor/plugin/util/ICapacitorHttpUrlConnection;.getInputStream:()Ljava/io/InputStream;
|: move-result-object v4
+|: sget-object v0, Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;.$SwitchMap$com$getcapacitor$plugin$util$HttpRequestHandler$ResponseType:[I
|: invoke-virtual {v5}, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.ordinal:()I
|: move-result v5
-|: if-eqz v5, 0065 // +0015
-|: if-eq v5, v2, 0065 // +0013
+|: aget v5, v0, v5
+|: if-eq v5, v2, 0069 // +0015
+|: if-eq v5, v3, 0069 // +0013
|: const/4 v0, #int 3 // #3
-|: if-eq v5, v0, 005c // +0007
+|: if-eq v5, v0, 0060 // +0007
|: invoke-static {v4}, Lcom/getcapacitor/plugin/util/HttpRequestHandler;.readStreamAsString:(Ljava/io/InputStream;)Ljava/lang/String;
|: move-result-object v4
|: return-object v4
@@ -425647,8 +425704,8 @@
catches : (none)
positions :
locals :

  •    0x0000 - 0x006a reg=4 (null) Lcom/getcapacitor/plugin/util/ICapacitorHttpUrlConnection;
    
  •    0x0000 - 0x006a reg=5 (null) Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;
    
  •    0x0000 - 0x006e reg=4 (null) Lcom/getcapacitor/plugin/util/ICapacitorHttpUrlConnection;
    
  •    0x0000 - 0x006e reg=5 (null) Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;
    

    #8 : (in Lcom/getcapacitor/plugin/util/HttpRequestHandler;)
    name : 'readStreamAsBase64'
    @@ -425919,9 +425976,7 @@
    virtual_methods_size: 1

    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/Enum<" "Lcom/getcapacitor/plugin/util/MimeType;" ">;" }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 0 } names={ null null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/String;" ")V" }

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32768 } names={ null }

    Class descriptor : 'Lcom/getcapacitor/plugin/util/MimeType;'
    Access flags : 0x4010 (FINAL ENUM)
    @@ -797049,7 +797104,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=authenticate
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 } names={ null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "()V" }

    Class descriptor : 'Lcom/byteowls/capacitor/oauth2/OAuth2ClientPlugin$1;'
    @@ -798776,7 +798830,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=load
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 0 } names={ null null }

    Class descriptor : 'Lcom/capacitorjs/plugins/app/AppPlugin$1;'
    Access flags : 0x0000 ()
    @@ -799533,7 +799586,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/capacitorjs/plugins/browser/Browser;
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 } names={ null }

    Class descriptor : 'Lcom/capacitorjs/plugins/browser/Browser$1;'
    Access flags : 0x0000 ()
    @@ -799612,7 +799664,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=getCustomTabsSession
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 } names={ null }

    Class descriptor : 'Lcom/capacitorjs/plugins/browser/Browser$2;'
    Access flags : 0x0000 ()
    @@ -800381,7 +800432,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=downloadFile
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 } names={ null null }

    Class descriptor : 'Lcom/capacitorjs/plugins/filesystem/Filesystem$1;'
    Access flags : 0x0000 ()
    @@ -803437,7 +803487,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=show
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 } names={ null null }
    VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "()V" }

    Class descriptor : 'Lcom/capacitorjs/plugins/splashscreen/SplashScreenPlugin$1;'
    @@ -804697,7 +804746,6 @@

    VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=createHostingDetails
    VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null

  • VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 } names={ null null }

    Class descriptor : 'Lcom/getcapacitor/WebViewLocalServer$1;'
    Access flags : 0x0000 ()

<!-- gh-comment-id:2468831011 --> @IzzySoft commented on GitHub (Nov 11, 2024): @marcelklehr unfortunately, 5.3.3 no longer is RB. Diff of the APKs: ```diff -rw-r--r-- 0.0 unx 46 b- 48 defN 1981-01-01 01:01:02 b8ff6554 META-INF/version-control-info.textproto - -rw-r--r-- 0.0 unx 2137 b- 2137 stor 1981-01-01 01:01:02 8d1d93b2 assets/dexopt/baseline.prof - -rw-r--r-- 0.0 unx 229 b- 229 stor 1981-01-01 01:01:02 d869f0a0 assets/dexopt/baseline.profm - -rw-r--r-- 0.0 unx 6716936 b- 2431833 defN 1981-01-01 01:01:02 e0a6292a classes.dex + -rw-r--r-- 0.0 unx 2391 b- 2391 stor 1981-01-01 01:01:02 b537b711 assets/dexopt/baseline.prof + -rw-r--r-- 0.0 unx 231 b- 231 stor 1981-01-01 01:01:02 4a58917a assets/dexopt/baseline.profm + -rw-r--r-- 0.0 unx 6716920 b- 2431677 defN 1981-01-01 01:01:02 d95a0150 classes.dex -rw-r--r-- 0.0 unx 3056 b- 1131 defN 1981-01-01 01:01:02 48267148 classes2.dex ``` Profile differing is to be expected here as `classes.dex` differs – and the diff in Dex is a little bigger. Are you sure you've built from a clean tree at the commit? And (as your Github workflow files state) with Node-20 and JDK-17? <details><summary>Diff of classes.dex</summary><pre><code> magic : 'dex\n035\0' -checksum : efc8dd6c -signature : 341f...8315 -file_size : 6716936 +checksum : 46eb37da +signature : 150a...9067 +file_size : 6716920 header_size : 112 link_size : 0 link_off : 0 (0x000000) -string_ids_size : 46112 +string_ids_size : 46114 string_ids_off : 112 (0x000070) -type_ids_size : 6682 -type_ids_off : 184560 (0x02d0f0) +type_ids_size : 6683 +type_ids_off : 184568 (0x02d0f8) proto_ids_size : 11358 -proto_ids_off : 211288 (0x033958) -field_ids_size : 19464 -field_ids_off : 347584 (0x054dc0) -method_ids_size : 47128 -method_ids_off : 503296 (0x07ae00) -class_defs_size : 5422 -class_defs_off : 880320 (0x0d6ec0) -data_size : 5663112 -data_off : 1053824 (0x101480) +proto_ids_off : 211300 (0x033964) +field_ids_size : 19465 +field_ids_off : 347596 (0x054dcc) +method_ids_size : 47129 +method_ids_off : 503316 (0x07ae14) +class_defs_size : 5423 +class_defs_off : 880348 (0x0d6edc) +data_size : 5663036 +data_off : 1053884 (0x1014bc) access_flags : 1 (0x0001) static_fields_size : 0 @@ -393440,8 +393440,6 @@ virtual_methods_size: 4 VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Landroid/os/AsyncTask<" "Ljava/lang/String;" "Ljava/lang/Void;" "Lcom/byteowls/capacitor/oauth2/ResourceCallResult;" ">;" } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 } names={ null } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 } names={ null } VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/io/IOException; } Class descriptor : 'Lcom/byteowls/capacitor/oauth2/ResourceUrlAsyncTask;' @@ -396287,7 +396285,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=<init> VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 } names={ null } Class descriptor : 'Lcom/capacitorjs/plugins/network/Network$1;' Access flags : 0x0000 () @@ -396352,7 +396349,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/capacitorjs/plugins/network/Network; VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name="ConnectivityCallback" - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 } names={ null } Class descriptor : 'Lcom/capacitorjs/plugins/network/Network$ConnectivityCallback;' Access flags : 0x0000 () @@ -396770,9 +396766,7 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/capacitorjs/plugins/network/NetworkStatus; VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=16409 name="ConnectionType" VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/Enum<" "Lcom/capacitorjs/plugins/network/NetworkStatus$ConnectionType;" ">;" } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 0 } names={ null null null } VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/String;" ")V" } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32768 } names={ null } Class descriptor : 'Lcom/capacitorjs/plugins/network/NetworkStatus$ConnectionType;' Access flags : 0x4011 (PUBLIC FINAL ENUM) @@ -397434,7 +397428,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=load VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 } names={ null } Class descriptor : 'Lcom/capacitorjs/plugins/share/SharePlugin$1;' Access flags : 0x0000 () @@ -398193,7 +398186,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=showWithAndroid12API VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 } names={ null null } Class descriptor : 'Lcom/capacitorjs/plugins/splashscreen/SplashScreen$1;' Access flags : 0x0000 () @@ -398327,7 +398319,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=showWithAndroid12API VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 } names={ null null } VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "()V" } Class descriptor : 'Lcom/capacitorjs/plugins/splashscreen/SplashScreen$2;' @@ -398548,7 +398539,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=show VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 4112 4112 } names={ null null null null } VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "()V" } Class descriptor : 'Lcom/capacitorjs/plugins/splashscreen/SplashScreen$3;' @@ -398745,7 +398735,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=hide VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 } names={ null } Class descriptor : 'Lcom/capacitorjs/plugins/splashscreen/SplashScreen$4;' Access flags : 0x0000 () @@ -411223,9 +411212,7 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/getcapacitor/FileUtils; VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=16409 name="Type" VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/Enum<" "Lcom/getcapacitor/FileUtils$Type;" ">;" } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 0 } names={ null null null } VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/String;" ")V" } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32768 } names={ null } Class descriptor : 'Lcom/getcapacitor/FileUtils$Type;' Access flags : 0x4011 (PUBLIC FINAL ENUM) @@ -413079,15 +413066,10 @@ VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; } VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; } VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 } names={ null null } VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 } names={ null null } VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 } names={ null null } VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 } names={ null null } VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 } names={ null null } VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; } VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Lorg/json/JSONException; } @@ -414888,9 +414870,7 @@ virtual_methods_size: 1 VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/Enum<" "Lcom/getcapacitor/PermissionState;" ">;" } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 0 } names={ null null null } VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/String;" ")V" } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32768 } names={ null } Class descriptor : 'Lcom/getcapacitor/PermissionState;' Access flags : 0x4011 (PUBLIC FINAL ENUM) @@ -417139,7 +417119,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/getcapacitor/PluginCall; VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name="PluginCallDataTypeException" - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 0 } names={ null null } Class descriptor : 'Lcom/getcapacitor/PluginCall$PluginCallDataTypeException;' Access flags : 0x0000 () @@ -419946,9 +419925,7 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/getcapacitor/ServerPath; VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=16409 name="PathType" VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/Enum<" "Lcom/getcapacitor/ServerPath$PathType;" ">;" } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 } names={ null null } VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "()V" } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32768 } names={ null } Class descriptor : 'Lcom/getcapacitor/ServerPath$PathType;' Access flags : 0x4011 (PUBLIC FINAL ENUM) @@ -423775,7 +423752,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=http VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 4112 } names={ null null null } VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "()V" } Class descriptor : 'Lcom/getcapacitor/plugin/CapacitorHttp$1;' @@ -424587,6 +424563,87 @@ 0x0000 - 0x0050 reg=2 (null) Ljava/lang/String; +access_flags : 4096 (0x1000) +static_fields_size : 1 +instance_fields_size: 0 +direct_methods_size : 1 +virtual_methods_size: 0 + + VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/getcapacitor/plugin/util/HttpRequestHandler; + VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=4104 name=null + + Class descriptor : 'Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;' + Access flags : 0x1000 (SYNTHETIC) + Superclass : 'Ljava/lang/Object;' + Interfaces - + Static fields - + #0 : (in Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;) + name : '$SwitchMap$com$getcapacitor$plugin$util$HttpRequestHandler$ResponseType' + type : '[I' + access : 0x1018 (STATIC FINAL SYNTHETIC) + Instance fields - + Direct methods - + #0 : (in Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;) + name : '<clinit>' + type : '()V' + access : 0x10008 (STATIC CONSTRUCTOR) + code - + registers : 3 + ins : 0 + outs : 1 + insns size : 63 16-bit code units +| com.getcapacitor.plugin.util.HttpRequestHandler$1.<clinit>:()V +|: invoke-static {}, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.values:()[Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType; +|: move-result-object v0 +|: array-length v0, v0 +|: new-array v0, v0, [I +|: sput-object v0, Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;.$SwitchMap$com$getcapacitor$plugin$util$HttpRequestHandler$ResponseType:[I +|: sget-object v1, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.ARRAY_BUFFER:Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType; +|: invoke-virtual {v1}, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.ordinal:()I +|: move-result v1 +|: const/4 v2, #int 1 // #1 +|: aput v2, v0, v1 +|: sget-object v0, Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;.$SwitchMap$com$getcapacitor$plugin$util$HttpRequestHandler$ResponseType:[I +|: sget-object v1, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.BLOB:Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType; +|: invoke-virtual {v1}, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.ordinal:()I +|: move-result v1 +|: const/4 v2, #int 2 // #2 +|: aput v2, v0, v1 +|: sget-object v0, Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;.$SwitchMap$com$getcapacitor$plugin$util$HttpRequestHandler$ResponseType:[I +|: sget-object v1, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.JSON:Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType; +|: invoke-virtual {v1}, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.ordinal:()I +|: move-result v1 +|: const/4 v2, #int 3 // #3 +|: aput v2, v0, v1 +|: sget-object v0, Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;.$SwitchMap$com$getcapacitor$plugin$util$HttpRequestHandler$ResponseType:[I +|: sget-object v1, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.DOCUMENT:Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType; +|: invoke-virtual {v1}, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.ordinal:()I +|: move-result v1 +|: const/4 v2, #int 4 // #4 +|: aput v2, v0, v1 +|: sget-object v0, Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;.$SwitchMap$com$getcapacitor$plugin$util$HttpRequestHandler$ResponseType:[I +|: sget-object v1, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.TEXT:Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType; +|: invoke-virtual {v1}, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.ordinal:()I +|: move-result v1 +|: const/4 v2, #int 5 // #5 +|: aput v2, v0, v1 +|: return-void + catches : 5 + 0x0009 - 0x0012 + Ljava/lang/NoSuchFieldError; -> 0x0012 + 0x0012 - 0x001d + Ljava/lang/NoSuchFieldError; -> 0x001d + 0x001d - 0x0028 + Ljava/lang/NoSuchFieldError; -> 0x0028 + 0x0028 - 0x0033 + Ljava/lang/NoSuchFieldError; -> 0x0033 + 0x0033 - 0x003e + Ljava/lang/NoSuchFieldError; -> 0x003e + positions : + locals : + + Virtual methods - + access_flags : 1 (0x0001) static_fields_size : 0 instance_fields_size: 7 @@ -425034,9 +425091,7 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/getcapacitor/plugin/util/HttpRequestHandler; VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=16409 name="ResponseType" VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/Enum<" "Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;" ">;" } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 0 } names={ null null null } VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/String;" ")V" } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32768 } names={ null } Class descriptor : 'Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;' Access flags : 0x4011 (PUBLIC FINAL ENUM) @@ -425584,7 +425639,7 @@ registers : 6 ins : 2 outs : 2 - insns size : 106 16-bit code units + insns size : 110 16-bit code units | com.getcapacitor.plugin.util.HttpRequestHandler.readData:(Lcom/getcapacitor/plugin/util/ICapacitorHttpUrlConnection;Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;)Ljava/lang/Object; |: invoke-interface {v4}, Lcom/getcapacitor/plugin/util/ICapacitorHttpUrlConnection;.getErrorStream:()Ljava/io/InputStream; |: move-result-object v0 @@ -425592,9 +425647,9 @@ |: invoke-interface {v4, v1}, Lcom/getcapacitor/plugin/util/ICapacitorHttpUrlConnection;.getHeaderField:(Ljava/lang/String;)Ljava/lang/String; |: move-result-object v1 |: const/4 v2, #int 1 // #1 -|: if-eqz v0, 002d // +0022 -|: const/4 v4, #int 2 // #2 -|: new-array v4, v4, [Lcom/getcapacitor/plugin/util/MimeType; +|: const/4 v3, #int 2 // #2 +|: if-eqz v0, 002d // +0021 +|: new-array v4, v3, [Lcom/getcapacitor/plugin/util/MimeType; |: const/4 v5, #int 0 // #0 |: sget-object v3, Lcom/getcapacitor/plugin/util/MimeType;.APPLICATION_JSON:Lcom/getcapacitor/plugin/util/MimeType; |: aput-object v3, v4, v5 @@ -425627,12 +425682,14 @@ |: return-object v4 |: invoke-interface {v4}, Lcom/getcapacitor/plugin/util/ICapacitorHttpUrlConnection;.getInputStream:()Ljava/io/InputStream; |: move-result-object v4 +|: sget-object v0, Lcom/getcapacitor/plugin/util/HttpRequestHandler$1;.$SwitchMap$com$getcapacitor$plugin$util$HttpRequestHandler$ResponseType:[I |: invoke-virtual {v5}, Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType;.ordinal:()I |: move-result v5 -|: if-eqz v5, 0065 // +0015 -|: if-eq v5, v2, 0065 // +0013 +|: aget v5, v0, v5 +|: if-eq v5, v2, 0069 // +0015 +|: if-eq v5, v3, 0069 // +0013 |: const/4 v0, #int 3 // #3 -|: if-eq v5, v0, 005c // +0007 +|: if-eq v5, v0, 0060 // +0007 |: invoke-static {v4}, Lcom/getcapacitor/plugin/util/HttpRequestHandler;.readStreamAsString:(Ljava/io/InputStream;)Ljava/lang/String; |: move-result-object v4 |: return-object v4 @@ -425647,8 +425704,8 @@ catches : (none) positions : locals : - 0x0000 - 0x006a reg=4 (null) Lcom/getcapacitor/plugin/util/ICapacitorHttpUrlConnection; - 0x0000 - 0x006a reg=5 (null) Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType; + 0x0000 - 0x006e reg=4 (null) Lcom/getcapacitor/plugin/util/ICapacitorHttpUrlConnection; + 0x0000 - 0x006e reg=5 (null) Lcom/getcapacitor/plugin/util/HttpRequestHandler$ResponseType; #8 : (in Lcom/getcapacitor/plugin/util/HttpRequestHandler;) name : 'readStreamAsBase64' @@ -425919,9 +425976,7 @@ virtual_methods_size: 1 VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/Enum<" "Lcom/getcapacitor/plugin/util/MimeType;" ">;" } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 4096 4096 0 } names={ null null null } VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/String;" ")V" } - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32768 } names={ null } Class descriptor : 'Lcom/getcapacitor/plugin/util/MimeType;' Access flags : 0x4010 (FINAL ENUM) @@ -797049,7 +797104,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=authenticate VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 } names={ null null } VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "()V" } Class descriptor : 'Lcom/byteowls/capacitor/oauth2/OAuth2ClientPlugin$1;' @@ -798776,7 +798830,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=load VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 0 } names={ null null } Class descriptor : 'Lcom/capacitorjs/plugins/app/AppPlugin$1;' Access flags : 0x0000 () @@ -799533,7 +799586,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/capacitorjs/plugins/browser/Browser; VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 } names={ null } Class descriptor : 'Lcom/capacitorjs/plugins/browser/Browser$1;' Access flags : 0x0000 () @@ -799612,7 +799664,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=getCustomTabsSession VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 } names={ null } Class descriptor : 'Lcom/capacitorjs/plugins/browser/Browser$2;' Access flags : 0x0000 () @@ -800381,7 +800432,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=downloadFile VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 } names={ null null } Class descriptor : 'Lcom/capacitorjs/plugins/filesystem/Filesystem$1;' Access flags : 0x0000 () @@ -803437,7 +803487,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=show VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 } names={ null null } VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "()V" } Class descriptor : 'Lcom/capacitorjs/plugins/splashscreen/SplashScreenPlugin$1;' @@ -804697,7 +804746,6 @@ VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingMethod; value=createHostingDetails VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null - VISIBILITY_SYSTEM Ldalvik/annotation/MethodParameters; accessFlags={ 32784 4112 } names={ null null } Class descriptor : 'Lcom/getcapacitor/WebViewLocalServer$1;' Access flags : 0x0000 () </code></pre></details>
Author
Owner

@marcelklehr commented on GitHub (Nov 11, 2024):

Hey @IzzySoft Thank you for reaching out!

<!-- gh-comment-id:2468924853 --> @marcelklehr commented on GitHub (Nov 11, 2024): Hey @IzzySoft Thank you for reaching out!
Author
Owner

@marcelklehr commented on GitHub (Nov 11, 2024):

I did reinstall my computer in the meantime, so it's possible something changed. I'm not sure which JDK Android studio uses by default, on my system I have JDK 21, so I will try and rebuild using 17 and check back with you.

<!-- gh-comment-id:2468928291 --> @marcelklehr commented on GitHub (Nov 11, 2024): I did reinstall my computer in the meantime, so it's possible something changed. I'm not sure which JDK Android studio uses by default, on my system I have JDK 21, so I will try and rebuild using 17 and check back with you.
Author
Owner

@IzzySoft commented on GitHub (Nov 11, 2024):

Thanks @marcelklehr! As the release is already out, I can try with 21 against that and see, give me a few minutes…

<!-- gh-comment-id:2469291042 --> @IzzySoft commented on GitHub (Nov 11, 2024): Thanks @marcelklehr! As the release is already out, I can try with 21 against that and see, give me a few minutes…
Author
Owner

@IzzySoft commented on GitHub (Nov 11, 2024):

Eh, I feel so stupid… That was an easy solution Marcel: switching from JDK-17 on debian:bookworm to JDK-21 on ubuntu:jammy made the RB succeed! So simply stick with that, all fine here again – and following releases will run with jammy/21 automatically (as their recipes will be based on the latest previous one).

Oh, and for the books: node-22 used here, went fine.

<!-- gh-comment-id:2469302472 --> @IzzySoft commented on GitHub (Nov 11, 2024): Eh, I feel so stupid… That was an easy solution Marcel: switching from JDK-17 on debian:bookworm to JDK-21 on ubuntu:jammy made the RB succeed! So simply stick with that, all fine here again – and following releases will run with jammy/21 automatically (as their recipes will be based on the latest previous one). Oh, and for the books: node-22 used here, went fine.
Author
Owner

@marcelklehr commented on GitHub (Nov 13, 2024):

Ah, that's great, thank you!

<!-- gh-comment-id:2472853792 --> @marcelklehr commented on GitHub (Nov 13, 2024): Ah, that's great, thank you!
Author
Owner

@IzzySoft commented on GitHub (Nov 30, 2024):

@marcelklehr for v5.4.0, RB failed again. Seems like you've added some Sentry debug ids which are generated at build time. APK diff:

  -rw-r--r--  0.0 unx    35006 b-     6394 defN 1981-01-01 01:01:02 c7235359 assets/public/js/828.js.map
- -rw-r--r--  0.0 unx   287566 b-    54801 defN 1981-01-01 01:01:02 db3ac8ea assets/public/js/832.js
+ -rw-r--r--  0.0 unx   287566 b-    54801 defN 1981-01-01 01:01:02 86d158fd assets/public/js/832.js
  -rw-r--r--  0.0 unx   479225 b-   114206 defN 1981-01-01 01:01:02 95aad50d assets/public/js/832.js.map
  -rw-r--r--  0.0 unx      375 b-      209 defN 1981-01-01 01:01:02 65b3ab1b assets/public/js/853.js.LICENSE.txt
  -rw-r--r--  0.0 unx  1061904 b-   314022 defN 1981-01-01 01:01:02 64022c79 assets/public/js/853.js
  -rw-r--r--  0.0 unx  4733051 b-  1189536 defN 1981-01-01 01:01:02 08301f07 assets/public/js/853.js.map
- -rw-r--r--  0.0 unx    23387 b-     7927 defN 1981-01-01 01:01:02 f5751245 assets/public/js/88.js
+ -rw-r--r--  0.0 unx    23661 b-     8020 defN 1981-01-01 01:01:02 7c4f076b assets/public/js/88.js
  -rw-r--r--  0.0 unx    46871 b-    16062 defN 1981-01-01 01:01:02 eededed4 assets/public/js/885.js

Diff of 832.js:

-!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=(new Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="329b438e-9296-4a06-8509-fdec
+!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=(new Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="e76e0a64-2553-498e-8bbc-4211

(lines truncated, but you already see the IDs differ)

As those *.js files are generated dynamically, I'm not sure if the same is valid for those sentryDebugIds. If so, it is non-deterministic so Floccus won't be RB anymore unless this is removed again. If on the other hand that ID is injected via some secret, we'd need to do that on our end as well to get it RB again.

I'm just trying to find out. On the way there, I notice in the logs:

[sentry-webpack-plugin] Info: Sending telemetry data on issues and performance to Sentry. To disable telemetry, set `options.telemetry` to `false`.

Maybe set that to false? 😉

OK, build completed. Fixing up the IDs post-build worked, but the result was still not RB – 832.js was fine then, but 88.js still not:

image

I've no idea what causes the additional "lines" in my build. I can wait the next run (tomorrow around 6 pm UTC) if you have an idea how to fix it on my end, but if it cannot be fixed here we'll have to let v5.4.0 fail RB and hope we get the next release RB again.

<!-- gh-comment-id:2509386177 --> @IzzySoft commented on GitHub (Nov 30, 2024): @marcelklehr for v5.4.0, RB failed again. Seems like you've added some Sentry debug ids which are generated at build time. APK diff: ```diff -rw-r--r-- 0.0 unx 35006 b- 6394 defN 1981-01-01 01:01:02 c7235359 assets/public/js/828.js.map - -rw-r--r-- 0.0 unx 287566 b- 54801 defN 1981-01-01 01:01:02 db3ac8ea assets/public/js/832.js + -rw-r--r-- 0.0 unx 287566 b- 54801 defN 1981-01-01 01:01:02 86d158fd assets/public/js/832.js -rw-r--r-- 0.0 unx 479225 b- 114206 defN 1981-01-01 01:01:02 95aad50d assets/public/js/832.js.map -rw-r--r-- 0.0 unx 375 b- 209 defN 1981-01-01 01:01:02 65b3ab1b assets/public/js/853.js.LICENSE.txt -rw-r--r-- 0.0 unx 1061904 b- 314022 defN 1981-01-01 01:01:02 64022c79 assets/public/js/853.js -rw-r--r-- 0.0 unx 4733051 b- 1189536 defN 1981-01-01 01:01:02 08301f07 assets/public/js/853.js.map - -rw-r--r-- 0.0 unx 23387 b- 7927 defN 1981-01-01 01:01:02 f5751245 assets/public/js/88.js + -rw-r--r-- 0.0 unx 23661 b- 8020 defN 1981-01-01 01:01:02 7c4f076b assets/public/js/88.js -rw-r--r-- 0.0 unx 46871 b- 16062 defN 1981-01-01 01:01:02 eededed4 assets/public/js/885.js ``` Diff of `832.js`: ```diff -!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=(new Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="329b438e-9296-4a06-8509-fdec +!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=(new Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="e76e0a64-2553-498e-8bbc-4211 ``` (lines truncated, but you already see the IDs differ) As those `*.js` files are generated dynamically, I'm not sure if the same is valid for those `sentryDebugIds`. If so, it is non-deterministic so Floccus won't be RB anymore unless this is removed again. If on the other hand that ID is injected via some secret, we'd need to do that on our end as well to get it RB again. I'm just trying to find out. On the way there, I notice in the logs: [sentry-webpack-plugin] Info: Sending telemetry data on issues and performance to Sentry. To disable telemetry, set `options.telemetry` to `false`. Maybe set that to `false`? :wink: OK, build completed. Fixing up the IDs post-build worked, but the result was still not RB – `832.js` was fine then, but `88.js` still not: ![image](https://github.com/user-attachments/assets/8191c38a-899d-43de-9444-1e5f17f9fafd) I've no idea what causes the additional "lines" in my build. I can wait the next run (tomorrow around 6 pm UTC) if you have an idea how to fix it on my end, but if it cannot be fixed here we'll have to let v5.4.0 fail RB and hope we get the next release RB again.
Author
Owner

@marcelklehr commented on GitHub (Dec 1, 2024):

Hi @IzzySoft
Damn this is tough! Thanks for reaching out! I'll look into this!

<!-- gh-comment-id:2509699919 --> @marcelklehr commented on GitHub (Dec 1, 2024): Hi @IzzySoft Damn this is tough! Thanks for reaching out! I'll look into this!
Author
Owner

@obfusk commented on GitHub (Dec 1, 2024):

That diff looks a lot like this commit made to develop after the tag: github.com/floccusaddon/floccus@f0d82c4885

<!-- gh-comment-id:2510198790 --> @obfusk commented on GitHub (Dec 1, 2024): That diff looks a lot like this commit made to develop after the tag: https://github.com/floccusaddon/floccus/commit/f0d82c4885472bb368119e445f492749449d54bb
Author
Owner

@obfusk commented on GitHub (Dec 1, 2024):

Looking closer at the hex dump it looks like this commit, which I'm guessing was merged after the APK was built, causing both the diff and the ID, which is a hash of inputs, to change: github.com/floccusaddon/floccus@3ec547802b

<!-- gh-comment-id:2510200286 --> @obfusk commented on GitHub (Dec 1, 2024): Looking closer at the hex dump it looks like this commit, which I'm guessing was merged after the APK was built, causing both the diff and the ID, which is a hash of inputs, to change: https://github.com/floccusaddon/floccus/commit/3ec547802b8a33851512b25e820b841937b25772
Author
Owner

@IzzySoft commented on GitHub (Dec 1, 2024):

Thanks @obfusk – that indeed looks like the diff from above. I've just tried to build from the commit before that, but that then results in an even much larger diff. So not RB, and I'll now have to publish it such (cannot hold back forever, especially if the chances to get it fixed are that low).

@marcelklehr what I wonder about is what you did about versionInfo (META-INF/version-control-info.textproto) that it just says "generate_error_reason: NO_SUPPORTED_VCS_FOUND" – even for our build, which happens within the git tree. Having the commit hash in there would be quite helpful with issues like this.

<!-- gh-comment-id:2510213506 --> @IzzySoft commented on GitHub (Dec 1, 2024): Thanks @obfusk – that indeed looks like the diff from above. I've just tried to build from the commit before that, but that then results in an even much larger diff. So not RB, and I'll now have to publish it such (cannot hold back forever, especially if the chances to get it fixed are that low). @marcelklehr what I wonder about is what you did about versionInfo (`META-INF/version-control-info.textproto`) that it just says "generate_error_reason: NO_SUPPORTED_VCS_FOUND" – even for our build, which happens within the git tree. Having the commit hash in there would be quite helpful with issues like this.
Author
Owner

@IzzySoft commented on GitHub (Dec 1, 2024):

OK, found the culprit and fixed it™ – err, Fay found the culprit and let me fix it 😉

git checkout 3ec547802b8a33851512b25e820b841937b25772^ -- _locales/zh_CN/messages.json

before building (to get rid of that diff), then

reproducible-apk-tools/inplace-fix.py --internal --zipalign --page-size 4 fix-files …

with a sed for the 2 *.js files. Floccus v5.4.0 is now marked RB. I forgot to put a note into the recipe as we might need to revert those changes for the next release; waiting for what @marcelklehr comes up on the sentry part (and hopefully does not build from a dirty tree again 😜).

<!-- gh-comment-id:2510226639 --> @IzzySoft commented on GitHub (Dec 1, 2024): OK, found the culprit and fixed it™ – err, **Fay** found the culprit and let me fix it :wink: git checkout 3ec547802b8a33851512b25e820b841937b25772^ -- _locales/zh_CN/messages.json before building (to get rid of that diff), then reproducible-apk-tools/inplace-fix.py --internal --zipalign --page-size 4 fix-files … with a `sed` for the 2 `*.js` files. Floccus v5.4.0 is now marked RB. I forgot to put a note into the recipe as we might need to revert those changes for the next release; waiting for what @marcelklehr comes up on the sentry part (and hopefully does not build from a dirty tree again :stuck_out_tongue_winking_eye:).
Author
Owner

@obfusk commented on GitHub (Dec 1, 2024):

  • Those IDs changed because they are a hash of the input files. So with the fix for the messages.json they should have been identical again so the seds didn't actually modify anything.
  • The NO_SUPPORTED_VCS_FOUND is because it only checks for .git/HEAD in the root project dir, which is not the root dir of the repo in this case.
<!-- gh-comment-id:2510234514 --> @obfusk commented on GitHub (Dec 1, 2024): - Those IDs changed because they are a hash of the input files. So with the fix for the `messages.json` they should have been identical again so the `sed`s didn't actually modify anything. - The `NO_SUPPORTED_VCS_FOUND` is because it only checks for `.git/HEAD` in the root project dir, which is not the root dir of the repo in this case.
Author
Owner

@IzzySoft commented on GitHub (Dec 8, 2024):

Oof. Afraid v5.4.1 cannot even be built now:

+ npm install
npm warn deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm warn deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
npm warn deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
npm warn deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm warn deprecated request-promise-native@1.0.9: request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142
npm warn deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm warn deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm warn deprecated har-validator@5.1.5: this library is no longer supported
npm warn deprecated eslint-loader@4.0.2: This loader has been deprecated. Please use eslint-webpack-plugin
npm warn deprecated consolidate@0.15.1: Please upgrade to consolidate v1.0.0+ as it has been modernized with several long-awaited fixes implemented. Maintenance is supported by Forward Email at https://forwardemail.net ; follow/watch https://github.com/ladjs/consolidate for updates and release changelog
npm warn deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
npm warn deprecated babel-eslint@10.1.0: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.
npm warn deprecated vue@2.7.16: Vue 2 has reached EOL and is no longer actively maintained. See https://v2.vuejs.org/eol/ for more details.
npm warn deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm warn deprecated glob@7.1.6: Glob versions prior to v9 are no longer supported
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm warn deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm warn deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
npm error code E404
npm error 404 Not Found - GET https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz - Not found
npm error 404
npm error 404  '@babel/code-frame@https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz' is not in this registry.
npm error 404
npm error 404 Note that you can also install from a
npm error 404 tarball, folder, http url, or git url.
npm error A complete log of this run can be found in: /build/.npm/_logs/2024-12-08T18_57_50_113Z-debug-0.log
<!-- gh-comment-id:2526331435 --> @IzzySoft commented on GitHub (Dec 8, 2024): Oof. Afraid v5.4.1 cannot even be built now: ``` + npm install npm warn deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated npm warn deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated npm warn deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated npm warn deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated npm warn deprecated request-promise-native@1.0.9: request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142 npm warn deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142 npm warn deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. npm warn deprecated har-validator@5.1.5: this library is no longer supported npm warn deprecated eslint-loader@4.0.2: This loader has been deprecated. Please use eslint-webpack-plugin npm warn deprecated consolidate@0.15.1: Please upgrade to consolidate v1.0.0+ as it has been modernized with several long-awaited fixes implemented. Maintenance is supported by Forward Email at https://forwardemail.net ; follow/watch https://github.com/ladjs/consolidate for updates and release changelog npm warn deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies npm warn deprecated babel-eslint@10.1.0: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates. npm warn deprecated vue@2.7.16: Vue 2 has reached EOL and is no longer actively maintained. See https://v2.vuejs.org/eol/ for more details. npm warn deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. npm warn deprecated glob@7.1.6: Glob versions prior to v9 are no longer supported npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported npm warn deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported npm warn deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js. npm error code E404 npm error 404 Not Found - GET https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz - Not found npm error 404 npm error 404 '@babel/code-frame@https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz' is not in this registry. npm error 404 npm error 404 Note that you can also install from a npm error 404 tarball, folder, http url, or git url. npm error A complete log of this run can be found in: /build/.npm/_logs/2024-12-08T18_57_50_113Z-debug-0.log ```
Author
Owner

@obfusk commented on GitHub (Dec 8, 2024):

Bad timing, probably: npm was having some issues and returning 404s during scheduled maintenance today https://status.npmjs.org/incidents/px35z3dmcjgm

<!-- gh-comment-id:2526412750 --> @obfusk commented on GitHub (Dec 8, 2024): Bad timing, probably: npm was having some issues and returning 404s during scheduled maintenance today https://status.npmjs.org/incidents/px35z3dmcjgm
Author
Owner

@IzzySoft commented on GitHub (Dec 9, 2024):

Oof, indeed. Just tried again and…

BUILD SUCCESSFUL in 2m 42s
483 actionable tasks: 483 executed
+ mv app/build/outputs/apk/release/app-release-unsigned.apk /outputs/unsigned.apk

--- END BUILD LOG ---
Keeping '7016586ea16f963a9104a6e86ada18c59d077983a721c2c8dd5926a026f0355d-org.handmadeideas.floccus-v5.4.1-upstream.apk'...
Keeping 'f977ea976c4b89a9443fa0f05a4e8af53d9669334923071d8beac10f31b310dd-org.handmadeideas.floccus-v5.4.1-unsigned.apk'...
Reproducible: True

Thanks Fay! Guess we can close this issue then?

<!-- gh-comment-id:2526531271 --> @IzzySoft commented on GitHub (Dec 9, 2024): Oof, indeed. Just tried again and… ``` BUILD SUCCESSFUL in 2m 42s 483 actionable tasks: 483 executed + mv app/build/outputs/apk/release/app-release-unsigned.apk /outputs/unsigned.apk --- END BUILD LOG --- Keeping '7016586ea16f963a9104a6e86ada18c59d077983a721c2c8dd5926a026f0355d-org.handmadeideas.floccus-v5.4.1-upstream.apk'... Keeping 'f977ea976c4b89a9443fa0f05a4e8af53d9669334923071d8beac10f31b310dd-org.handmadeideas.floccus-v5.4.1-unsigned.apk'... Reproducible: True ``` Thanks Fay! Guess we can close this issue then?
Author
Owner

@marcelklehr commented on GitHub (Dec 9, 2024):

Thanks folks!

<!-- gh-comment-id:2527166778 --> @marcelklehr commented on GitHub (Dec 9, 2024): Thanks folks!
Author
Owner

@github-actions[bot] commented on GitHub (Dec 10, 2025):

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

<!-- gh-comment-id:3634858450 --> @github-actions[bot] commented on GitHub (Dec 10, 2025): This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/floccus#1130
No description provided.