Skip to content

v0.1.8

Choose a tag to compare

@mercyblitz mercyblitz released this 04 Mar 13:35
· 167 commits to release since this release
32b402d

What's Changed

Core Module

  • Added a new utility class Iterators for comparing two Iterator instances for equality, and refactored ReversedDeque.equals to use this utility for cleaner code.

  • Introduced addIfAbsent method in ListUtils to add an element only if it does not already exist in the list.

  • Added trace-level logging to several resource resolver classes (StreamArtifactResourceResolver, ManifestArtifactResourceResolver, and ExecutorUtils) to provide more detailed diagnostics when resources or metadata cannot be resolved or when executor services are shut down.

  • Refactored DelegatingBlockingQueue to implement DelegatingWrapper, consistently use this.delegate, and unwrap delegates if possible for cleaner delegation and wrapper handling.

  • Simplified CustomizedThreadFactory by removing the use of SecurityManager and always using the current thread's group.

  • Refactored AbstractEventDispatcher for improved error handling and logging, including using assertNotNull for constructor validation, adding a logger instance, and simplifying listener loading with better exception handling.

Annotation Processor Refactoring

  • Moved and refactored ConfigurationPropertyJSONElementVisitor for better code organization, improved source attribute handling, and updated imports to use shared language model utilities.

  • Enhanced ConfigurationPropertyAnnotationProcessor with better resource constant usage and added a toJSON() serialization method.

  • Refactored imports throughout the annotation processor to use utility classes from the new microsphere-lang-model module, replacing previous local utilities. (ConfigurationPropertyAnnotationProcessor.java, FilerProcessor.java, ResourceProcessor.java)

Documentation Improvements

  • Expanded the README.md to include new modules (microsphere-java-annotations, microsphere-java-model, microsphere-jdk-tools, microsphere-java-test), updated module descriptions, and added links to their respective JavaDocs.

Build and Dependency Updates

  • Updated GitHub Actions workflows to use the latest versions of actions/checkout and actions/setup-java (v5), switched Maven invocations to use the wrapper script (./mvnw), and added JVM options for test execution. (.github/workflows/maven-build.yml, .github/workflows/maven-publish.yml)

  • Updated the Maven wrapper to version 3.9.9 and switched the distribution URL to an Aliyun mirror for potentially faster downloads. Also, changed the wrapper configuration to use only the script distribution. (.mvn/wrapper/maven-wrapper.properties)

Dependency Management

  • Removed unused properties for JAX-RS and JAX-WS versions from the annotation processor's pom.xml, and added new dependencies on microsphere-lang-model, microsphere-jdk-tools, and microsphere-java-test to support enhanced annotation processing and testing.

  • Updated test dependencies to use fixed versions instead of property references, simplifying dependency management.

Full Changelog: 0.1.7...0.1.8