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