Get rid of dependency on libgmp by writing our own routine for
[pspp-builds.git] / src / ChangeLog
index 33134d8aaf12c1f93571f4331af04daa85db285e..98b6ea6a8b235fa555faa830e527513c517b1bf6 100644 (file)
@@ -1,3 +1,399 @@
+Sun Jul 24 20:26:59 2005  Ben Pfaff  <blp@gnu.org>
+
+       Get rid of dependency on libgmp by writing our own routine for
+       floating-point base conversion.
+
+       * pfm-write.c: (write_float) Rewrote.
+       (write_int) Rewrote.
+       (pow30_nonnegative) New function.
+       (pow30) New function.
+       (trig_to_char) New function.
+       (format_trig_digits) New function.
+       (recurse_format_trig_int) New function.
+       (format_trig_int) New function.
+       (should_round_up) New function.
+       (try_round_up) New function.
+       (format_trig_double) New function.
+
+Sun Jul 24 18:49:20 2005  Ben Pfaff  <blp@gnu.org>
+
+       * data-in.c: (parse_numeric) Allow "1+23" even for F format, for
+       compatibility.
+
+Sun Jul 24 18:47:37 2005  Ben Pfaff  <blp@gnu.org>
+
+       * pfm-read.c: (read_version_data) Read and ignore author field.
+
+Wed Jul  6 20:44:27 2005  Ben Pfaff  <blp@gnu.org>
+
+       * get.c: (mtf_processing) Don't assume that
+       mtf_compare_BY_values() always returns -1, 0, or 1.  Actually, it
+       returns a negative, zero, or positive result.  Fixes MATCH FILES
+       bug on Mac OS X reported by "Marshall DeBerry" <mdb@radix.net>.
+
+Mon Jul  4 18:01:15 2005  Ben Pfaff  <blp@gnu.org>
+
+       * flip.c: [HAVE_SYS_TYPES_H] Really include <sys/types.h>.  The
+       preprocessor test for sys/types.h was accidentally inverted.  This
+       was bug 12789.
+
+Sun Jul  3 22:47:39 2005  Ben Pfaff  <blp@gnu.org>
+
+       * get.c: (cmd_match_files) Fix memory leak on `by' and on
+       `vfm_source'.
+
+       * getline.c: [HAVE_LIBREADLINE] (read_console) Fix memory leak on
+       `line'.
+
+       * vfm.c: (close_active_file) Remove unnecessary test.
+
+Sun Jul  3 21:45:32 2005  Ben Pfaff  <blp@gnu.org>
+
+       Fix NDEBUG compile errors.
+
+       * hash.h: Needed explicit #include <assert.h>.
+
+       * linked-list.c: (ll_next) First arg is UNUSED when NDEBUG is
+       defined.
+
+Sun Jun 12 23:44:38 2005  Ben Pfaff  <blp@gnu.org>
+
+       Implement embedding for PostScript driver.  Fixes bug 12970.
+
+       * ascii.c: Fix compiler warnings.
+
+       * html.c: Ditto.
+
+       * chart.h: Add `file' member.
+
+       * output.h: (struct outp_class) initialise_chart, finalise_chart
+       should take outp_driver *, not outp_class *.  Update all
+       references.
+
+       * plot-chart.c: (chart_create) Fix segfault when there are no
+       output drivers at all.
+       (chart_submit) Call d->class->finalise_chart.
+
+       * postscript.c: (ps_open_page) Set cp_y to 0.
+       (ps_submit) New function.
+       (ps_chart_initialise) Implement.
+       (ps_chart_finalise) Implement.
+       (static var postscript_class) Add ps_submit.
+       (static var epsf_class) Add ps_submit.
+       
+
+Sun Jun 12 14:54:40 2005  Ben Pfaff  <blp@gnu.org>
+
+       Did some more work on bug 12859 and then realized that a *good*
+       solution would require some fundamental restructuring.  For now,
+       I'm marking REPEATING DATA unimplemented, and then we can revisit
+       it post-0.4.0.
+       
+       * command.def: Make REPEATING DATA unimplemented.
+
+       * data-list.c: (cmd_repeating_data) Assume inline file is 80
+       characters wide.
+       (realize_value) Revert previous changes; no longer needed.
+       Updated all callers.
+
+       * error.c: (err_hcf) Set nfile_loc, mfile_loc to 0 after freeing
+       file_loc, to avoid bad references later.
+
+       * str.c: Fix typo.
+
+Tue Jun  7 00:14:09 2005  Ben Pfaff  <blp@gnu.org>
+
+       Make some code tolerant of reentry.  Should not be needed if other
+       code is correct but it is good to be generally tolerant.
+       
+       * error.c: (err_hcf) Set file_loc to null after free().
+
+       * output.c: (outp_done) Similar changes.
+
+       * str.c: (ds_destroy) Ditto.
+       
+Tue Jun  7 00:10:20 2005  Ben Pfaff  <blp@gnu.org>
+
+       Continue work on bug 12859, plus some code cleanup.
+       
+       * data-list.c: (cmd_repeating_data) Replace `seen' bitmap by
+       boolean variables.  Don't try to compute starts_end, cont_end for
+       inline file.  Calculate length only after parsing variable
+       specifications.  Add proper transformation to list.
+       (realize_value) If the rpd_num_or_var has no value, return new
+       DEFAULT_MEMBER argument (for use with inline file).
+       (repeating_data_trns_proc) Pass default values.
+
+       * dfm-read.c: (dfm_close_reader) Only skip data if *not* still
+       open, and only if we actually started reading data.
+
+Sun Jun  5 18:39:36 2005  Ben Pfaff  <blp@gnu.org>
+
+       Fix bug 11894.
+       
+       * output.c: (outp_read_devices) Fix message.
+
+Fri May 27 12:34:43 WST 2005 John Darrington <john@darrington.wattle.id.au>
+       
+       * sort-prs.[ch] (newfiles), aggregate.c, sort.[ch]: Separated the guts 
+       of the sort algorithm from the parser for the SORT command.
+       
+       * rank.q: Added the parser for the RANK command.
+       
+Thu May 26 12:29:21 2005  Ben Pfaff  <blp@gnu.org>
+
+       Fix bug 13192.
+
+       * sort.c: (sort_parse_criteria) Only set *saw_direction if
+       saw_direction is non-null.  Thanks to John Darrington for
+       reporting this bug.
+
+Tue May 24 21:52:55 2005  Ben Pfaff  <blp@gnu.org>
+
+       * get.c: (mtf_processing) Handle case of a lookup table as the
+       active file.  Thanks to John Darrington for reporting this bug.
+
+Wed May 25 10:27:02 WST 2005 John Darrington <john@darrington.wattle.id.au>
+       
+       * alloc.c alloc.h: (xcalloc) changed signature to imitate the
+       POSIX  calloc function.
+       
+       * crosstabs.q get.c vars-prs.c: Updated calls to xcalloc to
+       reflect new signature.
+
+       * sfm-read.c: Now much more robust in the face of badly formed
+       system files.
+
+Mon May 23 11:57:31 WST 2005 John Darrington <john@darrington.wattle.id.au>
+
+       *sfm-read.c: Fixed some bugs regarding long string continuation
+       records, which the previous fix uncovered.
+
+Sat May 21 12:48:34 WST 2005 John Darrington <john@darrington.wattle.id.au>
+
+       * sfm-read.c, sfmP.h:  Allow reading of system files when the 
+       case_size value in the header is -1.  Also changed some Errors to 
+       Warnings when reading system files.
+
+Tue May 17 21:00:57 2005  Ben Pfaff  <blp@gnu.org>
+
+       * data-list.c: (data_list_trns_free) Don't free the argument
+       because cancel_transformations() will do that itself.
+       (data_list_source_destroy) Destroy the argument to
+       data_list_trns_free(), because it no longer does so itself.
+
+Tue May 17 18:29:35 2005  Ben Pfaff  <blp@gnu.org>
+
+       * data-out.c: (format_and_round) Don't output leading `-' if value
+       rounds to zero.
+
+Tue May 17 00:06:43 2005  Ben Pfaff  <blp@gnu.org>
+
+       Fix bug 11119.
+
+       * som.c: (output_encodings) If some cell in the table won't fit
+       with the horizontal or vertical headers, cancel those headers.
+
+       * som.h: (struct som_table_class) Add fits_width, fits_length,
+       set_headers members.
+
+       * tab.c: (tabi_fits_width) New function.
+       (tabi_fits_length) New function.
+       (tabi_set_headers) New function.
+       (global var tab_table_class) Add the new functions as appropriate
+       members.
+       
+Mon May 16 22:34:06 2005  Ben Pfaff  <blp@gnu.org>
+
+       Fix rest of bug 13054.
+
+       * format.def: Fix EDATE, SDATE, ADATE, JDATE, QYR, MOYR, WKYR,
+       DATETIME, TIME system/portable file values.
+
+Mon May 16 22:31:15 2005  Ben Pfaff  <blp@gnu.org>
+
+       * data-list.c: (parse_free) Use make_input_format().
+       
+       * data-out.c: (num_to_string) Use make_output_format().
+
+       * dictionary.c: (dict_create_var) Ditto.
+
+       * format.c: (global var f8_2) New var.
+       (make_input_format) New function.
+       (make_output_format) New function.
+
+       * get.c: (cmd_match_files) Use make_output_format().
+
+       * list.q: (cmd_list) Ditto.
+
+       * matrix-data.c: Ditto.
+
+       * sfm-read.c: (parse_format_spec) Check output specifier
+       thoroughly.
+
+       * tab.c: (tab_float) Use make_output_format().
+
+Sun May 15 23:38:10 2005  Ben Pfaff  <blp@gnu.org>
+
+       Fix more of bug 13054.
+       
+       * format.def: FMT_A should allow 255-character output.  FMT_AHEX
+       should allow 510-character input and output.
+
+       * data-out.c: (num_to_string) Get rid of NEW_STYLE option.
+       (convert_E) Handle non-finite values.
+       (try_F) Rewrite.
+       (format_and_round) New function.
+       (convert_infinite) New function used by try_F() and convert_E().
+
+Sun May 15 23:36:55 2005  Ben Pfaff  <blp@gnu.org>
+
+       Regularize string and buffer function names so that they make some
+       kind of sense.
+
+       * str.c: (mm_reverse) Rename buf_reverse().  Update all
+       references.
+       (mm_find_reverse) Rename buf_find_reverse().  Update all
+       references.
+       (mm_case_compare) Rename buf_compare_case().  Update all
+       references.
+       (st_compare_pad) Rename buf_compare_rpad().  Update all
+       references.
+       (str_compare_rpad) New function.
+       (st_bare_pad_copy) Rename buf_copy_str_rpad().  Update all
+       references.
+       (buf_copy_str_lpad) New function.
+       (st_bare_pad_len_copy) Rename buf_copy_rpad().  Update all
+       references.
+       (st_pad_copy) Rename str_copy_rpad().  Update all references.
+       (st_trim_copy) Rename str_copy_trunc().  Update all references.
+       (st_uppercase) Renamed str_uppercase().  Update all references.
+       
+Sat May 14 08:22:26 WST 2005 John Darrington <john@darrington.wattle.id.au>
+
+       * dfm-read.c: Fixed polarity of test in dfm-close-reader.  Closes 
+       Bug #13082
+
+Tue May 10 20:08:18 2005  Ben Pfaff  <blp@gnu.org>
+
+       * data-in.c: (data_in) Add assertion to check input specifier.
+
+       * data-out.c: (data_out) Add assertion to check output specifier.
+
+Tue May 10 19:56:35 2005  Ben Pfaff  <blp@gnu.org>
+
+       Start to fix bug 13054.
+
+       * format.c: (check_input_specifier) Improve error message.
+       (check_input_specifier) Check F, COMMA, and DOLLAR formats for
+       valid decimal places.
+       (check_output_specifier) Ditto (but different criteria).
+       (convert_fmt_ItoO) Assert valid input and output specifiers.
+       Also, if input specifier has *any* decimal places, make the output
+       specifier 1 place wider.
+
+Mon May  9 07:14:29 WST 2005 John Darrington <john@darrington.wattle.id.au>
+
+       * sysfile-info.c: Fixed bug [# 13024 ]
+
+Sun May  8 13:52:12 2005  Ben Pfaff  <blp@gnu.org>
+
+       "Fix" bug 13021 by disabling FILE TYPE.  Eventually, we should
+       actually implement it.
+
+       * command.c: (FILE_TYPE_okay) Always return 1.
+
+       * command.def: Change FILE TYPE, END FILE TYPE into UNIMPL.
+
+       * file-type.c: Add prototypes to get rid of warnings.
+
+Sun May  8 08:08:07 WST 2005 John Darrington <john@darrington.wattle.id.au>
+
+       * barchart.c box-whisker.c cartesian.c piechart.c plot-hist.c: Fixed 
+        more ISO/IEC 9899:1990 conformance issues.
+
+Wed May  4 23:54:02 2005  Ben Pfaff  <blp@gnu.org>
+
+       Fix bug 12948.  See also new test in
+       tests/bugs/match-file-scratch.sh.
+       
+       * get.c: (mtf_merge_dictionary) Don't compact dictionary because
+       that deletes scratch variables that someone else might be using,
+       and because we can't reassign our sources' value indexes.
+       Instead, simply don't copy scratch variables into the master
+       dictionary.
+
+       * dictionary.c: (dict_compact_values) Delete variables from the
+       dictionary passed in, not from default_dict (!).
+
+Tue May  3 22:25:17 2005  Ben Pfaff  <blp@gnu.org>
+
+       Improve hash.c comments, error-checking.
+       
+       * hash.c: (struct hsh_table) [NDEBUG] Add hash_ordered member.
+       (hsh_create) size == 0 should *not* return NULL!  Set
+       hash_ordered.
+       (hsh_clear) Set hash_ordered.
+       (locate_matching_entry) Check hash_ordered.
+       (hsh_rehash) Rename rehash().  Add assertion.  Set hash_ordered.
+       (hsh_data) Set hash_ordered.  Add const-ness to return value and
+       update all callers.
+       (hsh_sort) Ditto.       
+
+Wed May  4 08:50:11 WST 2005 John Darrington <john@darrington.wattle.id.au>
+
+       * casefile.c: Removed unnecessary #include <valgrind/valgrind.h>
+
+Tue May  3 19:14:48 WST 2005 John Darrington <john@darrington.wattle.id.au>
+
+       * copyleft.c: Updated copyright date.
+
+       * Makefile.am: Removed erroneous explicit "-lplot"
+
+       * examine.q oneway.q: Made these files conform to ISO/IEC 9899:1990
+
+Tue May  3 16:20:31 WST 2005 John Darrington <john@darrington.wattle.id.au>
+
+       * command.c command.def: Added description string for unimplemented commands.
+
+       * oneway.q: Sorted the hash tables before shipping out the results. Closes 
+       bug [#12931].
+
+Mon May  2 23:45:01 2005  Ben Pfaff  <blp@gnu.org>
+
+       Code improvements.
+       
+       * data-list.c:  (parse_fixed) Use lex_end_of_command().
+       (parse_free) Ditto.
+       (cmd_repeating_data) Set cont_end.num in right situations.
+       (parse_repeating_data) Remove redundant test.
+
+Mon May  2 23:37:19 2005  Ben Pfaff  <blp@gnu.org>
+
+       Partial fix for bug 12859.
+       
+       * data-list.c: (cmd_data_list) Add transformation properly in
+       vfm_source == NULL case.
+
+Mon May  2 23:27:28 2005  Ben Pfaff  <blp@gnu.org>
+
+       * lexer.c: (lex_error) Improve error messages.
+
+Mon May  2 22:28:17 2005  Ben Pfaff  <blp@gnu.org>
+
+       * get.c: (cmd_match_files) Check token type before trying to match
+       tokid.  Fixes bug 12923.
+
+Mon May  2 22:16:51 2005  Ben Pfaff  <blp@gnu.org>
+
+       * flip.c: [HAVE_SYS_TYPES_H] Include <sys/types.h>.  Fixes bug
+       12789.
+
+Mon May  2 22:02:52 2005  Ben Pfaff  <blp@gnu.org>
+
+       * expressions/generate.pl: (get_token) Make use of /g
+       backward-compatible with Perl 5.6.1.
+
 Sun May  1 23:00:19 2005  Ben Pfaff  <blp@gnu.org>
 
        * var-display.c: (cmd_variable_alignment) Fix memory leak.
@@ -209,7 +605,7 @@ Sun May  1 15:05:54 WST 2005 John Darrington <john@darrington.wattle.id.au>
 
 Thu Apr 28 18:52:06 2005  Ben Pfaff  <blp@gnu.org>
 
-       * expressions/parse.c: Improve previous fix for PR 12858 (LAG).
+       * expressions/parse.c: Improve previous fix for bug 12858 (LAG).
 
 Fri Apr 29 09:28:00 WST 2005 John Darrington <john@darrington.wattle.id.au>
 
@@ -227,7 +623,7 @@ Wed Apr 27 07:43:50 WST 2005 John Darrington <john@darrington.wattle.id.au>
 
 Mon Apr 25 22:55:59 2005  Ben Pfaff  <blp@gnu.org>
 
-       Finish fixing MATCH FILES (PR 11677).
+       Finish fixing MATCH FILES (bug 11677).
 
        * get.c: (trim_dictionary) Rewrite in terms of drop_variables(),
        keep_variables(), rename_variables().
@@ -322,7 +718,7 @@ Thu Apr 14 2005 John Darrington
 Mon Apr  4 22:27:34 2005  Ben Pfaff  <blp@gnu.org>
 
        * aggregate.c: (parse_aggregate_functions) If dict_create_var()
-       fails, don't dereference the resulting null pointer (PR 12427).
+       fails, don't dereference the resulting null pointer (bug 12427).
        Also, fix double free error.
 
 Sat Mar 19 23:06:02 2005  Ben Pfaff  <blp@gnu.org>
@@ -344,7 +740,7 @@ Mon Mar 14 21:52:34 2005  Ben Pfaff  <blp@gnu.org>
 
 Mon Mar 14 21:07:23 2005  Ben Pfaff  <blp@gnu.org>
 
-       Make sort stable (PR 12313).
+       Make sort stable (bug 12313).
        
        * sort.c: Don't need to include some headers anymore.
        (static var min_buffers) New variable.
@@ -392,7 +788,6 @@ Mon Mar 14 21:05:13 2005  Ben Pfaff  <blp@gnu.org>
 
        * flip.c: (cmd_flip) Ditto.
 
->>>>>>> 1.161
 Sun Mar 13 22:52:05 2005  Ben Pfaff  <blp@gnu.org>
 
        * file-handle.q: (struct file_handle) `open_mode' should not be
@@ -400,7 +795,7 @@ Sun Mar 13 22:52:05 2005  Ben Pfaff  <blp@gnu.org>
        
 Sun Mar 13 22:40:54 2005  Ben Pfaff  <blp@gnu.org>
 
-       First phase of making SORT CASES stable (PR 12313).
+       First phase of making SORT CASES stable (bug 12313).
 
        * sort.c: (struct indexed_case) New structure.
        (do_internal_sort) Rewrite to make internal sorting stable.
@@ -443,7 +838,6 @@ Sun Mar 13 22:35:55 2005  Ben Pfaff  <blp@gnu.org>
        (initialize_aggregate_info) Fix initialization for MIN, MAX for
        strings.
 
->>>>>>> 1.160
 Sat Mar 12 23:26:21 2005  Ben Pfaff  <blp@gnu.org>
 
        Start work on testing and debugging AGGREGATE.
@@ -469,11 +863,11 @@ Sun Mar 13 14:54:27 WST 2005 John Darrington <john@darrington.wattle.id.au>
 Sat Mar 12 13:29:21 2005  Ben Pfaff  <blp@gnu.org>
 
        * split-file.c: (cmd_split_file) Ignore LAYERED and SEPARATE
-       keywords (PR 11628).
+       keywords (bug 11628).
 
 Sat Mar 12 13:17:12 2005  Ben Pfaff  <blp@gnu.org>
 
-       * vfm.c: (procedure_with_splits) Fix PR 11492: end_func() must be
+       * vfm.c: (procedure_with_splits) Fix bug 11492: end_func() must be
        called *before* close_active_file().
 
 Sat Mar 12 12:20:57 2005  Ben Pfaff  <blp@gnu.org>
@@ -557,7 +951,7 @@ Sun Mar  6 23:25:40 2005  Ben Pfaff  <blp@gnu.org>
 Sun Mar  6 19:52:22 2005  Ben Pfaff  <blp@gnu.org>
 
        DATA LIST with free-field formats should not have implied decimal
-       places (PR 12035).  Also clean up data-in.c a bit.
+       places (bug 12035).  Also clean up data-in.c a bit.
 
        * data-in.h: (enum) Add DI_IMPLIED_DECIMALS.
 
@@ -762,7 +1156,7 @@ Fri Feb 25 21:11:35 WST 2005 John Darrington <john@darrington.wattle.id.au>
 
 Sun Feb 13 16:11:13 2005  Ben Pfaff  <blp@gnu.org>
 
-       Fix PR 11955.
+       Fix bug 11955.
 
        * aggregate.c: (parse_aggregate_functions) Code cleanup.
        Important part: get rid of spurious copying of function->format to
@@ -770,7 +1164,7 @@ Sun Feb 13 16:11:13 2005  Ben Pfaff  <blp@gnu.org>
 
 Fri Feb 11 00:08:36 2005  Ben Pfaff  <blp@gnu.org>
 
-       Fix PR 11916, which was confusing a variable's `index' member
+       Fix bug 11916, which was confusing a variable's `index' member
        with the variable's position in a var_set.  Although these are
        usually the same, they are not for array `var_set's.
        
@@ -963,7 +1357,7 @@ Wed Jan  5 08:30:48 WST 2005 John Darrington <john@darrington.wattle.id.au>
 Mon Jan  3 17:44:37 2005  Ben Pfaff  <blp@gnu.org>
 
        * pfm-read.c: (read_variables) Remove direct manipulation of
-       v->aux, which is no longer needed.  Fixes PR 11483.
+       v->aux, which is no longer needed.  Fixes bug 11483.
 
 Sat Jan  1 19:01:16 WST 2005 John Darrington <john@darrington.wattle.id.au>