Finish converting struct variable to an opaque type. In this
[pspp-builds.git] / src / language / data-io / ChangeLog
index 23f215cfb4e6f6c9f7d6d0ac91b59165518caab3..5b49843a61cbbf554a2204046490d55b2e6483d2 100644 (file)
@@ -1,3 +1,154 @@
+Sat Dec  9 18:43:34 2006  Ben Pfaff  <blp@gnu.org>
+
+       * list.q (cmd_list): Use new var_create, var_destroy functions.
+
+Thu Nov 30 21:51:58 2006  Ben Pfaff  <blp@gnu.org>
+
+       * inpt-pgm.c (cmd_reread): Always return error code upon detecting
+       syntax error.  Fixes bug #18419.  Thanks to John Darrington for
+       reporting this bug.
+
+Sun Nov 19 09:17:45 2006  Ben Pfaff  <blp@gnu.org>
+
+       * data-list.c (parse_free): Follow documented (but odd) rule that
+       N format is treated as F format for free-field input.
+       
+       * data-reader.c (read_file_record): Drop new-line character from
+       input text lines.  This is symmetrical with the recently changed
+       dfm_put_record semantics.
+
+Thu Nov  2 20:56:03 2006  Ben Pfaff  <blp@gnu.org>
+
+       Implement SKIP keyword on DATA LIST.  Fixes bug #17099.
+       
+       * data-list.c: (struct data_list_pgm) Add `skip_records' members.
+       (cmd_data_list) Set skip_records based on user input.
+       (data_list_source_read) Skip records requested by user.
+
+Tue Oct 31 20:04:06 2006  Ben Pfaff  <blp@gnu.org>
+
+       * placement-parser.c: (PRS_TYPE_T) Now that struct fmt_spec uses
+       an enum fmt_type for its type member, we can't depend on the
+       ability to put negative values into that member as out-of-band
+       values, because enum fmt_type might be an unsigned type.  So use
+       values around SCHAR_MAX instead, because we know that SCHAR_MAX
+       will fit into any type, signed or unsigned, and there aren't
+       nearly that many format types.
+       (parse_var_placements) Add for_input parameter to specify whether
+       we're parsing input or output formats.  Update all callers.
+       (fixed_parse_columns) Ditto.
+       (fixed_parse_fortran) Ditto.
+       
+Tue Oct 31 18:21:48 2006  Ben Pfaff  <blp@gnu.org>
+
+       * print-space.c (print_space_trns_proc): Let dfm_put_record add
+       the new-line character, to match dfm_put_record change below.
+
+Sat Oct 28 11:57:19 2006  Ben Pfaff  <blp@gnu.org>
+
+       * data-writer.c (struct dfm_writer): Removed `bounce' member, and
+       all references to it.
+       (dfm_put_record) Change semantics so that it adds formatting
+       itself, such as new-line characters, instead of putting that
+       responsibility on the caller.  Also, pad binary records with
+       spaces instead of zeros, for compatibility.
+
+       * print.c (struct prt_out_spec) New member `sysmis_as_spaces'.
+       (struct print_trns) Remove `omit_new_lines' and all references,
+       since dfm_put_record() is taking care of that.  Add
+       `include_prefix'.
+       (internal_cmd_print) Allow an empty set of data to print.  Set
+       include_prefix.
+       (parse_specs) Allow an empty set of data to print.
+       (parse_variable_argument) Only add space with PRINT command.  Set
+       sysmis_as_spaces.
+       (print_trns_proc) Indent records if include_prefix is set, for
+       compatibility.  Output SYSMIS as spaces if sysmis_as_spaces is
+       set.  Put "1" in first column if PRINT EJECT is used with an
+       external output file.
+       (flush_records) Ditto.
+
+Sat Oct 28 16:19:57 WST 2006 John Darrington <john@darrington.wattle.id.au>
+
+       * data-reader.c: Eliminated references to extern variable getl_buf
+
+Sat Aug  5 08:25:07 2006  Ben Pfaff  <blp@gnu.org>
+
+       Fix bug #17329 in REREAD parsing, reported by John Darrington.
+
+       * inpt-pgm.c (cmd_reread): Fix file handle parsing.
+
+Mon Jul 31 10:32:31 2006  Ben Pfaff  <blp@gnu.org>
+
+       * print.c (parse_specs): Allow a comma between specifications.
+
+Sun Jul 16 19:57:10 2006  Ben Pfaff  <blp@gnu.org>
+
+       * automake.mk: (src_language_data_io_libdata_io_a_SOURCE) Add
+       print-space.c, placement-parser.c, placement-parser.h.
+
+       * data-list.c: Basically rewrote the whole thing.  Broke out a lot
+       of code into placement-parser.c.  Code is much cleaner now.
+
+       * placement-parser.c: New file.
+
+       * placement-parser.h: New file.
+
+       * print.c: Basically rewrote the whole thing.  Broke out PRINT
+       SPACE into print-space.c.  Code is much cleaner now.
+
+       * print-space.c: New file.
+
+Sat Jul  1 17:39:40 2006  Ben Pfaff  <blp@gnu.org>
+
+       Fix bug #11612, "q2c documentation does not agree with code".
+       
+       * list.q: Audit use of q2c "+" prefixes that indicate that a
+       command may appear multiple times.
+
+Sat Jul  1 20:44:22 2006  Ben Pfaff  <blp@gnu.org>
+
+       Fix bug #15786: System File Creation crashes if directoy is
+       nonexistent.
+       
+       * get.c (parse_write_command): Check that the any_writer open
+       succeeds.
+
+Tue Jun 27 22:44:28 2006  Ben Pfaff  <blp@gnu.org>
+
+       Fix regression in command name completion reported by John
+       Darrington.  Now completion is again state-dependent and occurs
+       only on the first line of a command.
+       
+       * inpt-pgm.c: (cmd_input_program) Reading of first token in
+       command moved into cmd_parse.
+
+Fri Jun  9 13:56:00 2006  Ben Pfaff  <blp@gnu.org>
+
+       Reform string library.
+       
+       * matrix-data.c (context): Use dynamic string.
+       (another_token) Deal with changed dfm_get_record() interface.
+       (mget_token) Ditto.
+       (force_eol) Ditto.
+
+       * data-list.c (struct data_list_pgm) Delete delims, delim_cnt
+       members, replacing them by struct string delims.  Update all
+       references to use struct string functions.
+       (cut_field) Change interface to avoid needing "end_blank", by
+       getting the data-reader to remember that state for us.  Change
+       internals to use substring.  Update both callers.
+
+       * data-reader.c (read_file_record): Use ds_read_stream().
+       (dfm_get_record) Change interface to return substring.  Updated
+       all callers.
+       (dfm_expand_tabs) Use ds_find_char().  Now maintain position
+       relative to end-of-line.  Use ds_swap().
+       (dfm_reread_record) Don't limit position by line length.
+       (dfm_column_start) Make parameter const.
+       (dfm_columns_past_end) New function.
+       (dfm_get_column) New function.
+
 Thu May 25 18:26:26 WST 2006 John Darrington <john@darrington.wattle.id.au>
 
        * print.c (print_trns_free): Made the code agree with the comment, by