Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Aether/New and Noteworthy"

(New page: == 0.9.0.M1 (2012-10-03) == This is the first release of Aether since its migration to the Eclipse Foundation. As such the items listed below indicate changes compared to the previous Son...)
 
(Added link to bugzilla query for 0.9.0.M1)
Line 7: Line 7:
 
so this milestone release is not of direct interest to users seeking access to Maven repositories. Early adopters interested
 
so this milestone release is not of direct interest to users seeking access to Maven repositories. Early adopters interested
 
in evaluating the new codebase can find an updated <tt>maven-aether-provider</tt> at https://github.com/bentmann/maven-3.
 
in evaluating the new codebase can find an updated <tt>maven-aether-provider</tt> at https://github.com/bentmann/maven-3.
 +
 +
See our issue tracker for a [https://bugs.eclipse.org/bugs/buglist.cgi?resolution=FIXED&query_format=advanced&product=Aether&target_milestone=0.9.0.M1 list of fixed issues].
  
 
=== Namespace org.eclipse.aether ===
 
=== Namespace org.eclipse.aether ===

Revision as of 17:34, 3 October 2012

0.9.0.M1 (2012-10-03)

This is the first release of Aether since its migration to the Eclipse Foundation. As such the items listed below indicate changes compared to the previous Sonatype Aether codebase.

Note: There is currently no released version of the maven-aether-provider that builds upon this release of Aether Core so this milestone release is not of direct interest to users seeking access to Maven repositories. Early adopters interested in evaluating the new codebase can find an updated maven-aether-provider at https://github.com/bentmann/maven-3.

See our issue tracker for a list of fixed issues.

Namespace org.eclipse.aether

All code has been moved into the package org.eclipse.aether and sub packages. Likewise, the group ID of the artifacts deployed to the Central Repository has changed to org.eclipse.aether.

Clean up of API

Besides the new package namespace, the API has been changed in some places to ease usage and maintenance. The list below is not exhaustive but focuses on changes where updates to client code are not obvious:

  • TransferEvent.RequestType.GET_EXISTENCE was introduced to allow transfer listeners to distinguish between actual downloads and mere existence checks.
  • FilteredRepositorySystemSession was removed and its usages should be replaced with DefaultRepositorySystemSession and its copy constructor.
  • The properties transferErrorCachingEnabled and notFoundCachingEnabled of RepositorySystemSession have been replaced by ResolutionErrorPolicy, SimpleResolutionErrorPolicy provides a stock implementation.
  • The properties ignoreMissingArtifactDescriptor and ignoreInvalidArtifactDescriptor of RepositorySystemSession have been replaced by ArtifactDescriptorPolicy, SimpleArtifactDescriptorPolicy provides a stock implementation.
  • Authentication was remodeled into an interface, the new AuthenticationBuilder provides a way to obtain a stock implementation.
  • RemoteRepository instances have been made immutable, RemoteRepository.Builder assists in their instantiation.

OSGi-enabled Manifests

Thanks to a contributor, the JAR manifests have been extended with attributes to support use of Aether in an OSGi container. Providing an update site for Aether is an unresolved todo in our issue tracker, contributions welcome.

Support for JSR-330

The components making up the implemenation of Aether have been enriched with javax.inject annotations to support wiring by a JSR-330 compliant container. The class AetherModule helps to set up bindings for the popular Guice container. Likewise, the JARs are equipped with Sisu index files to support efficient component discovery when using Sisu.

Back to the top