f1132b2b49dc0336041639aa3e74bc68078525f8
[pspp-builds.git] / src / data / ChangeLog
1 Sun Jun 25 22:39:32 2006  Ben Pfaff  <blp@gnu.org>
2
3         * value-labels.c (value_to_string): When there's no value label,
4         format the variable according to its print format, instead of
5         always effectively using A or F format.
6
7 Mon Jun 19 18:05:42 WST 2006 John Darrington <john@darrington.wattle.id.au>
8
9         * casefile.c (casefile_get_random_reader): Nasty hack to get around 
10         the mode assertion.
11
12         * format.c: Removed tortological assertion.
13
14 Fri Jun  9 12:20:09 2006  Ben Pfaff  <blp@gnu.org>
15
16         Reform string library.
17         
18         * file-name.c (fn_interp_vars): Change interface to take a
19         substring as input.  Updated all users.
20         
21 Fri Jun  9 12:11:24 2006  Ben Pfaff  <blp@gnu.org>
22
23         * format.c (measure_is_valid): Really return false when m >=
24         n_MEASURES.
25
26 Tue Jun  6 18:46:26 2006  Ben Pfaff  <blp@gnu.org>
27
28         Implement random access to casefiles, for use in GUI.
29         
30         * casefile.c: (struct casereader) Add `random', `file_ofs',
31         `buffer_ofs' members.
32         (casefile_get_random_reader) New function.
33         (read_open_file) Break part into new function
34         seek_and_fill_buffer().
35         (fill_buffer) Update buffer_ofs, file_ofs.
36         (casereader_seek) New function.
37
38 Tue May 30 19:52:33 WST 2006 John Darrington <john@darrington.wattle.id.au>
39
40         * settings.c: Added call to i18n{done, init}.
41
42 Tue May  9 21:09:17 2006  Ben Pfaff  <blp@gnu.org>
43
44         * procedure.h: Add WARN_UNUSED_RESULT to procedure function
45         prototypes.
46
47 Tue May  9 21:08:05 2006  Ben Pfaff  <blp@gnu.org>
48
49         * casefile.c: Convert many uses of `int' to `bool'.
50
51 Sat May  6 22:49:43 2006  Ben Pfaff  <blp@gnu.org>
52
53         * transformations.c (trns_chain_destroy): Destroy chain's trns
54         member, to fix memory leak.
55
56 Sat May  6 22:48:30 2006  Ben Pfaff  <blp@gnu.org>
57
58         * storage-stream.c (storage_source_decapsulate): Destroy case
59         source to fix memory leak.
60
61 Sat May  6 22:46:47 2006  Ben Pfaff  <blp@gnu.org>
62
63         * scratch-reader.c (scratch_reader_read_case): Copy into existing
64         case passed as argument instead of initializing the argument as a
65         case.  Fixes memory leak that showed up in
66         tests/command/aggregate.sh with scratch files.
67
68 Sat May  6 22:45:55 2006  Ben Pfaff  <blp@gnu.org>
69
70         * procedure.c (proc_done): Destroy default_dict, to fix memory
71         leak.
72
73 Sat May  6 22:44:44 2006  Ben Pfaff  <blp@gnu.org>
74
75         Simplify procedure_with_splits().
76         
77         * procedure.c (struct split_aux_data): Removed case_count member.
78         (procedure_with_splits) Don't initialize case_count.
79         (split_procedure_case_func) Check whether prev_case is null
80         instead of case_count.
81         (split_procedure_end_func) Ditto.
82
83 Sat May  6 22:42:23 2006  Ben Pfaff  <blp@gnu.org>
84
85         * case.c (case_move): Do nothing if dst and src are the same
86         object.
87         (case_try_create) Merge two similar cases.
88         (case_copy) Unshare only if data must be actually copied.
89
90 Sun May  7 10:04:06 WST 2006 John Darrington <john@darrington.wattle.id.au>
91
92         * data-in.c data-out.c dictionary.c sys-file-reader.c
93         sys-file-writer.c variable.c variable.h:  Reworked very long string
94         support for better encapsulation.
95
96 Sat May  6 19:02:00 2006  Ben Pfaff  <blp@gnu.org>
97
98         * value-labels.c (val_labs_can_set_width): New function.
99         (val_labs_set_width) Clear labels if increasing width to long
100         string.
101         (val_labs_destroy) Remove unneeded test for null.
102         
103 Sat May  6 16:14:08 2006  Ben Pfaff  <blp@gnu.org>
104
105         * value-labels.h: Remove unneeded dependency on variable.h.
106
107 Sat May  6 15:58:36 2006  Ben Pfaff  <blp@gnu.org>
108
109         Get rid of `char *c' member in union value, for cleanliness.
110         
111         * value.h: (union value) Remove `c' member.
112
113 Sat May  6 15:36:59 2006  Ben Pfaff  <blp@gnu.org>
114
115         Make dictionary compacting functions a little more general.
116         
117         * sys-file-writer.c (sfm_open_writer): Use
118         dict_compacting_would_change().
119         (does_dict_need_translation) Removed.
120
121 Sat May  6 15:35:42 2006  Ben Pfaff  <blp@gnu.org>
122
123         Make dictionary compacting functions a little more general.
124         
125         * dictionary.c (dict_needs_compaction): Rename
126         dict_compacting_would_shrink().  Update all callers.
127         (dict_compacting_would_change) New function.
128         
129 Sat May  6 14:25:49 2006  Ben Pfaff  <blp@gnu.org>
130
131         * sys-file-writer.c: (does_dict_need_translation) Fix bug:
132         inverted return value (!).
133
134 Sat May  6 13:37:52 2006  Ben Pfaff  <blp@gnu.org>
135
136         Continue reforming procedure execution.  
137
138         * procedure.c: Search and replace "vfm" by "proc".  Notably:
139         (static var vfm_source) Rename proc_source.  Update all
140         references.
141         (static var vfm_sink) Rename proc_sink.  Update all references.
142         
143 Sat May  6 12:38:55 2006  Ben Pfaff  <blp@gnu.org>
144
145         Continue reforming procedure execution.  In this phase, remove
146         PROCESS IF, which was deprecated anyway and can be easily
147         simulated with TEMPORARY followed by SELECT IF.
148
149         * procedure.c: (open_active_file) Don't call
150         add_process_if_trns().
151         (discard_variables) Get rid of redundant call to
152         proc_cancel_all_transformations().
153         (add_process_if_trns) Removed.
154         (process_if_trns_proc) Removed.
155         (process_if_trns_free) Removed.
156
157 Sat May  6 10:58:05 2006  Ben Pfaff  <blp@gnu.org>
158
159         Continue reforming procedure execution.  In this phase, add
160         `const' to the case passed to procedure()'s callback.
161
162         Updated all users of procedure() as well.
163         
164         * procedure.c: (struct write_case_data) Add "const" to ccase
165         parameter for case_func member.
166         (procedure) Add "const" to ccase parameter for proc_func
167         parameter.
168         (multipass_case_func) Make ccase parameter const.
169         (internal_procedure) Add "const" to ccase parameter for case_func
170         parameter.
171         (split_procedure_case_func) Make ccase parameter const.
172         (multipass_split_case_func) Make ccase parameter const.
173         
174 Sat May  6 10:30:33 2006  Ben Pfaff  <blp@gnu.org>
175
176         Continue reforming procedure execution.  In this phase, get rid of
177         the output code for SPLIT FILE groups in procedure.c, which really
178         shouldn't be doing any output.  Move it into the individual
179         procedures instead.  This also adds some flexibility.
180
181         Updated many users of procedure_with_splits() and
182         multipass_procedure_with_splits() to call
183         output_split_file_values() and to deal with increased use of
184         const.
185
186         * procedure.c: (struct split_aux_data) Add "const struct ccase *"
187         parameter to begin_func member.
188         (procedure_with_splits) Add "const struct ccase *" parameter to
189         begin_func parameter.  Make ccase parameter const in proc_func
190         parameter.
191         (split_procedure_case_func) Don't dump split file group.  Pass
192         case to begin_func.
193         (dump_splits) Moved to language/dictionary/split-file.c as
194         output_split_file_values().
195         (struct multipass_split_aux_data) Add "const struct ccase *"
196         parameter to split_func member.
197         (multipass_procedure_with_splits) Add "const struct ccase *"
198         parameter to split_func parameter.
199         (multipass_split_case_func) Save new SPLIT FILE case before
200         outputting case.
201         (multipass_split_output) Pass saved SPLIT FILE case to split_func.
202         
203 Fri May  5 22:48:50 2006  Ben Pfaff  <blp@gnu.org>
204
205         Continue reforming procedure execution.  Change
206         internal_procedure() so that it calls open_active_file() and
207         close_active_file(), which isolates most of the actual procedure
208         functionality.
209
210         * procedure.c: (struct write_case_data) Rename `proc_func' member
211         to `case_func' and update all references.
212         (procedure) Rewrite as one-line wrapper around
213         internal_procedure().
214         (struct multipass_aux_data) New.
215         (multipass_callback) Renamed multipass_case_func().  Use struct
216         multipass_aux_data as auxiliary data.
217         (multipass_end_func) New function.
218         (multipass_procedure) Rewrite as wrapper for internal_procedure()
219         that uses multipass_case_func, multipass_end_func.
220         (internal_procedure) Add `end_func' argument.  Move optimization
221         of trivial case in here.  Move call to open_active_file() and
222         close_active_file() in here.  Now assert that vfm_source is
223         non-null.
224         (procedure_with_splits_callback) Rename
225         split_procedure_case_func().
226         (split_procedure_end_func) New function.
227         (multipass_split_callback) Rename multipass_split_case_func.
228         (multipass_split_end_func) New function.
229         (discard_variables) No need to test for nonnull vfm_source.
230
231 Fri May  5 21:34:02 2006  Ben Pfaff  <blp@gnu.org>
232
233         Continue reforming procedure execution.  Get rid of unused member.
234
235         * procedure.c: (struct write_case_data) Remove `cases_analyzed'
236         member.
237         (write_case) Don't increment cases_analyzed.
238
239 Thu May  4 21:50:11 2006  Ben Pfaff  <blp@gnu.org>
240
241         Continue reforming procedure execution.  In this phase, move
242         procedure.c and procedure.h from src to src/data.  Update
243         makefiles and #includes accordingly.
244
245         * procedure.c: Moved here from src/.
246
247         * procedure.h: Moved here from src/.
248
249 Wed May  3 22:42:12 2006  Ben Pfaff  <blp@gnu.org>
250
251         Continue reforming procedure execution.  In this phase, get rid of
252         many global variables, consolidating procedure execution in
253         procedure.c.  Encapsulate transformations in new "struct
254         trns_chain".  Also, change implementation of N OF CASES, FILTER,
255         and PROCESS IF from special cases to transformations.
256          
257         * automake.mk: (src_data_libdata_a_SOURCES) Add transformations.c,
258         transformations.h.
259
260         * dictionary.c: (global variable default_dict) Move to
261         src/procedure.c.
262
263         * variable.h: (TRNS_*) Move to transformations.h.
264         (struct transformation) Move to transformations.c.
265
266 Thu May  4 13:47:06 WST 2006 John Darrington <john@darrington.wattle.id.au>
267
268         * sys-file-reader.c: Fixed invalid read problems.
269
270 Tue May  2 15:57:10 2006  Ben Pfaff  <blp@gnu.org>
271
272         * storage-stream.c: Add missing function comments.
273
274 Tue May  2 15:50:21 2006  Ben Pfaff  <blp@gnu.org>
275
276         Continue reforming procedure execution.  In this phase, add some
277         new, needed functionality to storage-stream.
278
279         * storage-stream.c: (storage_source_decapsulate) New function.
280
281 Tue May  2 15:43:36 2006  Ben Pfaff  <blp@gnu.org>
282
283         * variable.c (width_to_bytes): Declarations must precede
284         statements for C90 compliance.
285
286 Tue May  2 10:42:05 WST 2006 John Darrington <john@darrington.wattle.id.au>
287
288         * data-out.c, data-in.c, variable.c, variable.h: New functions 
289         copy_mangle and copy_demangle for reading/writing cases; emulates the 
290         way SPSS deals with strings > 255 bytes.
291
292         * sys-file-reader.c sys-file-writer.c: Added support for Record 7, 
293         subtype 14 needed for strings longer than 255 bytes.
294
295         * dictionary.c, format.def, value.c : Updated to use MAX_STRING 
296         instead of literal values. Also fixed some constness issues.
297
298         * format.h: Constness
299
300         * sfm-private.h: Renamed the case_size identifier, since I discovered 
301         that SPSS's respect for this variable is very nominal.
302
303 Mon May  1 15:45:42 2006  Ben Pfaff  <blp@gnu.org>
304
305         Change case limit type from int to size_t.
306
307         * dictionary.c: (struct dictionary) Change type of case_limit
308         member.
309         (dict_get_case_limit) Change return type.
310         (dict_set_case_limit) Change parameter type.
311
312 Wed Apr 26 20:01:19 2006  Ben Pfaff  <blp@gnu.org>
313
314         * variable.h: (struct variable) Rename `reinit' member as `leave'
315         and invert sense.  Fix up all references.
316
317 Wed Apr 26 19:39:28 2006  Ben Pfaff  <blp@gnu.org>
318
319         Continue reforming procedure execution.  In this phase, break
320         procedure.c into multiple files.
321         
322         * automake.mk: (src_data_libdata_a_SOURCES) Add all the new files.
323
324         * case-sink.c: New file.
325
326         * case-sink.h: New file.
327         
328         * case-source.c: New file.
329
330         * case-source.h: New file.
331         
332         * storage-stream.c: New file.
333
334         * storage-stream.h: New file.
335
336 Wed Apr 26 14:55:19 2006  Ben Pfaff  <blp@gnu.org>
337
338         * variable.h: (struct variable) Remove `init' member and all
339         references to it from other files.  It was initialized in several
340         places, but nothing really ever used it for anything worthwhile.
341         Thanks to Jason Stover for pointing out how confusing this
342         member is.
343
344 Sun Apr 23 22:04:45 2006  Ben Pfaff  <blp@gnu.org>
345
346         Continue reforming error message support.  In this phase, get rid
347         of message "titles" and put the message text in `struct error'.
348         Now `struct error' encapsulates a message more properly.
349         
350         * casefile.c: (io_error) Use err_msg() instead of err_vmsg().
351         Format message ourselves.
352
353         * data-in.c: (vdls_error) Ditto.
354
355         * por-file-reader.c: (error) Ditto.
356
357         * sys-file-reader.c: (corrupt_msg) Ditto.
358
359 Sun Apr 16 18:49:51 2006  Ben Pfaff  <blp@gnu.org>
360
361         GNU standards require "file name" instead of "filename" in
362         documentation.  It's nice for our code to follow the convention
363         too.
364         
365         * casefile.c: (struct casefile) Rename `filename' member to
366         `file_name'.  Updated all references.
367
368         * file-name.c: [!unix] (struct file_identity) Rename
369         normalized_filename member to normalized_file_name.  Updated all
370         references.
371
372 Sun Apr 16 18:35:33 2006  Ben Pfaff  <blp@gnu.org>
373
374         We don't really support anything but Unix-like environments well,
375         so we might as well de-obfuscate by writing directory and path
376         separators explicitly.
377
378         * file-name.h: (macro DIR_SEPARATOR) Removed.  Changed all usages
379         to just '/'.
380         (macro PATH_SEPARATOR) Removed.  Changed all usages to just ':'.
381         (macro DIR_SEPARATOR_STRING) Removed.  Changed all usages to just
382         "/".
383         (macro PATH_SEPARATOR_STRING) Removed.  Changed all usages to just
384         ":"
385
386 Sun Apr 16 18:28:35 2006  Ben Pfaff  <blp@gnu.org>
387
388         GNU standards require "file name" instead of "filename" in
389         documentation.  It's nice for our code to follow the convention
390         too.
391         
392         * filename.c: Rename to file-name.c.
393
394         * filename.h: Rename to file-name.h.  Update all inclusions.
395         Update header guards.
396
397         * automake.mk: Update file names.
398
399 Sun Apr 16 16:42:47 2006  Ben Pfaff  <blp@gnu.org>
400
401         * filename.c: (fn_dirname) Renamed fn_dir_name(), all references
402         updated.
403         (fn_basename) Removed (dead code).
404         (fn_absolute_p) Renamed fn_is_absolute(), all references updated.
405         (fn_special_p) Renamed fn_is_special(), all references updated.
406         (fn_exists_p) Renamed fn_exists(), all references updated.
407
408 Sun Apr 16 16:33:58 2006  Ben Pfaff  <blp@gnu.org>
409
410         * filename.c: (fn_tilde_expand) Rewrite for cleaner code.  
411         Also, now it only tilde-expands file names, not paths.
412         (fn_search_path) Tilde-expand one directory at a time.
413
414 Sun Apr 16 16:28:06 2006  Ben Pfaff  <blp@gnu.org>
415
416         * filename.c: (fn_search_path) rewrite for cleaner code.  Also,
417         get rid of non-Unixlike version of the code, which has probably
418         never been tested.
419         (fn_prepend_dir) Removed (dead code).
420
421         * filename.h: (macro DIR_SEPARATOR_STRING) New.
422         (macro PATH_SEPARATOR_STRING) New.
423 Sun Apr 16 16:05:28 2006  Ben Pfaff  <blp@gnu.org>
424
425         Continue reforming error message support.  In this phase, we get
426         rid of VM() and the other msg() support for "verbosity", replacing
427         it by a new function verbose_msg().
428
429         * filename.c: (fn_search_path) Use verbose_msg() instead of
430         msg(VM(), ...).  
431
432 Sat Apr 15 19:53:19 2006  Ben Pfaff  <blp@gnu.org>
433
434         * sfm-private.h: Get rid of #defines after #error, which makes no
435         sense.
436
437 Sat Apr 15 19:48:57 2006  Ben Pfaff  <blp@gnu.org>
438
439         Get rid of our own int32 type in favor of the standard int32_t
440         type.
441         
442         * sfm-private.h: (int32 macro) Don't define this anymore.  Do
443         include <stdint.h>.
444
445         * sys-file-reader.c: Use int32_t instead of int32 throughout.
446         
447         * sys-file-writer.c: Use int32_t instead of int32 throughout.
448
449 Sat Apr 15 19:36:47 2006  Ben Pfaff  <blp@gnu.org>
450
451         Remove ill-considered file routines that are no longer used.
452         
453         * filename.c: (fn_open_ext) Removed.
454         (fn_close_ext) Removed.
455
456         * filename.h: (struct file_ext) Removed.
457
458 Mon Apr  3 13:22:39 2006  Ben Pfaff  <blp@gnu.org>
459
460         * variable.c (var_is_valid_name): Move declarations before code
461         for C90 compliance.
462
463 Tue Apr  4 15:28:40 WST 2006 John Darrington <john@darrington.wattle.id.au>
464
465         * filename.ch (fn_interp_vars): Fixed small buglet.
466
467 Tue Mar 28 13:47:16 WST 2006 John Darrington <john@darrington.wattle.id.au>
468         
469         * filename.[ch] (fn_interp_vars): Changed the signature and semantics
470         so as to modify the string inline.   Thus makeing it easier to
471         destroy the results when no longer needed.
472         
473 2006-03-25  Jason Stover  <jhs@math.gcsu.edu>
474
475         * category.c (cat_stored_values_destroy): Fixed memory leak.
476
477 Fri Mar 24 18:15:41 2006  Ben Pfaff  <blp@gnu.org>
478
479         Add some missing frees.  Thanks to John Darrington for reporting
480         these.
481
482         * any-writer.c (any_writer_close): Free writer.
483
484         * any-reader.c (any_reader_close): Free reader.
485
486 Mon Mar 20 16:33:53 2006  Ben Pfaff  <blp@gnu.org>
487
488         * por-file-reader.c: (error) Mark as NO_RETURN.
489
490 Sat Mar 11 15:06:07 WST 2006 John Darrington <john@darrington.wattle.id.au>
491
492         * settings.c: Changed default value of scompress to true.
493
494 Sat Mar  4 13:22:51 2006  Ben Pfaff  <blp@gnu.org>
495
496         * sfm-private.h: Include variable.h, to get SHORT_NAME_LEN.
497
498         * value.h: Remove check on MAX_SHORT_STRING, which I don't think
499         really applies.
500
501         * variable.h: Move definition of SHORT_NAME_LEN, LONG_NAME_LEN
502         here from pref.h.orig.
503
504 Sat Mar  4 12:50:48 WST 2006 John Darrington <john@darrington.wattle.id.au>
505
506         * sys-file-reader.c: Fixed bug reading compressed files.
507
508 Thu Mar  2 08:40:33 WST 2006 John Darrington <john@darrington.wattle.id.au>
509
510         * Numerous renames.  See src/ChangeLog for details.
511         
512         * Moved files from src directory