You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by Radu Cotescu <ra...@apache.org> on 2015/03/24 10:06:10 UTC

breaking changes in JCR Contentloader 2.2.0

Hello,

SLING-4223 [0] and its related issues introduced major API and
functionality changes for the o.a.s.jcr.contentloader bundle. The exported
API increased from 0.1 to 1.0.0 and ignoring content importers doesn't work
anymore.

A major shift in API version is not really warranted. We should strive to
propose backwards compatible API, if possible, hence why I'm suggesting to
increase the API version to 0.2 instead of 1.0.0. This makes sure that
systems where we'd need an upgraded contentloader don't have to also
install an updated o.a.s.servlets.post bundle:

org.osgi.framework.BundleException: Unresolved constraint in bundle
org.apache.sling.jcr.jackrabbit.usermanager [55]: Unable to resolve 55.0:
missing requirement [55.0] osgi.wiring.package;
(&(osgi.wiring.package=org.apache.sling.servlets.post)(version>=2.1.0)(!(version>=3.0.0)))
[caused by: Unable to resolve 112.0: missing requirement [112.0]
osgi.wiring.package;
(&(osgi.wiring.package=org.apache.sling.jcr.contentloader)(version>=0.1.0)(!(version>=1.0.0)))]


Also we must make sure that we don't break existing functionality -
ignoring content loaders for certain files is a very important feature.
Currently we cannot, for example, import XML files into the repo as they're
all considered content descriptors.

I've created SLING-4537 [1] and SLING-4538 [2] to handle these problems.

Thanks,
Radu

[0] - https://issues.apache.org/jira/browse/SLING-4223
[1] - https://issues.apache.org/jira/browse/SLING-4537
[2] - https://issues.apache.org/jira/browse/SLING-4538

Re: breaking changes in JCR Contentloader 2.2.0

Posted by Tomek Rękawek <to...@cognifide.com>.
Hi Radu,

On Tue, Mar 24, 2015 at 10:06 AM, Radu Cotescu <ra...@apache.org> wrote:
>
> SLING-4223 [0] and its related issues introduced major API and
> functionality changes for the o.a.s.jcr.contentloader bundle. The exported
> API increased from 0.1 to 1.0.0 and ignoring content importers doesn't work
> anymore.
>

The SLING-4223 indeed introduces some API changes, but they are
backwards-compatbile. The exported package version has been set to 1.0.0,
but it was little excessive. Now it exports the API with 0.2 version -
thanks for your suggestion!

Also we must make sure that we don't break existing functionality -
> ignoring content loaders for certain files is a very important feature.
> Currently we cannot, for example, import XML files into the repo as they're
> all considered content descriptors.
>

Sorry for that, it was not a design decision but a bug. I committed a patch
- could you take a look if it works as intented?

Regards,
Tomek

-- 
Tomek Rękawek
Senior Software Engineer

Cognifide Polska Sp. z o.o.
skype: trekawek

www.cognifide.com