Change Log¶
Version 0.1.3¶
2025-11-18
- New: Expose more useful public constructors and factory methods for core data models.
- New: Implement
equals()andhashCode()for core data models.
Version 0.1.2¶
2025-08-21
- New: Allow resource files to be relocated using shading rules.
- Update: Make packaging tasks compatible with Gradle configuration caching.
- Update: Allow class files to be deleted via packaging option rules only when it ends with
.class. - Fix: Ensure that internal/inline classes are properly relocated by shading rules.
- Fix: Correct the format of
public.txtfiles written to AAR files.
Version 0.1.1¶
2025-03-27
- Fix: Update Gradle attributes on incoming/outgoing artifact configurations.
Version 0.1.0¶
2025-02-19
- New: Create embedTree configurations to allow consumers to embed an entire dependency tree into a merged artifact.
- New: Apply shading rules to
ServiceLoaderprovider configuration files. - New: Apply shading rules to
.kotlin_modulefiles. - Update: Allow aaraar artifact to be used as dependency of other projects.
- Fix: Resource exclusions should not apply to class files.
Version 0.0.18¶
2024-12-11
- Update: Set the
org.gradle.jvm.environmentcapability on embed configurations. - Update: Improvements to
api.jargeneration:- Expose Kotlin
@Metadataannotation property. - Automatically update Kotlin metadata when member changes.
Classpath.get()returns a virtual definition if not found.
- Expose Kotlin
- Fix: Android resources from embedded dependencies could not be resolved.
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
Classpathand related classes to expose only immutable methods. - Fix: Avoid overwriting modifiers from source classes when generating
api.jarfiles.
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
packagingconfiguration when merging and packaging Android projects. - Update: Changes to
api.jargeneration: - 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.jargeneration by providing anApiJarProcessor.Factory.Noneby default. - Update:
api.jargeneration 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.jarin 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
keepMetaFilesconfiguration 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.aaraarplugin can be applied to Java or Kotlin libraries that produce ajarfile instead. - Configuration is also done through the same
aaraarGradle extension. - See publishing guide for details on how to publish embedded
jarfiles.
- 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
aaraarextension:
- 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.excludesrules 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.