Implemented long variable names a la spss V12.
[pspp-builds.git] / src / ChangeLog
index e7296ad5f618e32bd9333a0da21ec27c0bbde761..498afac3fddf2623722899c94c10fe39027d3f99 100644 (file)
@@ -1,3 +1,162 @@
+       * var-display.c: New file.
+
+       * format.h var.h sfm-read.c sfm-write.c dictionary.c :  Added 
+         display_width, measure and alignment parameters to variables.
+
+       * aggregate.c command.def compute.c count.c data-list.c descript.c
+         dictionary.c dictionary.h expr-prs.c file-type.c flip.c get.c lexer.c
+         lexer.h loop.c modify-vars.c pfm-read.c recode.c repeat.c sfm-read.c
+         sfm-write.c sfm-write.h sfmP.h val-labs.c val.h var.h vars-prs.c
+         vector.c :  
+           - Replaced literal constants representing maximum variable name 
+             length with macro definitions. 
+           - Added support for long variable names.
+           - Changed lexer such that it no longer makes tokens upper case, but
+             relies upon case insensitive behaviour of commands.
+
+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).
+       Also, fix double free error.
+
+Sat Mar 19 23:06:02 2005  Ben Pfaff  <blp@gnu.org>
+
+       * aggregate.c: (parse_aggregate_functions) Fix N_NO_VARS format.
+       (accumulate_aggregate_info) Set int1 to 1 for SUM.
+       (dump_aggregate_info) Only make SUM non-missing if there was at
+       least one variate.
+
+Sat Mar 19 14:48:19 2005  Ben Pfaff  <blp@gnu.org>
+
+       * aggregate.c: (dump_aggregate_info) Properly test whether the
+       destination variable is numeric, when making the result
+       system-missing for columnwise missing values.
+
+Mon Mar 14 21:52:34 2005  Ben Pfaff  <blp@gnu.org>
+
+       * misc.h: Remove GCC specializations.
+
+Mon Mar 14 21:07:23 2005  Ben Pfaff  <blp@gnu.org>
+
+       Make sort stable (PR 12313).
+       
+       * sort.c: Don't need to include some headers anymore.
+       (static var min_buffers) New variable.
+       (static var max_buffers) New variable.
+       (static var allow_internal_sort) New variable.
+       (cmd_sort_cases) Add test mode.
+       (sort_execute) Rephrase.
+       (do_internal_sort) Don't try internal sorting if
+       allow_internal_sort is set.
+       (struct external_sort) Renamed `initial_runs' to `runs' and
+       updated all references.
+       (macro MIN_BUFFER_TOTAL_SIZE_RECS) Removed.
+       (macro MIN_BUFFER_SIZE_BYTES) Removed.
+       (macro MIN_BUFFER_SIZE_RECS) Removed.
+       (compare_initial_runs) Removed.
+       (struct record_run) Add member `idx'.
+       (write_initial_runs) Pass increasing values to process_case() as
+       index.
+       (process_case) Add `idx' parameter and use it to initialize new
+       `idx' member.
+       (allocate_cases) Limit allocated buffers to max_buffers.
+       (compare_record_run) Use new `idx' member for last resort
+       comparison, for stability.
+       (end_run) Call casefile_sleep() on irs->casefile, to prevent
+       running out of file descriptors.
+       (struct merge_state) Removed.
+       (merge) Don't need to allocate cases.  Always use MAX_MERGE_ORDER
+       unless we have fewer runs left.  Always merge consecutive runs,
+       for stability.  Return the final run.
+       (mod) Removed.
+       (choose_merge) New function.
+       (merge_once) Rewritten.
+
+Mon Mar 14 21:05:42 2005  Ben Pfaff  <blp@gnu.org>
+
+       * cmdline.c: (static var testing_mode) Move into
+       parse_command_line().
+       
+Mon Mar 14 21:05:13 2005  Ben Pfaff  <blp@gnu.org>
+
+       * algorithm.c: (remove_range) New function.
+       (remove_element) New function.
+
+       * dictionary.c: (dict_delete_var) Use remove_element().
+
+       * 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
+       const.
+       
+Sun Mar 13 22:40:54 2005  Ben Pfaff  <blp@gnu.org>
+
+       First phase of making SORT CASES stable (PR 12313).
+
+       * sort.c: (struct indexed_case) New structure.
+       (do_internal_sort) Rewrite to make internal sorting stable.
+       (compare_case_dblptrs) Removed.
+       (compare_indexed_cases) New function.
+
+Sun Mar 13 22:38:40 2005  Ben Pfaff  <blp@gnu.org>
+
+       Clean-ups.
+
+       * casefile.c: (casereader_read_xfer_assert) New function.
+
+       * dictionary.c: (dict_compact_case) New function.
+
+       * flip.c: (struct flip_pgm) New member idx_to_fv.
+       (cmd_flip) Initialize idx_to_fv member.
+       (destroy_flip_pgm) Free idx_to_fv member.
+       (flip_sink_write) Use struct flip_pgm member instead of case_sink
+       member.
+       (flip_sink_write) Ditto.
+
+       * vfm.c: (write_case) Use dict_compact_case() instead of
+       compact_case().
+       (compact_case) Removed.
+       (storage_source_create) Removed `dict' parameter.  All references
+       updated.
+
+       * vfm.h: (struct case_source) Removed `value_cnt' member.  All
+       references removed.
+       (struct case_sink) Removed `dict', `idx_to_fv' members.  All
+       references removed.
+
+Sun Mar 13 22:35:55 2005  Ben Pfaff  <blp@gnu.org>
+
+       More AGGREGATE fixes.
+
+       * aggregate.c: (accumulate_aggregate_info) Implement NMISS and
+       NUMISS for strings.  Fix FOUT, POUT, FGT, FLT, FIN, FOUT for
+       strings.
+       (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.
+
+       * aggregate.c: (cmd_aggregate) Use discrete bool variables instead
+       of a bit-map.  Require proper subcommand ordering.  Make OUTFILE
+       subcommand mandatory.
+       (parse_aggregate_functions) Check that PIN, POUT, FIN, FOUT
+       functions' arguments are in the correct order and swap them if
+       not.
+       (accumulate_aggregate_info) Make SUM include weights.  Add various
+       string functions.
+       (dump_aggregate_info) Add various string functions.
+       (initialize_aggregate_info) Initialize int1 for MIN, MAX.
+
+       * sort.c: (sort_parse_criteria) Add parameter for returning
+       whether any directions were specified.  All callers updated.
+
 Sun Mar 13 14:54:27 WST 2005 John Darrington <john@darrington.wattle.id.au>
 
        * t-test.q: Fixed erroneous logic in compare_group_binary.
@@ -93,7 +252,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 (bug #12035).  Also clean up data-in.c a bit.
+       places (PR 12035).  Also clean up data-in.c a bit.
 
        * data-in.h: (enum) Add DI_IMPLIED_DECIMALS.
 
@@ -298,7 +457,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 Bug #11955.
+       Fix PR 11955.
 
        * aggregate.c: (parse_aggregate_functions) Code cleanup.
        Important part: get rid of spurious copying of function->format to
@@ -306,7 +465,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 Bug #11916, which was confusing a variable's `index' member
+       Fix PR 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.
        
@@ -499,7 +658,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 Bug #11483.
+       v->aux, which is no longer needed.  Fixes PR 11483.
 
 Sat Jan  1 19:01:16 WST 2005 John Darrington <john@darrington.wattle.id.au>