[
https://issues.apache.org/jira/browse/SHIRO-679?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17499091#comment-17499091
]
Jacob Barrett commented on SHIRO-679:
-------------------------------------
I would like to re-open this for merging into the 1.8.x branch.
As many more projects move towards modules this issue can hold them back from
making progress. While this issue was addressed in the 2.x main branch, 2.0.0
doesn't seem to be on the near horizon. I am in the same camp as
[~timothyjward] with regards to concerns that this could be a breaking change.
While it is in a gray area of breaking ABI change, due to the movement of a
symbol to another library, modern dependency management makes this issue pretty
trivial. The only downstream that would be affected is one not using Maven like
dependency management, all others would automatically get transitive runtime
library requirement.
[Apache Geode|http://geode.apache.org], which depends on Shiro, is trying to
get module compliant for upcoming release of Spring Framework 6 that is going
the [full Java 17
treatment|https://spring.io/blog/2021/09/02/a-java-17-and-jakarta-ee-9-baseline-for-spring-framework-6].
We are also considering riding this same ABI compatibility gray area to get to
module support, along with multi-release jars like log4j and other have taken.
> Shiro modules have split packages
> ---------------------------------
>
> Key: SHIRO-679
> URL: https://issues.apache.org/jira/browse/SHIRO-679
> Project: Shiro
> Issue Type: Improvement
> Affects Versions: 1.4.0
> Reporter: Timothy James Ward
> Assignee: Francois Papon
> Priority: Major
> Labels: modules
> Fix For: 2.0.0
>
>
> The Shiro project is split into a number of "modules" which provide OSGi
> metadata, and will likely provide JPMS Module descriptors at some point in
> the future. Both of these module platforms play very badly with "split
> packages" specifically packages that are present with different content
> across more than one module.
> JPMS completely forbids packages from being present in more than one module.
> OSGi is somewhat more permissive than JPMS, in that split packages are only
> problematic if they are "exported" and have different content, however in
> Shiro's case there are no internal packages (all packages are exported).
>
> Shiro contains several such packages, for example `org.apache.shiro` and
> `org.apache.shiro.util` are split with different content across the
> shiro-core and shiro-lang modules. This must be fixed, with each package (in
> its entirety) being hosted in a single module if Shiro is going to be usable
> in a modular Java world.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]