Hello all,
It feels like its time for another release - 0.95. We have a
growing number of fixes and improvements that include:
* Added more unit tests around BMP.
* Added more images to the test image suite.
* Fixed a bug where errors were being wrongly logged to System.out.
* Moved the example code into the test source directory, to comply
with Maven's standard project layout.
* Added a couple of images to the sample image library that
demonstrate a couple variations on Photoshop/IPTC data.
* Fixed a small bug in the IPTC constants introduced while cleaning
up the constants.
* Started shift towards moving field-level parsing into
BinaryInputStream and BinaryOutputStream.
* Fixed a png unit test that used a piece of Java 1.6 syntax.
* Added unit tests around the new IPTC functionality.
* Added IPTC remove/update/insert functionality.
* Rewrote the IPTC parsing support.
* Added improved support for reading and writing iTXt, tEXt, zTXt Png chunks.
Added a unit test that demonstrates the feature.
* Found a new regression wherein DeflaterOutputStream needs to be closed.
* Added the .tar.bz2 distributions back into the maven assembly descriptors.
* Moved the example/sample code to a new top-level source folder, "example."
* Replaced dependency on java.util.zip.DeflaterOutputStream, which is
only available in Java 1.6.
* Added a unit test around reading and writing images in every format.
* We now sort some (but not all) GIF color tables.
* Applied the BMP "buffer flushing" bug to the PBM reading and writing code.
* Fixed a regression around flushing the bit buffer when writing BMPs
with very small palettes.
* Removed assumption about DataBuffer type when reading BMPs.
* When writing a GIF, we now always include a Graphic Control
Extension block, even if its not necessary.
* We are more defensive about missing GCEs.
* Lastly, we now set a minimum bound on initial code sizes for
LZW-compressed Gif image data.
* Found a regression in writing TIFFs around strip offsets being
properly updated. Not a LZW issue after all.
Added a few unit tests around this issue.
see: https://issues.apache.org/jira/browse/SANSELAN-6
* Added ability to remove and update XMP XML in existing JPEG files.
* Added ability to embed XMP XML when writing the following formats:
GIF, PNG, TIFF.
* Improved handling of tEXt and zTXt PNG text blocks.
* Added XMP XML extraction for the following formats: GIF (untested),
JPEG, TIFF, PNG, PSD.
* Added RELEASE_NOTES file (this file).
* Added Apache license header to bin.xml and src.xml Maven assembly
descriptors.
* Added Javadocs to the binary distribution
The release should closely resemble the previous release (0.94) in
structure.
This release incorporates a number of improvements suggested in the
last release process, such as including javadocs in the binary
distribution.
The one potential problem that I am aware of is that Maven didn't
generate md5 or sha1 checksums for any of the files. I'm not sure why
- I'm using the same assembly files as for the last release. I
generated the .md5 and .sha1 files "by hand", using the md5sum.exe and
fciv.exe implementations.
The proposed release can be found here:
http://people.apache.org/~cmchen/dist/incubator/sanselan/0.95/
Apache RAT output for this release can be found here:
http://people.apache.org/~cmchen/rat-bin-0.95.txt
http://people.apache.org/~cmchen/rat-src-0.95.txt
The intent is for this release to reside here:
http://www.apache.org/dist/incubator/sanselan/0.95/
Please take a look if you get a chance. Given that it is the
holiday season in many countries, perhaps we should extend the voting
deadline?
Thanks,
Charles