X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fdata%2FChangeLog;h=73e611832f6665900b05880f70cb86cef2e73ba1;hb=d22c3971e926ceaf62416c6482fe0fb1dc5407f0;hp=0da0c80e94a20480fddd8b018a3b62053fd6393f;hpb=37273a2e5b058a1907bc7b4b5bf666c64e0afdbb;p=pspp diff --git a/src/data/ChangeLog b/src/data/ChangeLog index 0da0c80e94..73e611832f 100644 --- a/src/data/ChangeLog +++ b/src/data/ChangeLog @@ -1,3 +1,184 @@ +2007-09-13 John Darrinton + + * value.c value.h (create_value): New function. + +2007-09-12 Ben Pfaff + + Make it clear that translator casereader and casewriter translate + functions are supposed to destroy their input case. + + * casereader-translator.c (struct casereader_translator): Change + input case parameter of translate member function from const + struct ccase * to struct ccase *. + (casereader_create_translator): Ditto, for translate parameter. + + * casewriter-translator.c (struct casewriter_translator): Ditto. + (casewriter_create_translator): Ditto. + +2007-08-27 John Darrinton + + * sys-file-reader.c (read_display_parameters): Force display width + to 8, if the sys file says 0 (like SPSS does). + +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. + +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. + * por-file-writer.c (write_variables): Write weight variable. + Reviewed by John Darrington. + 2007-07-23 Ben Pfaff Improvements to system file reader and writer. @@ -129,6 +310,8 @@ (write_zeros): New function. (write_spaces): New function. + Reviewed by John Darrington. + 2007-07-22 Ben Pfaff Don't try to write very long strings to portable files. The @@ -140,11 +323,13 @@ (write_value): Limit width of value written to MAX_POR_WIDTH. (write_variables): Limit width of variable and its output formats to MAX_POR_WIDTH. + Reviewed by John Darrington. 2007-07-22 Ben Pfaff * sys-file-reader.c (read_variable_to_value_map): Use max_warnings local variable instead of literal 5. + Reviewed by John Darrington. 2007-07-22 Ben Pfaff @@ -189,6 +374,8 @@ (var_clear_short_name): Renamed var_clear_short_names, changed to clear all short names. + Reviewed by John Darrington. + 2007-07-22 Ben Pfaff * variable.c (var_set_width): Use new var_set_width function. @@ -199,6 +386,8 @@ * format.c (fmt_default_for_width): New function. (fmt_resize): New function. + Reviewed by John Darrington. + 2007-07-18 John Darrington * datasheet.c (datasheet_delete_columns): Added assertion to check