Releases: openpreserve/jhove
Releases · openpreserve/jhove
JHOVE 1.18 Release Candidate
RELEASE NOTES FOR JHOVE 1.18-RC
This is a release candidate for JHOVE v1.18 and should not be used in production. Please note that this release candidate will remove old versions of JHOVE, and other files, from the bin
directory. This includes old versions of JHOVE previously saved by other installers.
General
- External modules now an optional installation (default to yes) [#292].
- Fixes for various small issues in [#257]:
- fix for false invalid result for encrypted PDFs;
- improvements to TIFF and PDF error handling;
- inaccessible files now return "Unknown" status; and
- changed WAVE reported MIME type from
audio/xwave
toaudio/vnd.wave
.
- All JHOVE module error messages now factored as String constants in discrete message classes.
- JHOVE core error messages factored as String constants in
CoreMessageConstants
.
WAVE Module
- Added WAVE module support for BWF v2 recognition [#273].
- Improvements to WAVE module documentation [#269]
TIFF & JPEG Modules
- Validation for ICC profiles in JPEG and TIFF files [#249]
- Fixed handling of Exif profiles in JPEG files [#253].
PDF Module
JHOVE 1.16.7 Hot Fix
2017-07-20 : FIX - NPE preventing CrossRefStream objects from being read
Contains:
Fixes PDFs with CrossRefStream objects being reported as "Well-formed and valid" when most of the file's contents remain unchecked.
JHOVE 1.16.6 Hot Fix
2017-03-20 : FIX - Broken ModuleBase.skipBytes method
Contains:
Fixes:
JHOVE 1.16
RELEASE NOTES FOR JHOVE 1.16
General
- Added PDF and WAV test files submitted by community during JHOVE hack day
- JHOVE Maven artefacts made available on Maven Central in addition to OPF Artifactory
- Improved error reporting for Travis test failures
- Improvements to GitHub pages website
- Consistency and formatting improvements for README.md, RELEASENOTES.md and pom.xml
PDF module
- Fixed: CrossRefStream incorrectly assumes Index value is a 2 element array
- Fixed: Bug in skipIISBytes and PdfModule.getObject
- Better handling Pdf-files where image height and width are PdfIndirectObjects
- Better handling of Pdf-files with "empty" hex strings
- Better handling of Pdf-files where form-fields are PdfIndirectObjects
WAV module
- Fixed: validation of WAV files larger than 2 GB
- Fixed: Skip Bytes issue for WAV files larger than 100 MB
JHOVE 1.14
RELEASE NOTES FOR JHOVE 1.14
Version 1.12 was never made an official relase so to avoid confusion the
1.12 changes are included with the 1.14 notes below:
General
- Ant build replaced with Maven
- modularised project structure with "fat jar" packaging
- Java 5 support
- cross platform installer
- Travis CI build
- Maven distribution through OPF Artefactory server
- Updated JHOVE site pages
New Format Modules
- GZIP Module
Ported from JHOVE 2, via JWATT by KB - WARC Module
Ported from JHOVE 2, via JWATT by KB - PNG Module
Developed by Gary McGath
UTF-8 Module updated to v1.6
- support for Unicode 7.0.0
JHOVE 1.11
GENERAL
- I've added lots of logging code. Calls at the FINE level and lower
don't show up no matter what I do, so I've put them at the INFO level.
The level is set in JhoveBase.java. - All .bat and _bat.tmpl files now have CR-LF line endings. That is, they
do in the gzip and zip archives you download. I'm not sure how
SourceForge will treat files that you download individually,
but hopefully it will have the sense to keep CR-LF when downloading
to a Windows system. - All .bat files now assume JHOVE_HOME is the directory from which they're
run. They no longer try to set JAVA_HOME (which was still stuck in
Java 1.4 and probably wasn't working for many people), instead assuming
that the JAVA command is available on the command line. - All javac commands in build.xml files now specify source=1.5 for
compatibility with more recent compilers. - gdumpwin.bat is deleted. It's redundant with gdump.bat and has bugs
of its own.
PDF MODULE
- Fix to PDF module, submitted by willp-bl, may reduce tendency
to run out of heap space on some files.
JHOVE 1.10
GENERAL
- The amount of logging code has been increased, mostly at the
DEBUG level. - Further work on generics in Java code.
- JhoveView now checks for Java 1.5. Was previously allowing 1.4 even
though it wouldn't work.
HTML MODULE
- XHTML files are processed by the HTML module, which invokes the XML
modules. In this case, the XML module doesn't have the parameters
specified in the JHOVE configuration file and so won't use local
copies of schemas. Starting with this version, the parameters of
the HTML module are passed to the XML module when invoking it.
However, this doesn't work properly (in either module) for a DTD
that invokes additional DTDs by relative URLs. Such DTDs should
be edited to use only absolute URLs.
PDF MODULE
- Failure to get a page object number wasn't being handled cleanly,
resulting in a report of an invalid document without an error message
to explain it (SourceForge bug 49). This has been fixed. - The PDF module unnecessarily uses huge amounts of memory to build
complex structure trees, when it doesn't need to keep the whole
tree in memory to validate it. In the new version, it uses memory
more economically. This should result in the successful processing
of some PDF files that ran out of memory or took hours to process before. - If an annotation isn't a dictionary object, report that explicitly.
This happens with some otherwise good files; I can't find any warrant
for it in the PDF spec. - Some efficiency improvements to PDF parser. Increased buffer size from 4K
to 64K. Made Parser.collapseObjectVector more efficient. Parser now
returns pseudo-objects for array and dictionary end instead of throwing
an exception. - Minor cleanup of error reporting.
- If an object uses a compression scheme which JHOVE can't deal with, JHOVE
will try to give a specific error message.
JHOVE 1.9
GENERAL
- Jhove.java and JhoveView.java now get their version information from
JhoveBase.java. Before it was redundantly kept in three places, and
sometimes they didn't all get updated for a new release. Like in 1.8. - ConfigWriter was in the package edu.harvard.hul.ois.jhove.viewer, which
caused a NoClassDefFoundError if non-GUI configurations didn't include
JhoveViewer.jar in the classpath. It's been moved to
edu.harvard.hul.ois.jhove. - Added script packagejhove.sh and made md5.pl part of the CVS repository
to make packaging for delivery easier. - jhove.bat now simply uses the Java command rather than requiring
the user to set up the Java path. - JhoveView.jar and jhove (the top level shell script) are now forced
by ant to be executable so there are no mistakes. - Warning message given on invalid buffer size string, and minimum
buffer size is 1024. - Configuration file code for adding handlers and giving init strings
to modules was an awful mess that never could have worked.
Major repairs done.
AIFF MODULE
- If an AIFF file was found to be little-endian, the module instance
would stay in little-endian mode for all subsequent files. This
has been fixed.
TIFF MODULE
- TIFF files that had strip or tile offsets but no corresponding byte
counts were throwing an exception all the way to the top level. Now
they're correctly being reported as invalid.
XML MODULE
- Cleaned up reporting of schemas, Added some small classes to replace
the use of string arrays for information structures. Made URI comparison
for local schema parameter case-independent. Resolved conflict between
"s" and "schema" parameters.
WAVE MODULE
- Some uncaught exceptions caused the module to throw all the way
back to JhoveBase and not report any result for certain defective
files. These now report the file as not well-formed.
JHOVE 1.8
GENERAL
- Jhove.java and JhoveView.java now get their version information from
JhoveBase.java. Before it was redundantly kept in three places, and
sometimes they didn't all get updated for a new release. Like in 1.8. - ConfigWriter was in the package edu.harvard.hul.ois.jhove.viewer, which
caused a NoClassDefFoundError if non-GUI configurations didn't include
JhoveViewer.jar in the classpath. It's been moved to
edu.harvard.hul.ois.jhove. - Added script packagejhove.sh and made md5.pl part of the CVS repository
to make packaging for delivery easier. - jhove.bat now simply uses the Java command rather than requiring
the user to set up the Java path. - JhoveView.jar and jhove (the top level shell script) are now forced
by ant to be executable so there are no mistakes. - Warning message given on invalid buffer size string, and minimum
buffer size is 1024. - Configuration file code for adding handlers and giving init strings
to modules was an awful mess that never could have worked.
Major repairs done.
AIFF MODULE
- If an AIFF file was found to be little-endian, the module instance
would stay in little-endian mode for all subsequent files. This
has been fixed.
TIFF MODULE
- TIFF files that had strip or tile offsets but no corresponding byte
counts were throwing an exception all the way to the top level. Now
they're correctly being reported as invalid.
XML MODULE
- Cleaned up reporting of schemas, Added some small classes to replace
the use of string arrays for information structures. Made URI comparison
for local schema parameter case-independent. Resolved conflict between
"s" and "schema" parameters.
WAVE MODULE
- Some uncaught exceptions caused the module to throw all the way
back to JhoveBase and not report any result for certain defective
files. These now report the file as not well-formed.
JHOVE 1.7
GENERAL
- JHOVE 1.7, as well as future releases unless noted otherwise, is
released independently of Harvard under the GNU General Public License. - JHOVE now will tell you where it was looking for the config file if it
can't open it. This should help debug configuration problems.
XML HANDLER
- Changes to XmlHandler.java and NisoImageMetadata.java to correct invalid MIX
2.0 XML output in the value of grayResponseUnit. It was previously writing
integers (as in 1.0) rather than the expected enumerated strings.
PDF MODULE
- A situation that caused an infinite loop and eventual memory exhaustion
processing in some PDF files with malformed literals has been fixed.