u8-istream: Add cast to iconv() to suppress warnings on some systems.
[pspp-builds.git] / NEWS
1 PSPP NEWS -- history of user-visible changes.
2 Copyright (C) 1996-9, 2000, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
3 See the end for copying conditions.
4
5 Please send PSPP bug reports to bug-gnu-pspp@gnu.org.
6
7 Changes from 0.7.3 to 0.7.7:
8
9  * The "pspp" program has a new option --batch (or -b) that selects
10    "batch" syntax mode.  In previous versions of PSPP this syntax mode
11    was the default.  Now a new "auto" syntax mode is the default.  In
12    "auto" mode, PSPP interprets most syntax files correctly regardless
13    of their intended syntax mode.
14
15    See the "Syntax Variants" section in the PSPP manual for more
16    information.
17
18  * The "pspp" program has a new option --syntax-encoding that
19    specifies the encoding for syntax files listed on the command line,
20    as well as the default encoding for syntax files included with
21    INCLUDE or INSERT.  The default is to accept the system locale
22    encoding, UTF-8, UTF-16, or UTF-32, automatically detecting which
23    one the system file uses.
24
25    See the documentation for the INSERT command in the PSPP manual for
26    more information.
27
28  * The INCLUDE and INSERT commands now support the ENCODING subcommand
29    to specify the encoding for the included syntax file.
30
31  * Strings may now include arbitrary Unicode code points specified in
32    hexadecimal, using the syntax U'hhhh'.  For example, Unicode code
33    point U+1D11E, the musical G clef character, may be expressed as
34    U'1D11E'.
35
36    See the "Tokens" section in the PSPP manual for more information.
37
38  * In previous versions of PSPP, in a string expressed in hexadecimal
39    with X'hh' syntax, the hexadecimal digits expressed bytes in the
40    locale encoding.  In this version of PSPP, X'hh' syntax always
41    expresses bytes in UTF-8 encoding.
42
43    See the "Tokens" section in the PSPP manual for more information.
44
45  * The DO REPEAT command has been reimplemented.  The most prominent
46    change is that when a DO REPEAT block contains an INCLUDE or INSERT
47    command, substitutions are not applied to the included file.
48
49    See the "DO REPEAT" section in the PSPP manual for more information.
50
51  * NPAR TESTS now supports the /KRUSKAL-WALLIS and /RUNS subcommands.
52
53  * AUTORECODE now supports the /GROUP subcommand.
54
55  * The MRSETS command is now implemented.
56
57  * SAVE TRANSLATE is now implemented, with initial support for saving
58    data in comma-separated value and tab-delimited formats.
59
60  * The PRESERVE and RESTORE commands are now implemented.
61
62  * The HOST command has been updated to use more modern syntax.
63
64  * The SET and SHOW commands no longer support the ENDCMD, NULLINE,
65    PROMPT, CPROMPT, and DPROMPT subcommands.  The defaults are now the
66    only supported values.
67
68 Changes from 0.7.2 to 0.7.3:
69
70  * Charts are now produced with Cairo and Pango, instead of libplot.
71    Without them, the new graphing features will not work.  If you do
72    not have Cairo and Pango installed, you must run `configure' with
73    --without-cairo.
74
75  * The new "cairo" output driver supports output in PostScript, PDF,
76    and SVG formats.  Its functionality is a superset of that of the
77    "postscript" driver, which has been removed.  You must have Cairo
78    and Pango installed to build the "cairo" driver.
79
80 Changes from 0.7.1 to 0.7.2:
81
82  * Updated Perl module interface.
83
84  * Value labels for long string variables are now supported.
85
86  * Missing values for long string variables are now supported.
87
88 Changes from 0.7.0 to 0.7.1:
89
90  *  Added a perl module to facilitate reading and writing of pspp system 
91     files from perl programs.
92
93 Changes from 0.6.2-pre6 to 0.7.0:
94
95   * Custom variable and data file attributes are now supported.
96     Commands VARIABLE ATTRIBUTE and DATAFILE ATTRIBUTE have been added
97     for setting and clear attributes.  Support for attributes has also
98     been added to commands that read and write system files, such as
99     SAVE and GET, as well as to the DISPLAY command.
100
101   * Numererous improvements to the Graphical User Interface have
102     made.  Notable improvements include:
103
104     - Non-Ascii characters in strings, labels and variable names are
105       now supported.
106
107     - A "Split Window" function is available, which makes it easier to
108       see different parts of a large data file.
109
110     - Data files can now be opened by specifing their name as the first
111       argument.  This means that on a properly configured desktop, double
112       clicking on an icon will open the file.
113     
114
115   * New statistical procedures:
116     - CORRELATIONS
117     - ROC
118     - RELIABILITY
119
120     NPAR TESTS now supports the WILCOXON and SIGN subcommands.
121
122     The CROSSTABS command has been completely re-implemented to fix numerous bugs.
123
124   * Three new commands to combine data files have been added: MATCH FILES,
125    UPDATE and  ADD FILES.
126
127   * A tutorial chapter has been added to the user manual.
128
129 Changes from 0.6.1 to 0.6.2
130
131   * New translations:
132
133     - Dutch, thanks to Harry Thijssen.
134
135     - Brazilian Portuguese, thanks to Michel Boaventura.
136
137     Thanks for translations are also due to the coordinators at
138     translationproject.org.
139
140   * Statistical bug fixes:
141
142     - REGRESSION: Report correct standard error of the estimate (bug
143       #25677).
144
145     - T-TEST: Report correct significance of paired sample T-test in
146       the common case (bug #26936) and corner cases.  Thanks to Mike
147       Griffiths and Matej Cepl for reporting these bugs.
148
149   * Build fixes and changes:
150
151     - Fix build with GTK+ 2.17.4 and later.
152
153     - Make running "make" after running "configure" with different
154       settings reliably rebuild version.c.
155
156     - Cygwin and MinGW build fixes.
157
158     - Fixes for building with recent gnulib.
159
160     - The Makefile now honors two new variables, PSPP_LDFLAGS and
161       PSPPIRE_LDFLAGS, that affect linking of the PSPP and PSPPIRE
162       binaries, respectively.  This makes building easier for some
163       packagers.
164
165     - Fixes for "configure --enable-relocatable" (bug #25508).
166
167   * Data file bug fixes and changes:
168
169     - Fix reading text data files that contain a mix of white space
170       and commas.  Now "a ,b" is treated as two fields containing "a"
171       and "b"; previously it was treated as three, with an empty field
172       in the middle.
173
174     - Fix writing corrupted .sav files on Windows.
175
176     - Fix writing variable labels longer than 252 bytes to save files.
177       Thanks to Robert Westlund for reporting this bug.
178
179     - Fix writing corrupted .por files (bug #26034).
180
181     - Fix reading .por files whose initial lines are not padded out
182       with spaces as expected.
183
184     - PSPP will no longer issue warnings about some .sav file records
185       or values that it does not understand.  These warnings were
186       harmless, but needlessly alarmed some users.
187
188     - Fix crash reading empty string fields from PostgreSQL databases.
189
190   * Bug fixes that affect PSPP and PSPPIRE:
191
192     - Users may now control precision of output statistics.  Instead
193       of hard coding the width and decimals of output numbers, respect
194       the default format in most instances.  Counts are now normally
195       displayed with the format of the weight variable, if any.
196
197     - Fix crash when an INSERT command specifies the name of a file
198       that does not exist (bug #24569).
199
200     - Fix crash when CROSSTABS specifies a long-string variable (bugs
201       #24557 and #26131).
202
203     - Fix crash drawing pie charts with many segments.
204
205     - Fix crash when NUMERIC specifies an invalid format.
206
207   * PSPPIRE bug fixes and changes:
208
209     - On Windows, write the output file to the user's home directory
210       instead of the current directory, to better match user
211       expectations.
212
213     - Some data editor fixes.
214
215   * Documentation:
216
217     - Fix typo in BINOMIAL section of user manual (bug #25892).
218
219 Changes from 0.6.0 to 0.6.1:
220
221   * Statistical bug fixes:
222
223     - Report correct standardized regression coefficients in linear
224       regression output (bug #23567).
225
226   * Bug fixes that affect PSPP and PSPPIRE:
227
228     - Avoid crash with pie charts (bug #24014).
229
230     - Don't append % to count totals (bug #24003).
231
232     - Don't crash on bad input (bug #24031).
233
234     - Don't crash if "end data." is not left aligned (bug #24115).
235
236     - Change default workspace value to 64 MB, to avoid unnecessary
237       disk accesses on modern machines.
238
239   * PSPPIRE bug fixes:
240
241     - Add ".sav" or ".por" suffix to filename when saving with Save_As
242       (bug #23137).
243
244     - Make it possible to reopen the output window on Windows (bug
245       #24033).
246
247     - A POSIX regular expression library is now included and used
248       automatically if the host does not have one or has one that is
249       inadequate.
250
251   * Build fixes and changes:
252
253     - Work around bug in GSL that prevented build with recent GCC
254       versions without manually adding -fgnu89-inline to CFLAGS.
255
256     - Also warn about missing prerequisites as we encounter them (bug
257       #24445).
258
259     - Distribute necessary files to allow users working from the
260       distributed tarball to configure with --enable-gui-tools.
261
262     - Append $(EXEEXT_FOR_BUILD) to output file name when building
263       q2c, fixing build problems on Windows.
264
265     - GSL 1.8 or later is now required.
266
267     - Build errors with --enable-relocatable were fixed.
268
269   * The German translations were removed, since native German speakers
270     found them too poor to be useful.
271
272 Changes from 0.4.0 to 0.6.0:
273
274   * The PSPP license is now version 3 or later of the GNU General
275     Public License.  Previously, it was version 2 or later.
276
277   * PSPP now has a graphical interface, called PSPPIRE.  This
278     interface allows you to enter data and variable definitions
279     interactively.  Commands may be executed in syntax form, or by
280     using the interactive dialog boxes available from the dropdown
281     menus.
282
283   * A few sample syntax files are now included in the `examples'
284     directory.
285
286   * Numerous major and minor bugs have been fixed.
287
288   Build changes:
289
290     * The INSTALL file now reflects the details of how to install
291       PSPP.  It is a tailored version of the generic installation
292       instructions, instead of a verbatim copy.
293
294     * iconv, which is ordinarily installed as part of a Unix-like
295       system, is now required.  If you don't have it already, you can
296       install GNU libiconv (http://www.gnu.org/software/libiconv/).
297
298     * libxml2 and zlib are new optional dependencies.  They are
299       required to use PSPP's support for reading Gnumeric files.
300
301   Statistical procedure changes:
302
303     * REGRESSION is a new procedure for fitting linear models to data
304       via least-squares estimation.
305
306     * NPAR TESTS is a new procedure for non-parametric tests.  In this
307       release, it supports binomial and chi-square tests.
308
309     * RANK is a new procedure to rank variables.  It supports numerous
310       forms of ranking.
311
312     * FREQUENCIES can now output histograms and pie charts.  These
313       features were present in earlier releases, but not documented.
314
315   User interface changes:
316
317     * In many situations where PSPP once terminated with a fatal
318       error, PSPP now recovers and continues execution.
319
320     * PSPP is now able to start up and run even if it cannot find its
321       configuration files.
322
323     * Journaling of interactive commands to a disk file is now
324       implemented.  By default, journaling is enabled, to a file named
325       `pspp.jnl' in the current directory.  SET JOURNAL may be used to
326       control journaling.
327
328     * The use of `+' between syntax file names on the command line to
329       prevent the dictionary from being cleared between their
330       executions is no longer supported.  All syntax files are now
331       executed as if `+' had been specified.
332
333     * The -d/--define and -u/--undef command line options are no
334       longer supported.  Instead, use /usr/bin/env or shell primitives
335       to define or clear environment variables before invoking PSPP.
336
337     * If a syntax file named named `rc' is found in a configuration
338       directory (such as $HOME/.pspp), it is executed before any
339       syntax file specified on the command line.  The -r or
340       --no-statrc command line option may be used to disable this
341       behavior.
342
343   Output changes:
344
345     * Output configuration options have changed.  Please refer to the
346       manual for a full description of the available options.
347
348       In consequence, you will need to reinstall your "devices" file.
349       "make install" will do this for you.
350
351     * Most error messages are now written to PSPP output files by
352       default.  SET ERROR can be used to disable this behavior.
353
354     * When invoked interactively, PSPP now by default produces output
355       on the terminal, piping it through the "more" program.
356       Previously, by default output was written only to file
357       pspp.list.  On most terminals, the page length used for output
358       automatically adapts to the terminal size, even if the terminal
359       is resized.
360
361     * ASCII driver:
362
363       - This driver now supports charts in output.  Charts are written
364         as separate files that the main output file refers to.  By
365         default, charts are written in PNG format to files named
366         pspp-1.png, pspp-2.png, and so on.
367
368       - Configurations are provided that use VT100 (and xterm)
369         line-drawing characters in tables.  The option "-o list-vt100"
370         requests use of this device for output to pspp.list.
371
372     * PostScript driver:
373
374       - The default paper size is now determined using the PAPERSIZE
375         environment variable, or the LC_PAPER locale category on
376         systems that support it.  If these are not set, the default is
377         now A4, instead of US letter.  To make US letter the default,
378         set PAPERSIZE to "letter" in your environment.
379
380       - Font metrics are now read from AFM files, instead of
381         Groff-format metrics files.  PostScript fonts can now be
382         embedded in output.
383
384         In consequence, you will need to install an AFM file for each
385         font used in PostScript output.  "make install" will install
386         AFM files for the standard PostScript fonts, including the
387         ones that the PostScript driver uses by default.
388
389       - Standard paper sizes no longer need to be specified through a
390         configuration file.  The "papersize" configuration file is no
391         longer needed, or supported.
392
393       - The PostScript prologue is no longer obtained from the
394         "ps-prologue" configuration file.  This configuration file is
395         no longer needed, or supported.
396
397     * HTML driver:
398
399       - The HTML prologue is no longer obtained from the
400         "html-prologue" configuration file.  This configuration file
401         is no longer needed, or supported.
402
403   Command language changes:
404
405     * The following commands are new:
406
407       - GET DATA, which currently supports reading Gnumeric files and
408         text data files.  It will be extended later to read other
409         types of foreign data.
410
411       - CD, to change the current directory.
412
413       - INSERT, to execute a syntax file.
414
415       - DELETE VARIABLES, to remove variables from the active file
416         dictionary.
417
418       - ADD DOCUMENT, to add text to active file documents.
419
420       - CLOSE FILE HANDLE (a PSPP extension; see below).
421
422       - XEXPORT, a PSPP extension that is a transformation equivalent
423         to EXPORT.
424
425     * The following functions for transformation expressions are new:
426
427       - DATEDIFF, for computing the difference of two dates.
428
429       - DATESUM, for advancing a date by a specified duration.
430
431       - VALUELABEL, to obtain the value label for a value.
432
433     * PSPP now supports very long string variables (over 255 bytes
434       long).
435
436     * MATCH FILES now supports the FIRST and LAST subcommands.
437
438     * Previous versions of PSPP prohibited using commands to both read and
439       write a single file at the same time.  Now, PSPP allows this, and
440       the new version of the file atomically replaces the old version.
441
442     * The following commands are no longer available.  They will be
443       re-implemented in a later release:
444
445       - CLEAR TRANSFORMATIONS
446
447       - MATRIX DATA
448
449       - REPEATING DATA
450
451     * The PROCESS IF command, which was deprecated, has been removed.
452       You may replace any usage of it by SELECT IF following
453       TEMPORARY, which has the same effect.
454
455     * The output format for variables created by VECTOR may now be
456       specified as part of the VECTOR syntax.
457
458   "Scratch files", a new PSPP extension:
459
460     A scratch file, like a system file, consists of a dictionary and
461     any number of cases.  Small scratch files are stored in memory;
462     one that grows too large is written to disk.  By default, any file
463     handle whose name begins with # is assumed to refer to a scratch
464     file.
465
466     Scratch files can be used just about anywhere a system or portable
467     file can be used.  Also, portable files are now allowed in most
468     places that system files were allowed in previous PSPP version.
469
470     A new CLOSE FILE HANDLE command allows the storage associated with
471     scratch files to be freed.  It also allows file handles to be
472     reassigned to new files.
473
474     For more information on scratch files, refer to the "File Handles"
475     section in the PSPP manual.  For specifics of what commands now
476     allow what kinds of files to be specified, refer to the
477     documentation on those particular commands.
478
479   Data access changes:
480
481     * Binary formats and IBM/360 formats, including ASCII/EBCDIC
482       translation, are now supported.  Use FILE HANDLE to specify the
483       format of these files.
484
485     * Little-endian, big-endian, and VAX-endian formats are now
486       supported for integer binary formats when reading and writing
487       data files.  The new RIB and WIB subcommands on the SET command
488       control endianness of integer data.  The default is the host's
489       native endianness.
490
491     * IEEE 754, VAX, and IBM hexadecimal formats are now supported for
492       floating point binary formats when reading and writing data
493       files.  The new RRB and WRB subcommands on the SET command
494       control the floating point format.  The default is the host's
495       native floating point format.
496
497     * DATA LIST now supports the SKIP subcommand, to skip records at
498       the beginning of a file.  For compatibility, DATA LIST now
499       treats N format as F format for FREE and LIST format input.
500
501     * The SAVE and XSAVE commands now support the UNSELECTED,
502       PERMISSIONS, NAMES, and MAP subcommands.
503
504     * The EXPORT command has been re-implemented to obtain better
505       results.  Support for the UNSELECTED, DIGITS, and TYPE
506       subcommands has been added.
507
508     * For compatibility, PRINT now inserts a space at the beginning of
509       every output line, even lines that would otherwise be blank,
510       when OUTFILE is specified.  (The behavior of WRITE is
511       unchanged.)
512
513     * For compatibility, PRINT EJECT now inserts the digit `1' at the
514       beginning of each line that should begin a new page.
515
516     * For compatibility, WRITE now outputs the system-missing value as
517       a field filled with spaces.  Binary formats are an exception.
518       (The behavior of PRINT is unchanged.)
519
520   Documentation:
521
522     * Input and output format descriptions have been rewritten.  They
523       now precisely describe what is accepted on input and written on
524       output.
525
526     * The descriptions of the PSPP system and portable file formats
527       have been extensively revised and improved.
528
529   For developers, the build system now requires Autoconf 2.60 and
530   Automake 1.10.
531 \f
532 Changes from 0.3.0 to 0.4.0:
533
534   Changes in build dependencies:
535
536     * The GNU Scientific Library (libgsl), version 1.6 or later, is
537       now required.
538
539     * libplot from GNU plotutils is optional.  Without it, the new
540       graphing features will not work.  If you do not have it
541       installed, you must run `configure' with --without-libplot.
542
543     * libgmp2 is no longer a dependency.
544
545   Newly implemented commands and statistical features:
546
547     * EXAMINE, including its graphing features.
548
549     * FREQUENCIES now supports percentiles.
550
551     * ONEWAY.
552
553     * PERMISSIONS.
554
555     * SHOW.
556
557     * SORT CASES now sorts stably, that is, two cases with equal sort
558       criteria will be in the same relative order before and after the
559       sort.
560
561     * T-TEST (re-written).
562
563     * DATE and USE.  These commands are parsed but otherwise ignored,
564       to enhance compatibility with certain command files that invoke
565       them unnecessarily.
566
567     * VARIABLE WIDTH, VARIABLE ALIGNMENT, and VARIABLE LEVEL.  These
568       currently have no effect on PSPP output, but their values are
569       written to and read from system files and thus may affect
570       third-party software.
571
572     * SET EPOCH implemented.
573
574     * DATA LIST FREE and DATA LIST LIST now support arbitrary field
575       delimiters.
576
577     * FILE HANDLE now supports custom tab widths.
578
579   Long variable names (and other identifiers) are now supported.  Up
580   to the first 64 bytes of each identifier is significant.  PSPP now
581   reads and writes system files compatible with SPSS version 12.
582
583   New --algorithm and --syntax command line options allow
584   SPSS-compatible or enhanced modes to be selected.
585
586   Support for transformation expressions has been rewritten and
587   significantly improved.  Refer to the manual for details.
588
589   Calculation of moments (mean, standard deviation, kurtosis,
590   skewness) has been rewritten and should now be more accurate.  In
591   --algorithm=enhanced mode moments may be more accurate than SPSS in
592   some cases.
593
594   Numerous bugs have been fixed, too many to mention here.  Many new
595   tests have been added, leading to the discovery and fixing of many
596   of these bugs.
597
598   The ASCII output driver can now squeeze multiple blank lines into
599   single blank lines.
600
601   Much of the code has been rewritten and refactored.  It is now much
602   cleaner.
603
604   The FILE TYPE and REPEATING DATA commands have been disabled for
605   this release because their implementations were deemed too buggy to
606   be useful.  They will be fixed and replaced in a future release.
607
608   New pspp-mode for Emacs (in pspp-mode.el).
609
610   Added rudimentary command-line completion for interactive input.
611
612   lib/julcal and lib/dcdflib are no longer used, so they have been
613   removed.
614
615   For developers, the build system now requires Autoconf 2.58 and
616   Automake 1.7.  The included gettext has been updated to version
617   0.12.1.
618
619   Some reports state that Texinfo 4.8, the latest version, may be
620   necessary to successfully format the documentation on some systems.
621
622 Version 0.3.0 changes since 0.2.3:
623
624   Bugs fixed:
625
626     * Using alphanumeric variables in functions under AGGREGATE
627       segfaulted.  Fixed.
628
629     * Under certain circumstances, the final case would be omitted
630       from the results of an AGGREGATE operation.  Fixed.
631
632     * Undefined behavior was invoked by referencing a freed pointer
633       under certain circumstances.  Fixed.
634
635     * A wrong record size was displayed when paging the active file to
636       disk.  Fixed.
637
638     * Not having enough temporary space for sorting caused a core
639       dump.  Fixed.
640
641     * Syntax errors in function descriptions on AGGREGATE caused core
642       dumps.  Fixed.
643
644     * A null pointer was dereferenced, causing a core dump, when
645       PERCENTILES was specified on FREQUENCIES.  This fixes the
646       problem, but PSPP still doesn't calculate percentiles.
647
648     * SORT always sorted in ascending order.  Fixed.
649
650     * Some minor memory leaks in the expression parser were removed.
651
652     * Many assertions fixed for strict ANSI C compliance.
653
654   New features:
655
656     * SET ECHO ON now implemented, but turned off by default.
657
658     * PRINT specifier supported on END REPEAT.
659
660   Other:
661
662     * System libgmp2 library is used if installed instead of
663       unconditionally using the included libgmp2 subset.
664
665     * Extensive code cleanup, which continues.
666
667     * Added CORRELATIONS command parser, but not implemented.
668
669 Version 0.2.3 changes since 0.2.2:
670
671   Bugs fixed:
672
673     * SPLIT FILE with a string variable caused a core dump.  Fixed.
674
675     * Nested INCLUDEs didn't work.  Fixed.
676
677     * The MATCH FILES procedure set the values of variables not present
678       to 0.  It should have been SYSMIS.  This is now fixed.
679
680     * The REMARK command was too aggressive about skipping lines.  It
681       didn't like being the last command in a file.
682
683     * Comment parsing wasn't consistent with the rest of the code in its
684       idea of where one command ends and another starts.  This meant
685       that sometimes commands would be mysteriously ignored.  Thanks to
686       Dr. Dirk Melcher <BZN-mdksh@t-online.de> for reporting this bug.
687
688     * The TABLE subcommand on MATCH FILES worked only erratically at
689       best.  This fixes it.  Thanks to Dr. Dirk Melcher
690       <BZN-mdksh@t-online.de> for reporting this bug.
691
692     * VARIABLE LABELS rejected a slash before the first variable
693       specification, contradicting the documentation.  Thanks to Walter
694       M. Gray <graywm@northernc.on.ca> for reporting this bug.
695
696     * Because of an incorrect optimization in memory allocation,
697       CROSSTABS sometimes segfaulted when asked to output multiple
698       tables.  Thanks to Walter M. Gray <graywm@northernc.on.ca> for
699       reporting this bug.
700
701     * CROSSTABS didn't display value labels for column and row
702       variables.  Thanks to Walter M. Gray <graywm@northernc.on.ca> for
703       reporting this bug.
704
705     * WRITE didn't write line ends.  Fixed.  Thanks to Dr. Dirk Melcher
706       <BZN-mdksh@t-online.de> for reporting this bug.
707
708     * The TABLE subcommand on MATCH FILES worked only erratically at
709       best.  This fixes it.  Thanks to Dr. Dirk Melcher
710       <BZN-mdksh@t-online.de> for reporting this bug.
711
712     * VARIABLE LABELS rejected a slash before the first variable
713       specification, contradicting the documentation.  Thanks to Walter
714       M. Gray <graywm@northernc.on.ca> for reporting this bug.
715
716     * Because of an incorrect optimization in memory allocation,
717       CROSSTABS sometimes segfaulted when asked to output multiple
718       tables.  Thanks to Walter M. Gray <graywm@northernc.on.ca> for
719       reporting this bug.
720
721     * CROSSTABS didn't display value labels for column and row
722       variables.  Thanks to Walter M. Gray <graywm@northernc.on.ca> for
723       reporting this bug.
724
725     * WRITE didn't write line ends.  Fixed.  Thanks to Dr. Dirk Melcher
726       <BZN-mdksh@t-online.de> for reporting this bug.
727
728     * MATCH FILES corrupted memory and dumped core on some syntax
729       errors.  Fixed.
730
731     * MATCH FILES should set numeric values not available to the
732       system-missing value, not to 0.  Thanks to Dr. Dirk Melcher
733       <BZN-mdksh@t-online.de> for reporting this bug.
734
735     * KEEP didn't work properly on the SAVE procedure.  Fixed.  Thanks
736       to Ralf Geschke <ralf@kuerbis.org> for reporting this bug.
737
738     * Memory leak fix.
739
740     * Some systems didn't like the way open_file was coded.  Thanks to
741       Hankin <hankin@rogue.consultco.com> for pointing this out.
742
743     * The SAVE procedure didn't save long string variables properly.
744       Fixed by this patch.  Thanks to Hankin
745       <hankin@rogue.consultco.com> for this patch.
746
747     * Minor documentation fixes for MATCH FILES.
748
749 Version 0.2.2 changes since 0.2.1:
750
751   Bugs fixed:
752
753     * Fix behavior of PRINT SPACE for negative arguments.
754
755     * Fix reading some unusual system files.
756
757     * Fix LIST problems with very long variables.  Thanks to Hankin
758       <hankin@dunno.com> for this bug report.
759
760     * Fix problems with some string format specifiers.
761
762     * Fix use of $CASENUM in expressions.  Thanks to Dirk Melcher
763       <BZN-mdksh@t-online.de> for reporting this bug.
764
765     * Additional DATA LIST FREE and DATA LIST LIST fixes.  Thanks to
766       Hankin <hankin@dunno.com> again on this one.
767
768     * Sometimes you may encounter a PSPP script that has to be
769       interpreted in interactive mode.  Now you can use the -i flag to
770       do this.
771
772     * Warnings for egcs 1.1.1 cleaned up.  (However you'll get lots of
773       `unused variable' warnings under gcc 2.7.2.3, fixing this will
774       take more effort.)
775
776     * Tests fixed.
777
778     * The files in gmp need the internationalization directory in
779       their include path.  Thanks to OKUJI Yoshinori
780       <okuji@kuicr.kyoto-u.ac.jp> for pointing this out.
781
782 Version 0.2.1 changes since 0.2.0:
783
784   Bugs fixed:
785
786     * Remember to include examples/ directory in distribution :-)
787
788     * Fixed gmp compile problems for some non-i386 architectures.
789       Thanks to Hans Olav Eggestad <olav@jordforsk.nlh.no> and others
790       for reporting this.
791
792     * DATA LIST FREE and DATA LIST LIST parsing of input files is now
793       matches the documented behavior exactly, and error messages are
794       more helpful.  Thanks to Mark H. Wood <mwood@IUPUI.Edu>.
795
796 Version 0.2.0 changes since 0.1.0:
797
798   Procedures now implemented:
799     * CROSSTABS.  Please see documentation for caveats.
800
801   Transformations and utilities now implemented:
802     * AGGREGATE
803     * APPLY DICTIONARY
804     * CLEAR TRANSFORMATIONS
805     * DISPLAY (all subcommands).
806     * ERASE
807     * FLIP
808     * EXPORT
809     * HOST
810     * IMPORT
811     * MATCH FILES
812     * MATRIX DATA
813     * NEW FILE
814     * REPEATING DATA
815
816   Support for input and output through pipes: "|command" and
817   "command|" filenames; support for special filenames "-", "stdin",
818   "stdout", "stderr".
819
820   New command-line features:
821     * New option --testing-mode: Invoke heuristics to assist testing.
822     * New option --safer, -s: Don't allow certain unsafe operations.
823     * New option --command=CMD, -c CMD: Perform literal command CMD.
824     * rc file ~/.pspp/rc is executed before any other files.
825     * Now multiple syntax files can be specified.
826
827   Operator LAG is now implemented.
828
829   Added missing FILE subcommand to REREAD.
830
831   Table output manager completely rewritten.
832
833   Device configuration file syntax changed.  You will need to
834   reinstall your `devices' file.
835
836   New output driver for HTML.
837
838   PostScript driver and prologue simplified.
839
840   Many bugs fixed.  General source-code cleanup.
841
842   Added Texinfo documentation for:
843     * PSPP system file format
844     * PSPP portable file format
845     * How to write input for q2c parser generator
846     * HTML driver
847
848   PSPP language is now fully documented.  Please report any
849   inaccuracies or omissions in the documentation.
850
851 Changes for version 0.1.0:
852
853   First public release.  For changes from unreleased development
854   versions, please see ONEWS.
855 \f
856 ----------------------------------------------------------------------
857 Copyright information:
858
859    Permission is granted to anyone to make or distribute verbatim
860    copies of this document as received, in any medium, provided that
861    the copyright notice and this permission notice are preserved, thus
862    giving the recipient permission to redistribute in turn.
863
864    Permission is granted to distribute modified versions of this
865    document, or of portions of it, under the above conditions,
866    provided also that they carry prominent notices stating who last
867    changed them.
868 \f
869 Local variables:
870 version-control: never
871 mode: indented-text
872 end: