jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Parvulescu (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-3842) Adjust package export declarations
Date Tue, 19 Jan 2016 09:49:39 GMT

    [ https://issues.apache.org/jira/browse/OAK-3842?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15106515#comment-15106515
] 

Alex Parvulescu commented on OAK-3842:
--------------------------------------

bq. Just spoke to Thomas Mueller. He suggests to remove all package export declarations for
o.a.j.o.plugins.index and sub-packages.
Will OAK-3366 still work after this change? the proposed fix was to add a hard reference to
a specific type of _ IndexEditorProvider_, which we did [0], so there are OSGi services that
depend on this package.



[0] https://github.com/apache/jackrabbit-oak/blob/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManager.java#L61

> Adjust package export declarations 
> -----------------------------------
>
>                 Key: OAK-3842
>                 URL: https://issues.apache.org/jira/browse/OAK-3842
>             Project: Jackrabbit Oak
>          Issue Type: Task
>            Reporter: Michael Dürig
>            Assignee: Michael Dürig
>            Priority: Blocker
>              Labels: api, modularization, technical_debt
>             Fix For: 1.4
>
>
> We need to adjust the package export declarations such that they become manageable with
our branch / release model. 
> See http://markmail.org/thread/5g3viq5pwtdryapr for discussion.
> I propose to remove package export declarations from all packages that we don't consider
public API / SPI beyond Oak itself. This would allow us to evolve Oak internal stuff (e.g.
things used across Oak modules) freely without having to worry about merges to branches messing
up semantic versioning. OTOH it would force us to keep externally facing public API / SPI
reasonably stable also across the branches. Furthermore such an approach would send the right
signal to Oak API / SPI consumers regarding the stability assumptions they can make. 
> An external API / SPI having a (transitive) dependency on internals might be troublesome.
In doubt I would remove the export version here until we can make reasonable guarantees (either
through decoupling the code or stabilising the dependencies). 
> I would start digging through the export version and prepare an initial proposal for
further discussion. 
> /cc [~frm], [~chetanm], [~mmarth]



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message