All Versions
36
Latest Version
Avg Release Cycle
202 days
Latest Release
74 days ago

Changelog History
Page 1

  • v2.10.0

    May 22, 2020

    ➕ Added

    • ➕ Added support for invokedynamic instructions to YShrink
    • ➕ Added support for default methods in interfaces to YShrink
    • ➕ Added more documentation to YShrink for future maintenance

    🔄 Changed

    • 🚀 Use mkdocs instead of Jekyll. Bundle docs in the upcoming releases.
    • 👌 Support ASM7 and Java 13 in both YShrink and YGuard

    🛠 Fixed

    • 👉 Use a empty manifest in JarWriter where the shrinker would previously crash when no manifest was present
    • 🏗 Use Gradle wrapper with Gradle version 5.6.4 for reproducible builds
  • v2.9.2

    December 09, 2019
  • v2.9.1

    November 18, 2019
  • v2.9.0

    October 17, 2019

    🔄 Changed

    • 👷 Replaced legacy build system with Gradle.
    • ➕ Added retroguard dependency (LGPL-licensed)
  • v2.8.0

    October 02, 2019

    🔄 Changed

    • Replaced y.base.Edge, y.base.Node and y.base.Graph with a custom wrapper around Guava
    • ✂ Removed parts licensed under LGPL into a dedicated library, which is linked statically.
    • Relicensed the project under MIT
  • v2.7.2

    September 26, 2019

    🛠 Fixed

    • 🛠 Fixed UnsupportedOperationException that occurred for Java 11 class files when excluding classes from obfuscation using the extends or implements attributes of the rename.keep.class element in the yGuard ANT task.
    • 🛠 Fixed yGuard's language-conformity mode illegal to no longer produce unqualified names that contain dots or spaces.
  • v2.7.1

    February 26, 2019

    ➕ Added

    • ➕ Added support for the MethodParameters attribute, which was introduced with the Java 8 .class file format.

    🛠 Fixed

    • 🛠 Fixed ClassCastException that occurred when obfuscating Java 11 class files with String concatentation.
    • 🛠 Fixed IllegalArgumentException that occurred when excluding classes from obfuscation using the extends or implements attributes of the rename.keep.class element in the yGuard ANT task.
  • v2.7

    February 05, 2019

    ➕ Added

    • ➕ Added basic Java 11 class file support.
    • ➕ Added Java 9 and Java 10 class file support.
    • ➕ Added support for stacktraces with module prefixes.
    • ➕ Added support for stacktraces with obfuscation prefixes.

    🔄 Changed

    • 👌 Improved translation of overloaded methods.
  • v2.6

    June 12, 2017

    ➕ Added

    • ➕ Added support for Java 8 Type Annotations.
    • The implements attribute now considers types in <externalclasses> as well when determining the interfaces implemented by a given class.

    🛠 Fixed

    • 🛠 Fixed incorrect obfuscation of invokedynamic instructions leading to AbstractMethodErrors of class files which had their constant pool entry order permutated for some reason (for example by the JarJar plugin for maven).

    🔄 Changed

    • 🔄 Changed the class file version of the yGuard library, so yGuard can be run with Java 7 again.
  • v2.5.5

    January 27, 2017

    🛠 Fixed

    • 🛠 Fixed IllegalArgumentException: "Invalid fully qualified name (b)" that occurred when referencing or attempting to obfuscate classes that start with a dollar ('$') sign.