PDF::API3 is the beginning of a rewrite of PDF::API2.
The purpose of this slightly modified version is to announce intensions
for a rewrite, hopefully spawn participation, and to utilize cpan-RT
for tracking bugs/fixes and wishlists/implementations.
After much time, effort, and with well received results,
Alfred Reibenschuh is abandoning PDF::API2.
However we have seen great progress in moving towards paperless methods.
Furthermore the PDF specification is now an ISO standard.
Now is the time to really push forward with the development of an even
better perl pdf solution.
This is a beginning toward that goal.
This version starts with PDF::API2 0.73,
creating a new interfaced named PDF::API3 with a new version numbering
starting at 3.001.
There are a growing number of PDF quick solutions. It is hoped that
PDF::API3 can coalesce many under one library. There is commonality
that all quick solutions will need: find, open, read, write, parse files.
The intent is to provide a universal library for which other solutions
may utilize for lower level functionality. As such, all PDF::API2 modules
have been re-named as PDF::API3::Compat::API2.
The intent is that the interface at the API2 level will stay the same.
As the library is refactored, a new API3 interface will be formulated.
Low level functionality will be factored into PDF::API3::Lib. The
typical programmer interface will be factored under PDF::API3. The
typical programmer interface would utilized the lower level routines
Other PDF libraries may be incorporated as PDF::API3::Compat::distA,
PDF::API3::Compat::distB, PDF::API3::Compat::distC, etc. As these are
refactored to utilize or generalize PDF::API3::Lib, their typical
programmer interface will move under PDF::API3 if general, or may be
spun off as PDF::API3x extensions
The intent is to use git and encourage distributed development.
A git and wiki will be put up soon.
Development philosophy includes development of lots of tests,
tidying and critic utilities, and utlization of Moose and other
libraries that will speed development and provide a clean, solid,
easily maintained, production ready system. And to develop appropriate
programmer and maintenance documentation. Yes - maintenance of how it
works and why choices were made so as to ease maintenance of it by others.
The intent of putting this release out is to inform the community of
the effort, encourage others to participate, and to utilize the bug
tracking system of CPAN for tracking bugs and new development.
Consider this pre-alpha software.