[
https://issues.apache.org/jira/browse/ARIES-1387?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14724491#comment-14724491
]
John Ross commented on ARIES-1387:
----------------------------------
Okay, thanks. I just wanted to be sure that committing this pull request did
not imply anything unintended. The classes would remain private to the
subsystem-core bundle, would not be exported, and would not be considered to be
API. Having said that, it seems unlikely we would encounter a situation that
would require abandoning the equals/hashCode implementations.
The new functionality being introduced here is a non-identity based
equals/hashCode implementation for the header related classes. If not already
present, it would be helpful to have some tests to not only ensure a proper
implementation, but also to prevent an inadvertent regression.
> Make Subsystem header items order reproducible
> ----------------------------------------------
>
> Key: ARIES-1387
> URL: https://issues.apache.org/jira/browse/ARIES-1387
> Project: Aries
> Issue Type: Improvement
> Components: Subsystem
> Reporter: Cristiano Gavião
>
> Currently the org.apache.aries.subsystem.core.archive.SubsystemContentHeader
> class (line 210) and other headers classes uses a HashSet in order to hold
> its clauses.
> HashSet doesn't ensure the order of its items and then its impossible to have
> a reproducible build of any manifest file. As the SubsystemManifest class
> doesn't provide a equals() method, we can't compare a generated manifest file
> with any template in a test, it will fail.
> The propose it to change the used HashSet for the LinkedHashSet class.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)