X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fdata%2FChangeLog;h=a74b7dd4739d5ccd11ef18933791ce99d57ad911;hb=fdcc4b6875ccdbf7bd01bc401e87afbeb71c2bfd;hp=cb0116e8239d3a0577c4f48bbdb01df3b85b5b96;hpb=a81a87da6616bf36a019a501c468cd61422a12b1;p=pspp-builds.git diff --git a/src/data/ChangeLog b/src/data/ChangeLog index cb0116e8..a74b7dd4 100644 --- a/src/data/ChangeLog +++ b/src/data/ChangeLog @@ -1,3 +1,156 @@ +2007-08-12 Ben Pfaff + + * dictionary.c (dict_dump): New function. + +2007-08-12 Ben Pfaff + + Drop dict_compactor in favor of using the new struct case_map. + + * dictionary.c (struct copy_map): Removed. + (struct dict_compactor): Removed. + (dict_make_compactor): Removed. + (dict_compactor_compact): Removed. + (dict_compactor_destroy): Removed. + + * procedure.c (struct data_set): Change `compactor' member to be a + struct case_map *. + (proc_open): Use case_map_to_compact_dict instead of + dict_make_compactor. + (proc_casereader_read): Use case_map_execute instead of + dict_compactor_compact. + (proc_commit): Use case_map_destroy instead of + dict_compactor_destroy. + + * scratch-writer.c (struct scratch_writer): Change `compactor' + member to be a struct case_map *. + (scratch_writer_open): Use case_map_to_compact_dict instead of + dict_make_compactor. + (scratch_writer_casewriter_write): Use case_map_execute instead of + dict_compactor_compact. +o +2007-08-12 Ben Pfaff + + * automake.mk: Add case-map.c, case-map.h. + + * case-map.c: New file. + + * case-map.h: New file. + +2007-08-12 Ben Pfaff + + * dictionary.c (dict_compact_values): Don't delete scratch + variables as well as compacting case indexes. Update all callers. + (dict_get_compacted_value_cnt): Rename dict_count_values and + change interface. Update all callers. + (dict_get_compacted_value_cnt): Remove. + (dict_compacting_would_shrink): Remove. + (dict_compacting_would_change): Remove. + (dict_make_compactor): Add new parameter. Update all callers. + + * procedure.c (proc_casereader_read): Use casewriter_get_value_cnt + instead of dict_count_values, changing an O(N) operation into + O(1). + +2007-08-12 Ben Pfaff + + * casereader.c (casereader_read): Don't require cases read by a + casereader to be exactly the expected size: as long as they're big + enough, it's OK. + +2007-08-12 Ben Pfaff + + Make casewriters keep track of the number of `union value's in + each case. This is useful for two reasons: casewriter_write can + then check that the case being written is large enough, and later + recipients of the casewriter can determine the size of the case. + + * casewriter-translator.c (casewriter_create_translator): Add + value_cnt parameter. + + * casewriter.c (struct casewriter): Add value_cnt member. + (casewriter_write): Check that the case passed in is big enough. + (casewriter_get_value_cnt): New function. + (casewriter_create): Add value_cnt parameter. + +2007-08-09 Ben Pfaff + + Fix bug reported by Jason Stover. + * settings.c: Move get_termcap_viewport and in particular the + #include for to the end of the file. curses.h + redefines bool on some systems (e.g. OpenBSD), which causes + disagreement between uses of bool before its inclusion and + afterward. + Tested by Jason Stover. + +2007-07-29 Ben Pfaff + + Provisional fix for bug #18692 and bug #20161. Reviewed by John + Darrington. + + * file-name.c (fn_open): Only pass "r" or "w" to popen as mode + argument (never "rb" or "wb") because SUSv3 says that only those + modes are defined, and glibc in fact rejects other modes. + + Open portable files with fn_open so that they can be read from + pipes. Fix missing fh_close call to go along with fh_open. + Report an error if the file close reports an error. + * por-file-reader.c (close_reader): New function. + (por_file_casereader_destroy): Use close_reader. + (pfm_open_reader): Open file with fn_open. + +2007-07-28 Ben Pfaff + + Make PSPP able to read all the portable files I could find on the + web. Thanks to John Darrington for review. Bug #17620. + * por-file-reader.c (struct pfm_reader): New member `line_length'. + (error): Print file offset in hexadecimal. + (warning): New function. + (advance): Treat lines less than 80 bytes long as padded to 80 + bytes with spaces. + (pfm_open_reader): Call read_documents if we find an "E" record. + (convert_format): Convert invalid formats to the default format + instead of aborting reading the file. + (read_variables): Rename duplicate variable names instead of + aborting reading the file. + (read_value_label): Allow string variables of different widths to + be assigned value labels in the same record. Replace duplicate + value labels instead of aborting. + (read_documents): New function. + + * por-file-writer.c (pfm_open_writer): Call write_documents if the + dictionary has documents. + (write_documents): New function. + +2007-07-25 Ben Pfaff + + Fix bugs related to bug #17213. + + * settings.c: Use HAVE_LIBNCURSES instead of HAVE_LIBTERMCAP, + since the former is what config.h has. Include the needed ncurses + headers. + (static var echo) Rename to `do_echo' because the original name is + the same as an ncurses identifier. + (get_termcap_viewport) Use error instead of msg. + + * file-name.c (fn_interp_vars): Fix interpolation of $VARS. + (fn_close): Don't close stdin, stdout, stderr. + +2007-07-26 John Darrington + + * procedure.c procedure.h: Added callbacks which get invoked whenever + a dataset's transformation chain changes. + +2007-07-24 Ben Pfaff + + Fix bug #6113. + * sys-file-writer.c (write_variable_display_parameters): Use new + var_default_display_width function to choose display width of + segments after the first one in a given variable. + * variable.c (var_create): Use var_default_display_width to pick + new variable's display width. + (var_default_display_width): New function. + Reviewed by John Darrington. + 2007-07-24 Ben Pfaff Fix bug #20427.