Control: tags 1117953 + pending Dear maintainer,
I've prepared an NMU for apktool (versioned as 2.7.0+dfsg-7.1) and uploaded it to DELAYED/15. Please feel free to tell me if I should cancel it. cu Adrian
diffstat for apktool-2.7.0+dfsg apktool-2.7.0+dfsg changelog | 9 +++++++++ control | 4 ++-- maven.rules | 2 +- patches/build.patch | 2 +- patches/series | 1 + patches/snakeyaml2.patch | 40 ++++++++++++++++++++++++++++++++++++++++ 6 files changed, 54 insertions(+), 4 deletions(-) diff -Nru apktool-2.7.0+dfsg/debian/changelog apktool-2.7.0+dfsg/debian/changelog --- apktool-2.7.0+dfsg/debian/changelog 2024-01-10 21:08:30.000000000 +0200 +++ apktool-2.7.0+dfsg/debian/changelog 2025-12-01 17:07:48.000000000 +0200 @@ -1,3 +1,12 @@ +apktool (2.7.0+dfsg-7.1) unstable; urgency=medium + + * Non-maintainer upload. + + [ Pierre Gruet ] + * Fix building against snakeyaml 2.x. (Closes: #1117953) + + -- Adrian Bunk <[email protected]> Mon, 01 Dec 2025 17:07:48 +0200 + apktool (2.7.0+dfsg-7) unstable; urgency=medium * Team upload. diff -Nru apktool-2.7.0+dfsg/debian/control apktool-2.7.0+dfsg/debian/control --- apktool-2.7.0+dfsg/debian/control 2024-01-10 18:41:24.000000000 +0200 +++ apktool-2.7.0+dfsg/debian/control 2025-12-01 17:07:40.000000000 +0200 @@ -21,7 +21,7 @@ libstringtemplate-java, libxmlunit-java, libxpp3-java, - libyaml-snake-java, + libyaml-snake-java (>= 2.5+ds), proguard-cli Standards-Version: 4.5.1 Rules-Requires-Root: no @@ -45,7 +45,7 @@ libstringtemplate-java, libxmlunit-java, libxpp3-java, - libyaml-snake-java, + libyaml-snake-java (>= 2.5+ds), ${misc:Depends} Recommends: ${apktool:Recommends} Description: tool for reverse engineering Android apk files diff -Nru apktool-2.7.0+dfsg/debian/maven.rules apktool-2.7.0+dfsg/debian/maven.rules --- apktool-2.7.0+dfsg/debian/maven.rules 2024-01-10 18:41:24.000000000 +0200 +++ apktool-2.7.0+dfsg/debian/maven.rules 2025-12-01 17:07:40.000000000 +0200 @@ -1,6 +1,6 @@ junit junit * s/.*/4.x/ * * -org.yaml snakeyaml * s/.*/1.x/ * * +org.yaml snakeyaml * s/.*/2.x/ * * org.apache.commons commons-lang3 * s/.*/debian/ * * org.antlr antlr * s/.*/3.x/ * * org.antlr antlr-runtime * s/.*/3.x/ * * diff -Nru apktool-2.7.0+dfsg/debian/patches/build.patch apktool-2.7.0+dfsg/debian/patches/build.patch --- apktool-2.7.0+dfsg/debian/patches/build.patch 2024-01-10 18:41:24.000000000 +0200 +++ apktool-2.7.0+dfsg/debian/patches/build.patch 2025-12-01 17:07:40.000000000 +0200 @@ -58,7 +58,7 @@ - smali : 'com.github.iBotPeaches.smali:smali:403e90375e', + smali : 'org.smali:smali:debian', + proguard_gradle: 'net.sf.proguard:proguard-gradle:debian', -+ snakeyaml : 'org.yaml:snakeyaml:1.x', ++ snakeyaml : 'org.yaml:snakeyaml:2.x', xmlpull : 'xpp3:xpp3:1.1.4c', xmlunit : 'xmlunit:xmlunit:1.6', ] diff -Nru apktool-2.7.0+dfsg/debian/patches/series apktool-2.7.0+dfsg/debian/patches/series --- apktool-2.7.0+dfsg/debian/patches/series 2024-01-10 21:08:30.000000000 +0200 +++ apktool-2.7.0+dfsg/debian/patches/series 2025-12-01 17:07:40.000000000 +0200 @@ -3,3 +3,4 @@ use_system_aapt.patch build.patch CVE-2024-21633-Prevent-arbitrary-file-writes-with-malicious-resourc.patch +snakeyaml2.patch diff -Nru apktool-2.7.0+dfsg/debian/patches/snakeyaml2.patch apktool-2.7.0+dfsg/debian/patches/snakeyaml2.patch --- apktool-2.7.0+dfsg/debian/patches/snakeyaml2.patch 1970-01-01 02:00:00.000000000 +0200 +++ apktool-2.7.0+dfsg/debian/patches/snakeyaml2.patch 2025-12-01 17:07:40.000000000 +0200 @@ -0,0 +1,40 @@ +Description: constructing Constructor and Representer derivatives with default + LoaderOptions and DumperOptions to comply with the interface of snakeyaml 2.x +Author: Pierre Gruet <[email protected]> +Forwarded: no +Last-Update: 2025-10-12 + +--- a/brut.apktool/apktool-lib/src/main/java/brut/androlib/meta/ClassSafeConstructor.java ++++ b/brut.apktool/apktool-lib/src/main/java/brut/androlib/meta/ClassSafeConstructor.java +@@ -16,6 +16,7 @@ + */ + package brut.androlib.meta; + ++import org.yaml.snakeyaml.LoaderOptions; + import org.yaml.snakeyaml.constructor.AbstractConstruct; + import org.yaml.snakeyaml.constructor.Constructor; + import org.yaml.snakeyaml.error.YAMLException; +@@ -29,6 +30,7 @@ + protected final List<Class<?>> allowableClasses = new ArrayList<>(); + + public ClassSafeConstructor() { ++ super(new LoaderOptions()); + this.yamlConstructors.put(Tag.STR, new ConstructStringEx()); + + this.allowableClasses.add(MetaInfo.class); +--- a/brut.apktool/apktool-lib/src/main/java/brut/androlib/meta/EscapedStringRepresenter.java ++++ b/brut.apktool/apktool-lib/src/main/java/brut/androlib/meta/EscapedStringRepresenter.java +@@ -16,11 +16,13 @@ + */ + package brut.androlib.meta; + ++import org.yaml.snakeyaml.DumperOptions; + import org.yaml.snakeyaml.nodes.Node; + import org.yaml.snakeyaml.representer.Representer; + + public class EscapedStringRepresenter extends Representer { + public EscapedStringRepresenter() { ++ super(new DumperOptions()); + RepresentStringEx representStringEx = new RepresentStringEx(); + multiRepresenters.put(String.class, representStringEx); + representers.put(String.class, representStringEx);

