Update for 0.4.0.
[pspp-builds.git] / NEWS
1 PSPP NEWS -- history of user-visible changes.
2 Time-stamp: <2005-07-03 21:25:56 blp>
3 Copyright (C) 1996-9, 2000 Free Software Foundation, Inc.
4 See the end for copying conditions.
5
6 Please send PSPP bug reports to bug-gnu-pspp@gnu.org.
7 \f
8 Changes from 0.3.0 to 0.4.0:
9
10   New build dependencies:
11
12     * The GNU Scientific Library (libgsl), version 1.6 or later.
13
14     * The GNU multiprecision arithmetic library (libgmp).
15
16     * libplot from GNU plotutils is optional.  Without it, the new
17       graphing features will not work.  If you do not have it
18       installed, you must run `configure' with --without-libplot.
19
20   Newly implemented commands and statistical features:
21
22     * EXAMINE, including its graphing features.
23
24     * FREQUENCIES now supports percentiles.
25
26     * ONEWAY.
27
28     * PERMISSIONS.
29
30     * SHOW.
31
32     * SORT CASES now sorts stably, that is, two cases with equal sort
33       criteria will be in the same relative order before and after the
34       sort.
35
36     * T-TEST (re-written).
37
38     * DATE and USE.  These commands are parsed but otherwise ignored,
39       to enhance compatibility with certain command files that invoke
40       them unnecessarily.
41
42     * VARIABLE WIDTH, VARIABLE ALIGNMENT, and VARIABLE LEVEL.  These
43       currently have no effect on PSPP output, but their values are
44       written to and read from system files and thus may affect
45       third-party software.
46
47     * SET EPOCH implemented.
48
49     * DATA LIST FREE and DATA LIST LIST now support arbitrary field
50       delimiters.
51
52     * FILE HANDLE now supports custom tab widths.
53
54   Long variable names (and other identifiers) are now supported.  Up
55   to the first 64 bytes of each identifier is significant.  PSPP now
56   reads and writes system files compatible with SPSS version 12.
57
58   New --algorithm and --syntax command line options allow
59   SPSS-compatible or enhanced modes to be selected.
60
61   Support for transformation expressions has been rewritten and
62   significantly improved.  Refer to the manual for details.
63
64   Calculation of moments (mean, standard deviation, kurtosis,
65   skewness) has been rewritten and should now be more accurate.  In
66   --algorithm=enhanced mode moments may be more accurate than SPSS in
67   some cases.
68
69   Numerous bugs have been fixed, too many to mention here.  Many new
70   tests have been added, leading to the discovery and fixing of many
71   of these bugs.
72
73   The ASCII output driver can now squeeze multiple blank lines into
74   single blank lines.
75
76   Much of the code has been rewritten and refactored.  It is now much
77   cleaner.
78
79   The FILE TYPE and REPEATING DATA commands have been disabled for
80   this release because their implementations were deemed too buggy to
81   be useful.  They will be fixed and replaced in a future release.
82
83   New pspp-mode for Emacs (in pspp-mode.el).
84
85   Added rudimentary command-line completion for interactive input.
86
87   lib/julcal and lib/dcdflib are no longer used, so they have been
88   removed.
89
90   For developers, the build system now requires Autoconf 2.58 and
91   Automake 1.7.  The included gettext has been updated to version
92   0.12.1.
93
94 Version 0.3.0 changes since 0.2.3:
95
96   Bugs fixed:
97
98     * Using alphanumeric variables in functions under AGGREGATE
99       segfaulted.  Fixed.
100
101     * Under certain circumstances, the final case would be omitted
102       from the results of an AGGREGATE operation.  Fixed.
103
104     * Undefined behavior was invoked by referencing a freed pointer
105       under certain circumstances.  Fixed.
106
107     * A wrong record size was displayed when paging the active file to
108       disk.  Fixed.
109
110     * Not having enough temporary space for sorting caused a core
111       dump.  Fixed.
112
113     * Syntax errors in function descriptions on AGGREGATE caused core
114       dumps.  Fixed.
115
116     * A null pointer was dereferenced, causing a core dump, when
117       PERCENTILES was specified on FREQUENCIES.  This fixes the
118       problem, but PSPP still doesn't calculate percentiles.
119
120     * SORT always sorted in ascending order.  Fixed.
121
122     * Some minor memory leaks in the expression parser were removed.
123
124     * Many assertions fixed for strict ANSI C compliance.
125
126   New features:
127
128     * SET ECHO ON now implemented, but turned off by default.
129
130     * PRINT specifier supported on END REPEAT.
131
132   Other:
133
134     * System libgmp2 library is used if installed instead of
135       unconditionally using the included libgmp2 subset.
136
137     * Extensive code cleanup, which continues.
138
139     * Added CORRELATIONS command parser, but not implemented.
140
141 Version 0.2.3 changes since 0.2.2:
142
143   Bugs fixed:
144
145     * SPLIT FILE with a string variable caused a core dump.  Fixed.
146
147     * Nested INCLUDEs didn't work.  Fixed.
148
149     * The MATCH FILES procedure set the values of variables not present
150       to 0.  It should have been SYSMIS.  This is now fixed.
151
152     * The REMARK command was too aggressive about skipping lines.  It
153       didn't like being the last command in a file.
154
155     * Comment parsing wasn't consistent with the rest of the code in its
156       idea of where one command ends and another starts.  This meant
157       that sometimes commands would be mysteriously ignored.  Thanks to
158       Dr. Dirk Melcher <BZN-mdksh@t-online.de> for reporting this bug.
159
160     * The TABLE subcommand on MATCH FILES worked only erratically at
161       best.  This fixes it.  Thanks to Dr. Dirk Melcher
162       <BZN-mdksh@t-online.de> for reporting this bug.
163
164     * VARIABLE LABELS rejected a slash before the first variable
165       specification, contradicting the documentation.  Thanks to Walter
166       M. Gray <graywm@northernc.on.ca> for reporting this bug.
167
168     * Because of an incorrect optimization in memory allocation,
169       CROSSTABS sometimes segfaulted when asked to output multiple
170       tables.  Thanks to Walter M. Gray <graywm@northernc.on.ca> for
171       reporting this bug.
172
173     * CROSSTABS didn't display value labels for column and row
174       variables.  Thanks to Walter M. Gray <graywm@northernc.on.ca> for
175       reporting this bug.
176
177     * WRITE didn't write line ends.  Fixed.  Thanks to Dr. Dirk Melcher
178       <BZN-mdksh@t-online.de> for reporting this bug.
179
180     * The TABLE subcommand on MATCH FILES worked only erratically at
181       best.  This fixes it.  Thanks to Dr. Dirk Melcher
182       <BZN-mdksh@t-online.de> for reporting this bug.
183
184     * VARIABLE LABELS rejected a slash before the first variable
185       specification, contradicting the documentation.  Thanks to Walter
186       M. Gray <graywm@northernc.on.ca> for reporting this bug.
187
188     * Because of an incorrect optimization in memory allocation,
189       CROSSTABS sometimes segfaulted when asked to output multiple
190       tables.  Thanks to Walter M. Gray <graywm@northernc.on.ca> for
191       reporting this bug.
192
193     * CROSSTABS didn't display value labels for column and row
194       variables.  Thanks to Walter M. Gray <graywm@northernc.on.ca> for
195       reporting this bug.
196
197     * WRITE didn't write line ends.  Fixed.  Thanks to Dr. Dirk Melcher
198       <BZN-mdksh@t-online.de> for reporting this bug.
199
200     * MATCH FILES corrupted memory and dumped core on some syntax
201       errors.  Fixed.
202
203     * MATCH FILES should set numeric values not available to the
204       system-missing value, not to 0.  Thanks to Dr. Dirk Melcher
205       <BZN-mdksh@t-online.de> for reporting this bug.
206
207     * KEEP didn't work properly on the SAVE procedure.  Fixed.  Thanks
208       to Ralf Geschke <ralf@kuerbis.org> for reporting this bug.
209
210     * Memory leak fix.
211
212     * Some systems didn't like the way open_file was coded.  Thanks to
213       Hankin <hankin@rogue.consultco.com> for pointing this out.
214
215     * The SAVE procedure didn't save long string variables properly.
216       Fixed by this patch.  Thanks to Hankin
217       <hankin@rogue.consultco.com> for this patch.
218
219     * Minor documentation fixes for MATCH FILES.
220
221 Version 0.2.2 changes since 0.2.1:
222
223   Bugs fixed:
224
225     * Fix behavior of PRINT SPACE for negative arguments.
226
227     * Fix reading some unusual system files.
228
229     * Fix LIST problems with very long variables.  Thanks to Hankin
230       <hankin@dunno.com> for this bug report.
231
232     * Fix problems with some string format specifiers.
233
234     * Fix use of $CASENUM in expressions.  Thanks to Dirk Melcher
235       <BZN-mdksh@t-online.de> for reporting this bug.
236
237     * Additional DATA LIST FREE and DATA LIST LIST fixes.  Thanks to
238       Hankin <hankin@dunno.com> again on this one.
239
240     * Sometimes you may encounter a PSPP script that has to be
241       interpreted in interactive mode.  Now you can use the -i flag to
242       do this.
243
244     * Warnings for egcs 1.1.1 cleaned up.  (However you'll get lots of
245       `unused variable' warnings under gcc 2.7.2.3, fixing this will
246       take more effort.)
247
248     * Tests fixed.
249
250     * The files in gmp need the internationalization directory in
251       their include path.  Thanks to OKUJI Yoshinori
252       <okuji@kuicr.kyoto-u.ac.jp> for pointing this out.
253
254 Version 0.2.1 changes since 0.2.0:
255
256   Bugs fixed:
257
258     * Remember to include examples/ directory in distribution :-)
259
260     * Fixed gmp compile problems for some non-i386 architectures.
261       Thanks to Hans Olav Eggestad <olav@jordforsk.nlh.no> and others
262       for reporting this.
263
264     * DATA LIST FREE and DATA LIST LIST parsing of input files is now
265       matches the documented behavior exactly, and error messages are
266       more helpful.  Thanks to Mark H. Wood <mwood@IUPUI.Edu>.
267
268 Version 0.2.0 changes since 0.1.0:
269
270   Procedures now implemented:
271     * CROSSTABS.  Please see documentation for caveats.
272
273   Transformations and utilities now implemented:
274     * AGGREGATE
275     * APPLY DICTIONARY
276     * CLEAR TRANSFORMATIONS
277     * DISPLAY (all subcommands).
278     * ERASE
279     * FLIP
280     * EXPORT
281     * HOST
282     * IMPORT
283     * MATCH FILES
284     * MATRIX DATA
285     * NEW FILE
286     * REPEATING DATA
287
288   Support for input and output through pipes: "|command" and
289   "command|" filenames; support for special filenames "-", "stdin",
290   "stdout", "stderr".
291
292   New command-line features:
293     * New option --testing-mode: Invoke heuristics to assist testing.
294     * New option --safer, -s: Don't allow certain unsafe operations.
295     * New option --command=CMD, -c CMD: Perform literal command CMD.
296     * rc file ~/.pspp/rc is executed before any other files.
297     * Now multiple syntax files can be specified.
298
299   Operator LAG is now implemented.
300
301   Added missing FILE subcommand to REREAD.
302
303   Table output manager completely rewritten.
304
305   Device configuration file syntax changed.  You will need to
306   reinstall your `devices' file.
307
308   New output driver for HTML.
309
310   PostScript driver and prologue simplified.
311
312   Many bugs fixed.  General source-code cleanup.
313
314   Added Texinfo documentation for:
315     * PSPP system file format
316     * PSPP portable file format
317     * How to write input for q2c parser generator
318     * HTML driver
319
320   PSPP language is now fully documented.  Please report any
321   inaccuracies or omissions in the documentation.
322
323 Changes for version 0.1.0:
324
325   First public release.  For changes from unreleased development
326   versions, please see ONEWS.
327 \f
328 ----------------------------------------------------------------------
329 Copyright information:
330
331 Copyright (C) 1996-9, 2000 Free Software Foundation, Inc.
332
333    Permission is granted to anyone to make or distribute verbatim
334    copies of this document as received, in any medium, provided that
335    the copyright notice and this permission notice are preserved, thus
336    giving the recipient permission to redistribute in turn.
337
338    Permission is granted to distribute modified versions of this
339    document, or of portions of it, under the above conditions,
340    provided also that they carry prominent notices stating who last
341    changed them.
342 \f
343 Local variables:
344 version-control: never
345 mode: indented-text
346 end: