A quick guide to producing patches for ABCL
This guide describes how to contribute patches to ABCL, while making
sure that the patch doesn't introduce regressions.
- Build abcl and run the ansi-tests with the pristine tree before making patches
and store the test results. Invoke the following commands from the
abcl main directory:
ant abcl.clean
ant abcl.wrapper
ant test.ansi.interpreted
ant test.ansi.compiled
The test runs will report where their logs are written, keep those
files at hand for comparing them with later runs with modified code.
-
Develop your patch.
-
Build abcl and run the ansi-tests with your modification and store the test results.
The commands are as in the first step.
-
Compare the new test results with the pristine results, if there are no
additional failures, the patch should be ok. Example comparison for
linux would be
diff -u abcl-test-20093726-2037.log abcl-test-20094426-2044.log
Note that the file names are generated dynamically by the test runs.
The list of failed tests can be found at the end of the log, so that's
practically the only thing you're interested in. If the lists don't
differ, you've successfully created a patch with no ansi-test regressions.