Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

COMMONSRDF-80: Bumping Jena version 3.5.0 => 3.9.0 #53

Open
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

ajs6f
Copy link
Member

@ajs6f ajs6f commented Dec 29, 2018

No description provided.

@acoburn
Copy link
Member

acoburn commented Dec 29, 2018

The jena dependency is currently tied to the jena-osgi artifact. I think it would be much better to set the dependency to jena-arq. This way, in a non-OSGi context, dependency resolution is easier to manage; in an OSGi context, a developer would still use the jena-osgi module at deploy time.

@ajs6f
Copy link
Member Author

ajs6f commented Dec 30, 2018

As another Jena committer, I'd be happier with that too. Thoughts? @stain? @wikier? Others?

@stain
Copy link
Member

stain commented Jan 4, 2019

It is not as ideal, as it would make commons-rdf-jena as a Maven package no longer be a sufficient OSGi dependency by itself, as jena-arq is not an OSGi package (for some reason).

But I understand it would make it easier for anyone using the regular jena-arq dependencies together with Commons RDF to avoid duplication (particularly if you get different versions of Jena).

I think for the OSGi dependencies to be calculated correct for commons-rdf-jena we need to then still list jena-osgi as an <optional> dependency.

While the ideal solution would be for jena-arq etc. to be OSGi packages themselves (avoiding need for jena-osgi overall) I'm OK with the above solution for commons-rdf-jena. OSGi users would simply need to ignore jena-arq and add jena-osgi, we can document that.

@stain
Copy link
Member

stain commented Jan 4, 2019

OK, changed to apache-jena-libs in ea5c2ff, also documented jena-osgi use

It seems apache-jena-libs also adds in jena-tdb2 and legacy jena-tdb - perhaps this is a bit excessive? Could you verify @ajs6f - it's what is documented on https://jena.apache.org/download/maven.html so presumably this would help the transitive jena-* all be in the same version, or would we need a <dependencyManagement>?

@acoburn
Copy link
Member

acoburn commented Jan 4, 2019

I believe that only jena-arq is necessary for commons-rdf-jena; as @stain indicates, apache-jena-libs may bring in more transitive dependencies than a user really needs.

FWIW, I have been using commons-rdf-jena in an OSGi context for some time, but I don't rely on maven's dependency resolution for OSGi deployment. Since OSGi package resolution works at the bundle level (rather than based on declared dependencies in a POM file), I simply use the Jena-provided jena-osgi-features for deployment of Jena-related bundles in Karaf. At the same time, for non-OSGi contexts, my build configuration excludes the jena-osgi dependency from commons-rdf-jena and replaces it with jena-arq, which leads to somewhat more complexity than is really needed.

@stain
Copy link
Member

stain commented Jan 4, 2019

Great, would you @acoburn be able to update implementations.md on how to use the jena-osgi-features as an alternative? I'll change to jena-arq which should be sufficient.

@wikier
Copy link
Member

wikier commented Jan 8, 2019

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants