On 03/01/13 13:24, Fabian Christ wrote:
Hi,

just two things that come to my mind from the experiences we made with
importing the first code for Stanbol from the IKS project.

Do you know of the use of any third party libs that are either

a) not available via Maven central
b) licensed under terms that are not compatible with the Apache License,
2.0? (e.g. GPL)

For a): If libs are not available in Maven central we need to create
appropriate "-deps" packages that contain everything needed for the build.
Source releases of Marmotta are not allowed to include any binaries, like
JAR files. This can be a struggling point for the build process.

For b): Dealing with licensing issues can slow down the release process
tremendously. Knowing of modules which may by problematic before importing
them could make things easier.

Best,
  - Fabian

I completely agree with Fabian that sorting licenses can slow down the release. It's not something to leave until everything else is ready.

An Apache release is source code, normally a zip file. All this binary stuff for maven is "just" convenient extras (and what the vast majority of users actually use :-)

Looking at other projects can be very helpful. Pick a project - look in their source code repository. NOTICE and LICENSE are easy to find - they should be at the top of trunk.

The NOTICE file should be as short as possible, and include copyright notices. The LICENSE file should have copies of all licenses.

For each dependency (binary), the licensing needs to be checked. Usually, it's one of the common licenses and it's quite easy.

   http://www.apache.org/legal/3party.html

You do need to be careful of variations (e.g. modified license text - we had a few in Jena which were at first glance BSD-style but actually had been rewritten a bit).

If any binaries produced repackage (redistribute) other systems, there will need to be stuff done for that. For example, Jena redistributes Xerces in the all-in-one zip download, so even though Xerces is ASL there are some recursive copyrights to put in the NOTICE for the zip download which are not there in the jena jar or source-release which themselves use xerces by-POM but don't redistribute it.

For each piece of incorporated source code, both copyright and license need to be noted. My experience is that this takes a bit more chasing down than binaries.

All this legal stuff isn't zero effect but it's not as bad as it's sometimes painted. Apache is just quite careful - indeed, having done the legal side of a project, you'll look at some other places and tut a bit!

        Andy



2013/1/3 Sergio Fernández <[email protected]>

Hi,

Now that INFRA-5610 [1] has been solved, before work over MARMOTTA-2 [2],
in the following days I'd like to discuss with all people what code we'll
import into Marmotta.

The idea is to have a milestone releasing LMF 2.4 this month, and then
move to Marmotta. But, as we asserted in the proposal [3], the whole LMF
will not be contributed to Marmotta; to focus the project, actually only
those parts that make up the "Linked Data Platform", that includes the
following modules:

* lmf-core
* lmf-sparql
* lmf-cache
* lmf-reasoner
* lmf-scheduler
* lmf-security
* lmf-ldpath
* lmf-versioning
* lmf-webapp

There are some generic libraries we may also include:

* ldpath
* sesame-tools

Plus some installation infrastructure:

* lmf-installer
* lmf-splash

Around that there are some Maven plugins:

* lmf-maven-plugin
* buildinfo-maven-plugin
* refpack-maven-plugin

And archetypes:

* lmf-archetype-module
* lmf-archetype-webapp

On top of that, the lmf client library is currently implemented in
different languages:

* lmf-client-java
* lmf-client-php
* lmf-client-js

Besides some refactorizations and reorganization, I consider all those
artifacts relevant for Marmotta.

For instance, all the media stuff would be out of the importation,
including:

* lmf-search
* lmf-social
* lmf-classifier
* lmf-stanbol

But I have doubts regarding some third-party tools:

* SKOSjs
* Module for Drupal
* Extension for Google/Open Refine


What do you think?

Cheers,


[1] 
https://issues.apache.org/**jira/browse/INFRA-5610<https://issues.apache.org/jira/browse/INFRA-5610>
[2] 
https://issues.apache.org/**jira/browse/MARMOTTA-2<https://issues.apache.org/jira/browse/MARMOTTA-2>
[3] 
http://wiki.apache.org/**incubator/MarmottaProposal#**Initial_Source<http://wiki.apache.org/incubator/MarmottaProposal#Initial_Source>

--
Sergio Fernández





Reply via email to