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