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