[redland-dev] ANNOUNCEMENT: End of life of Raptor V1. End of support for Raptor V1 in rasqal/librdf.

Dave Beckett dave at dajobe.org
Sun Nov 7 23:47:44 CET 2010


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Raptor V1 was last released in January 2010 and Raptor V2 seems pretty
stable and working.  I am therefore announcing that from early 2011,
Raptor V2 will replace Raptor V1 and be a requirement for Rasqal and librdf.


END OF LIFE TIMELINE

Now
- ---

Raptor V1 last release remains 1.4.21 of 2010-01-30
  (see
http://journal.dajobe.org/journal/posts/2010/01/30/raptor-1421-raptor2-git/
   and http://librdf.org/raptor/NEWS.html#D2010-01-30-V1.4.21 )

Raptor V2 release 2.0.0 will happen "soon".

The next Rasqal release will support Raptor V1 and Raptor V2.

The next librdf release will support Raptor V1 and Raptor V2
(and requires Rasqal built with the same Raptor version).


2011
- ----

The next Rasqal release will support Raptor V2 only.

The next librdf release will support Raptor V2 only
(and require a Rasqal built with Raptor V2).


In the style of open source I've been using for the Redland libraries,
which might be described as "release when it's ready, not release by date",
these dates may slip a little but the intention is that Raptor V2 becomes
the mainline.

I do NOT rule out that there will be another Raptor V1 release but it will
be ONLY for security issues.  It will contain minimal changes and not add
any new features or fix any other type of bug.


DEVELOPER ACTIONS

If you use the Raptor V1 ABI/API directly, you will need to upgrade.  If
you want to write conditional code, that's possible.  The redland librdf
GIT source (or 1.0.12) uses the approach of macros that rewrite V2 into V1
forms and I recommend this way since dropping Raptor V1 support then
amounts to removing the macros.

The Raptor V2 API documentation
  http://librdf.org/raptor/api/
has a detailed section on the changes:
  http://librdf.org/raptor/api/raptor-changes.html
and there is an upgrading document:
  http://librdf.org/raptor/UPGRADING.html
plus it points to a perl script docs/upgrade-script.pl (also in the Raptor
V2 distribution) that automates some of the work (renames mostly) and
leaves markers where a human has to fix.

The Raptor V1 API documentation will remain in a frozen state available at
  http://librdf.org/raptor/api-1.4/


PACKAGER ACTIONS

If you are a packager of the redland libraries, you need to prepare for the
Raptor V1 / Raptor V2 transition which can vary depending on your
distribution's standards.  The two versions share two files: the rapper
binary and the rapper.1 man page.  I do not want to rename them to rapper2
etc. since rapper is a well known utility name in RDF and I want 'rapper'
to provide the latest version.

In the Debian packaging which I maintain, these are already planned to be
in separate packages so that both libraries can be installed and you can
choose the raptor-utils2 package over raptor-utils (V1).

In other distributions where everything is in one package (BSD Ports for
example) you may have to move the rapper/rapper.1 files to the raptor V2
package and create a new raptor1 package without them.
i.e. something like this

Raptor V1 package 1.4.21-X:
  /usr/lib/libraptor1.so.1* ...
  (no /usr/bin/rapper or /usr/share/man/man1/rapper.1 )

Raptor V2 package 2.0.0-1:
   /usr/lib/libraptor2.so.0* ...
   /usr/bin/rapper
   /usr/share/man/man1/rapper.1
 conflicts with older raptor1 packages before 1.4.21-X

The other thing to deal with is that when Rasqal is built against
Raptor V2, it has internal change that mean librdf has to also be built
against rasqal-with-raptor2.  This needs enforcing with packaging
dependencies.

This packaging work can be done/started as soon as Raptor V2 2.0.0 is
released which will be "soon".

Dave
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (Darwin)

iD8DBQFM1yyNQ+ySUE9xlVoRAr/fAKCM3WS3qyp776oqC8OgkwVr46yOogCaAqLr
rn1auCz8UVFxJuaZMfaBxAo=
=I03Q
-----END PGP SIGNATURE-----


More information about the redland-dev mailing list