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