Change Log¶
Version 0.0.17¶
2024-08-10
- New: Support for adding post-processors for custom operations on the merged archive.
- See packaging guide for info on configuration.
- Update: Extract interfaces for
Classpath
and related classes to expose only immutable methods. - Fix: Avoid overwriting modifiers from source classes when generating
api.jar
files.
Version 0.0.16¶
2024-08-02
- Update: Modularize Gradle packaging code to allow for reuse in other projects.
- Fix: Avoid exception when combining packaging option rules for Android projects.
Version 0.0.15¶
2024-06-24
- New: Support custom shading strategies in core utilities module.
- New: Support for the entire
packaging
configuration when merging and packaging Android projects. - Update: Changes to
api.jar
generation: - New: Support for reading and writing the class file version.
- Note: Adding/modifying enum classes is not supported, and will be ignored.
Version 0.0.14¶
2024-03-10
- Update: Shading configuration syntax now supports applying one rule to multiple scopes.
- Update: Allows disabling
api.jar
generation by providing anApiJarProcessor.Factory.None
by default. - Update:
api.jar
generation now allows reading and writing annotations that are not visible via reflection.
Version 0.0.13¶
2024-02-27
- New: Support for creating a custom
api.jar
in an AAR file.- This optional jar is used by the IDE as the autocomplete source, as well as what consumers compile against.
- Does not affect which classes and class members are executable at runtime.
- Provides an integration point for complete customization to add/remove classes, rename methods, and more.
- See packaging guide for info on configuration.
Version 0.0.12¶
2024-02-07
- New: Support for limiting shading rules to a particular scope.
- See shading guide for info on configuration and syntax.
- New: Added
addPrefix()
shorthand method for shading to add a prefix to each class package.
Version 0.0.11¶
2024-02-01
- Update: The
keepMetaFiles
configuration option now defaults totrue
. - Fix: Resolve issue opening/creating archive files in Windows.
Version 0.0.10¶
2023-09-02
- New: Generate Dokka documentation.
- New: Hosted setup guide at https://aaraar.christian.sh.
- New: Support for Java projects!
- The same
sh.christian.aaraar
plugin can be applied to Java or Kotlin libraries that produce ajar
file instead. - Configuration is also done through the same
aaraar
Gradle extension. - See publishing guide for details on how to publish embedded
jar
files.
- The same
Version 0.0.9¶
2023-08-10
- New: Support for merging navigation.json file.
- New: Preserve aar-metadata.properties file.
- Fix: Continue using APIs that are compatible with AGP7 and Java 11.
Version 0.0.8¶
2023-06-01
- New: Run aaraar packaging during assemble pipeline.
- Developers can choose which variants enable aaraar packaging using the existing
aaraar
extension:
- Developers can choose which variants enable aaraar packaging using the existing
- Update: Support for consuming Gradle Module Metadata.
- Update: Support for Android Gradle Plugin 8.
Version 0.0.7¶
2023-03-29
- Fix: Add missing "usage" attribute to configuration.
Version 0.0.6¶
2023-03-13
- Fix: Capture missing API element modules.
Version 0.0.5¶
2023-02-28
- New: Respect
packagingOptions.resources.excludes
rules configured for project.- If any file globs are specified to be excluded, those files should always be deleted from the packaged aar.
Version 0.0.4¶
2023-02-10
- Update: Flatten and merge all library dependency jars into single
classes.jar
. - Update: Make core data models have internal constructors but public property access.
- Fix: Add Usage attribute to aar publishing configuration.
Version 0.0.3¶
2023-02-03
- Fix: Support for compiling resources with custom xmlns namespaces.
Version 0.0.2¶
2023-01-29
- New: Updated release pipeline and CI builds.
- Fix: Create extension as soon as plugin is applied.
Version 0.0.1¶
2023-01-24
- Initial release.