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