Need to unify Windows release process (zip file) and Unix release process (bin/release-> tarfile)
Solution:
Added a new option (zip) to generate Windows zip file from the release tarball.
Tested: by hand running "bin/release ... gzip zip" to verify zip file looks right.
Allen and Dana then confirmed the zip file can be used to build and test HDF5
library without error.
Added a clarification the environment variables dumping is BEFORE command option
parsing. Also added a dumping AFTER the option parsing.
Tested:
Just eyeballed since it is trival. Let daily tests runs to test it.
Show disk usage at different stage of the snapshot processes
so that we know how much disk are needed in different stage.
(This still does not know how big disk usage during make check
process since many temporary files are deleted right after the tests
finish.)
Tested platform:
Kagiso.
default to be release_dir in the snapshot base directory so that it is simplier
to control release directory destination per snapshot setup.
Tested platform:
Kagiso.
"make check-vfd" will now run all tests in the test directory with different
file drivers (at least, all of those tests that use the testing framework's
FAPL). Tests that fail will be skipped.
This is not a perfect fix, but is better than nothing.
Along with this change, check-vfd should be added to the Daily Tests.
The snapshot release directory was temporarily moved to a different
directory called unstable_format. Since the format is now back to
the normal one, reverse the release directory to the normal place too.
Platforms tested:
No test since it was a trivial change.
Bug fix
Description:
The snapshot script was trying to install-doc, even though the docs are
no longer included in the cvs repo.
Solution:
Replaced 'make install install-doc' with 'make install-all', which should
have the same effect (installing the library and examples).
Platforms tested:
very minor change
Improvement
Description:
Release action now prints a message showing Release version and where it
deposits it.
Platforms tested:
Change is simple and will test by hand after check in.
Misc. update:
Temporary fix.
Description:
Since the file format is unstable, we don't want the snapshot tarball
be readily available to any FTP users. Change the snapshot archived
location to a directory that is not accessible by Anon. FTP. If someone
wants to use one of these snapshot versions, give him/her a copy of these
files.
When file format is restored, switch this back to the previous default
location.
Platforms tested:
no test since change is pretty trivial. I have scheduled a snapshot
release tonight to see if it will put it in the right place.
upgrade.
Description:
A new feature md5 is added to the release script. Upgrade snapshot
to include md5 in the snapshot release process.
Platforms tested:
No test since the change is pretty simple and it is hard to test
without really doing a snapshot release.
Misc. update:
Bug fix.
Description:
Error encountered in the clean command was not passed back to calling
command. Fixed it.
Platforms tested:
heping (where clean has no error) and sol (where clean has error).
cleanup.
Description:
The install directory (--prefix) has been changed to $PWD/hdf5 long time
ago. It is no need to reset to installdir any more.
Platforms tested:
Change is trivial and will be tested in Daily tests.
Misc. update:
bug fix.
Description:
The deploy command would exit whether it succeeded or not.
Solution:
Fixed it so that it exits only when deploy has encountered failures.
Platforms tested:
Trivial change. Will watch the daily test results.
Misc. update:
Improvement.
Description:
Added a command to dump all environment variables at the
beginning of the snapshot test.
Platforms tested:
Attempted to test in eirene but aborted it after seeing the
dumping because it was doing things to the current/ of daily
test directory. *arg!*
Bug fix and feature.
Description:
The setenv was done in runtest but it has the effect will linger
onto the next test. So, if the first test sets $CXX to a certain
value, it lingers on the all following tests of the same host.
This is usually not desired.
Solution:
Move the actual setenv code to snapshot. Runtest now just parses them
and pass along the setenv request to snapshot.
Platforms tested:
no h5comittest which does not really test the change.
Hand tested in eirene with Tg-NCSA.
Misc. update:
cvs checkout often included empty directories the contents of which
are no longer needed.
Added -P to cvs command to prune them.
Platforms tested:
no h5committest which does not test snaptest.
Improvement
Description:
The cvs checkout used the complete path of current/ which is not
accepted by cvs server. Changed it to chdir to the snapshot directory
and then cvs checkout just current/.
Platforms tested:
Not h5committested because it does not test this command.
Tested in tg-ncsa which has no direct access to the CVS directory
and must use the server route.
Misc. update:
Bug fix
Description:
If the base directory (.../snapshot-...) does not exist yet,
the runtest and snapshot will continue on till it bumped into
a "wall".
Solution:
Added verification that the BASEDIR does exist.
bug fix.
Description:
It checked on the CVSROOT setting even when no cvs is needed.
Solution:
Moved the verification inside the checkout code so that the
CVS settings are checked when it is needed.
Platforms tested:
Eirene--this is invoked by bin/runtest. Platform tests do not
apply here.
Misc. update:
Bug fix
Description:
SGI shell treats $0 as function name if used in a function.
Set the name here to avoid that ambiguity and better style too.
Platforms tested:
Just in modi4 and burrwhite since it is a shell script and the
change is machine independent.
New feature
Description:
Added TIMESTAMP and event markers. Easier to tell the chronical events.
Turned of echo mode. Added an option to turn it on.
Platforms tested:
Only in eirene.
feature
Description:
Removed the search of HDF4 library specifically.
Replaced the locate_hdf4 with a more general locate_sw.
Added the search of zlib.
Platforms tested:
eirene and all hdf group machines.
New feature
Description:
"snapshot diff" will just run the diff and exit 0 is no significant
differences found between current and previous versions.
Runtest will try a "snapshot diff" and will skip test if no significant
differences are found.
Platforms tested:
eirene
New feature
Description:
Replacing the hardcoding of default version for snapshot test
to a file, bin/snapshot_version. This way, runtest and snapshot
can be version neutral. Makes maintenance easier.
Platforms tested:
eirene.
Bug fix
Description:
check-install was on the same make line with install. They
got run in parallel.
Run check-install as a separate make action after make install is completed.
Platforms tested:
Eirene
New feature
Description:
The examples have been changed to use the installed h5cc to do
the compiling. Added a step in the "test" part to
"cd examples; gmake check" which will test against the installed
software.
A more proper way is to create a "check-install" target to test
other installed software besides the C API, such as the Fortran
API.
Platforms tested:
eirene
Bug fix
Description:
A a build had occurred in the source tree ($CURRENT) and did not
do a distclean, the left over files would interfere with srcdir
build.
Solution:
Added a "make distclean" in the "checkout" option to clean up
the $CURRENT just in case. Not necessarily the most optimal
spot to do the cleaning but convenient.
Platforms tested:
Eirene.
Bug fix
Description:
Snapshot does "make check" directly, instead of building all
binary first. This means it does not cover code that are not
tested (e.g., example, perform). (That explained why the errors
in the PIO performance code were not reported in daily test but
blew up when people built the library the "normal" way.)
It is done this way so that the snaptest aborts as soon as
the first test failed rather than after all code are compiled.
Solution:
Add "make" (to build all binary) before "make check".
The allows snaptest to fail as soon as the first compiling failure.
If we wish the snaptest to abort on the first test failure, the two
can be swapped as "make check && make ...". (It would appear strange
to run tests then make binary.)
Platforms tested:
Would be tested in the daily test tonight. (I should have tested
it first but I started this commit process already. Sorry.)
feature
Description:
Recognize command line argument in the form of '--*' as
a configure command option by default. Since all normal
configure options are in the form of '--*', this will
simplify the "op-configure <option>" syntax. The latter
syntax is still kept in case one would want to pass in
some configure argument that does not fit this syntax.
Platforms tested:
Eirene.
Improvement
Description:
The DIFF used to keep running after detecting significant code changes.
This was done in order to see all changes but no one seems to look
at the diff any more. So, let it end the DIFF cycle once it determines
there are enough differences for a new test.
Added "install install-doc uninstall uninstall-doc" to the test
cycle.
Platforms tested:
Eirene, gondolin, modi4
Code improvement
Description:
Changed it so that $H5VERSION determines which version of hdf5
code to do cvs checkout and to test, making it easier to handle
new versions.
Platforms tested:
run simple test to make sure it did generate the right command.
Simple twist
Description:
snapshot used to just use whatever `hostname` returns. Often it
is the fully qualified name but sometimes just hostname without the
domain part. Inconsistent.
Solution:
Chopped off any domain part and use just the host name.
Use the 'cut' command rather than the sed with ncsa.uiuc.edu hardcoded.
Applied that to runtest too.
Platforms tested:
Should work. Will find out if the daily tests still work.
option. A system may have several versions of diff (e.g., vendor's
and Gnu's). Added codes to try them all until finding one that supports
it. If found, use it; else stick with plain "diff" and may waste time
when there are no differences besides the ignorable patterns.
Platforms tested:
Solaris 2.7, Redhat 6.2