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