1 Reverse history of Trueprint. Changes are also logged in ChangeLog which
2 is generated in emacs with C-x v a (the only reason I'm putting the emacs
3 keystrokes in here is to remind myself in the future!).
6 Worked on security : CVE-2009-4029 and CVE-2012-3386
7 updated on build system.
11 Now builds for cygwin 1.3.2 (fix to bug reported by David Karr).
12 Put files printers and testprint back in - they were lost by
13 automake :-( Unfortunately I've lost the definitions added in
14 version 5.3 - I can't find the original mails anywhere and since
15 I wasn't storing trueprint in CVS until after I'd released that
16 version.... a mistake I won't make again :-)
17 There's a totally rewritten lang_perl.c from Steve Fink.
20 Trueprint now uses autoconf and automake (Paul Smith, and the
21 book GNU Autoconf, Automake and Libtool by Gary V. Vaughan et al,
22 published by New Riders).
23 Mention of trueprint.uu removed from README (Othmar Pasteka).
24 Suffix .pike added for pike programs (Othmar Pasteka).
25 Added include of sys/types.h before sys/stat.h to support
26 FreeBSD (Dmitry Sivachenko).
27 README.mswin removed (John Morey).
28 If there isn't an lp or lpr command on your system when you
29 run configure, trueprint will now be built to send postscript output
30 to stdout by default (Othmar Pasteka).
31 Choice options like --landscape and --option were broken due
32 to a serious bug in options.c (Paul Smith).
33 Added Canon LBP 3260 (Bjorn Wingman).
34 Added HP Laserjet 1100 (Peter Green).
35 Fix for handling arithmetic << in Perl (Peter Green).
36 Added --new-sheet-after-file and --no-new-sheet-after-file, from
37 a suggestion by David Karr.
40 Fixed bug that ignored the double-sided/single-sided setting
41 for printers in the printers file.
44 As of this release I'm going to include the contributors name
45 in every change description. Sorry I didn't do that for version
47 + Added NEC SuperScript 870 printer details (Craig Pinfold).
48 + Added A4 settings for HP Laserjet 4 Si MX (Ian Brown).
49 + Use configure to find the proper install tool (George Lindholm).
50 + Use mandir and man1dir vars in Makefile properly (Michael Somos).
51 + Added missing colon to printers file (Michael Somos).
52 + Handle unknown language with a message instead of a core dump
54 + Added -R to specify postscript level (Ian Brown).
55 + Initialize use_environment in main() (Ian Brown and others).
56 + Added <stdlib.h> to lang_java.c to get abort() (Ian Brown).
57 + C++ comments are now recognized in C code. OK, this isn't ANSI
58 but GCC is a better standard than ANSI any day... :-) This solves
59 a problem reported by Bruce Tenison.
60 + Changes made to support compiling for Microsoft Windows
61 platforms are added (Ian Brown).
62 + Option -u added: --u will suppress even minimal headers, footers
63 and left margin line (suggested by... )
64 + When using the perl5 "use subs" pragma, trueprint incorrectly
65 identifies "s" as a subroutine. This is fixed in lang_perl.c with
66 a fix submitted by Jim Eshleman.
67 + Added printer HP Laserjet 8100N (Kris Berbeeck).
68 + Added printer CalComp (sorry, I lost the name of the contributor -
69 send me a mail and I'll add it in the next release)
70 + Added support for language pike (see pike.idonex.se) (Martin Bahr).
71 + Rewritten man page (see author in the man page itself).
74 Many thanks to everyxbody who gave me feedback and reported
75 problems in version 5.0! I've found the best advantage of
76 making Trueprint a GNU program is the users! The changes
77 in 5.1 are all relatively minor - there are no major rewrites.
78 + make check now uses gmtime instead of localtime, so you
79 don't need to live in Boston to have the tests succeed.
80 + make check now ignores any DEFAULT_OPTS that might be set
82 + If the output is sent to a postscript file then it is
83 no longer created with the execute bits set.
84 + In version 5.0 the documentation stated that the default
85 behaviour was to NOT have page breaks after functions; however
86 the code disagreed with the documentation. The code has been
87 changed to fit. If you want to change this back, set
88 DEFAULT_OPTS in trueprint.h to "--page-break-after-function"
89 + .pm is now recognized as a suffix for a perl file.
90 + Minor tweaks were made to the Makefile to make it easier
91 to generate a RPM package.
92 + Postscript comments generated correctly with page information.
93 + With no line numbers or braces depth, a thin line is still
94 printed on the lhs of each page.
95 + In headers, footers and other strings, %c and %C can be used
96 to get the modification time of the file in short or long format.
97 + When using stdin, the "filename" in headers and footers appears
98 as "-" instead of "stdin" as it did in earlier versions.
99 + -r/--redirect-output sends output to .ps file named after 1st arg
100 + -L/--minimum-line-length sets the minimum line length for
101 lines produced using intelligent line wrap.
102 + A dummy gettext() is now included in case gettext() doesn't exist
104 + The standard GNU files getopt.c, getopt1.c and getopt.h are included
105 in case the system doesn't have getopt_long.
106 + A bug in shell language handling which caused a coredump is fixed.
107 + Perl should print POD documentation as comments.
108 + I had many people suggest that the printers file should
109 move; I'm not moving it yet though. My plan is to change
110 the format of the printers file to include (among other things)
111 options to be used for each queue, the possibility of multiple
112 virtual printers for one queue, passing options through to
113 lp or lpr (so you can e.g. select paper from different trays),
114 and (most important) a version id so that all future versions
115 of trueprint will be able to read older printer files. When
116 I make this change I'll move the printers file so that older
117 versions of trueprint will still be able to find a printers
118 file they understand in /etc.
119 + Various other minor changes were also made.
120 Version 5.0: Trueprint GNU
121 Changed code to adhere to GNU coding standards.
122 Added long options. Short options that used to start
123 with '+' now start with '--', e.g. +I is now --I.
124 Default is "off" for page breaks after function calls.
125 Added texinfo documentation.
126 020299 4.1.2 Fixed waiting for child pid so lpr message appears
127 before trueprint returns.
128 Fixed bad interaction between turning off linewrap and
129 turning off linecount.
130 Fixed get_function_name() so it can be called many times
131 for the same page (by removing static qualifier to
133 Included changes from James Card: added .H & .C as valid C++.
134 Fixed tab expansion (tab character was included in output).
135 072298 4.1.1 Added C++ & Verilog support and updated the man page.
136 Fixed crash when $USER not set. Map lf/cr (MS-DOS line end) to
137 cr, and cr/ff to ff. Added -J for holepunch gap at top of
138 page. Improved message for an unknown option. Empty
139 input -> no print job. Added file COPYING, which contains
141 ------ 4.1 Fixed header problem in utils.h, removed trueprint.ps from
143 082095 4.0 Added stdin handling, fixed one-char fn name bug, fixed
144 filename on blank page bug, added backspace handling for
145 underline & bold, added bold-italic for added comments,
146 can suppress headers & footers, totally new option
147 handling, totally new file printing.
148 021795 3.6.5 Fixed -G bug
149 021795 3.6.4 Added -G, fixed some small bugs in manpage.
150 021794 3.6.3 Fixed 'showpage' printing
151 122893 3.6.2 Fixed logging
152 120793 3.6.1 Added -3, significantly improved page size handling, added -I.
153 101393 3.6 General header, footer & message string processing;
155 091493 3.5.4 Various minor bugs, and added strike-out for deleted text
157 090993 3.5.3 Removed limits on various string options; added
158 closepipe and fclosepipe to avoid zombies!
159 081993 3.5.2 Removed MAX_FUNCTIONS and MAX_FILES from index.c - should
160 be able to cope with unlimited number of functions/files
161 080593 3.5.1 added -A
162 080493 3.5 added -a and -treport
163 080393 3.4.2 made it POSIX - now compiles on Sun & Ultrix
164 063093 3.4.1 made it ANSI
165 020393 3.4 added printers file, config.h
166 180392 3.3 added perl
167 012292 3.2 added -W option, -E option
168 120391 3.1.1 fixed clash between -nn -xn -w0.
169 112091 3.1 added -B option
170 111091 3.0 added -n option, integrated with scm_help.
171 060591 2.9.8 fixed minor bug with -c; added -L and -M options.
172 280391 2.9.7.3 Added call to lezzlog
173 250391 2.9.7.2 Blanked out function name from headers when no function
174 present, altered headers for -S2.
175 220391 2.9.7.1 Changed option handling to functions
176 210391 2.9.7 Add -T<tabsize>
177 140391 2.9.6 Initialize braces_depth at end of first pass (finally!)
178 110391 2.9.5 Added cflow pages
179 060391 2.9.4 Added language type pseudoc
180 010391 2.9.3 Added -C and -U
181 250291 2.9.2 Fixed C parsing to cope with function ptr argument.
182 220291 2.9.1 Changed definition of line indent in postscript.c to get line at
184 070291 2.9 Changed meanings of -F, -f, -b and -x to align with users' manual
185 110191 2.8.1 Added -F -f to suppress File and function indices and added
186 -b to suppress page breaks at function end
187 030191 2.8 Got -l and -w options working properly, added -c<n>, altered
188 language dynamically according to filename extension.
189 311290 2.7 Merged 2-on-1 and 4-on-1 with landscape and portrait modes,
190 added $TP_OPTS, made defaults neater.
191 261290 2.6.1 Stripped out the last remnants of APT and Xerox printers
192 131290 2.6 Added 2-on-1 and 4-on-1 modes
193 151190 2.5.1 Fixed minor bug with comment immediately after function name.
194 added variable old_state to lang_c.c.
195 310790 2.5 Tested diffs, fixed minor bug with fontsize of + in added blank
196 lines, released. Next step version 3....
197 300790 2.4.3 Removed -i (standard input) option. stdin doesn't work!
198 260790 2.4.2 Split print.list.c into main.c input.c output.c,
199 tidied up printing lines for postscript.
200 Line and brace depth numbers in smaller font.
201 Blank lines have no line or brace depth numbers.
202 Landscape working. -m, -p and -g working.
203 Added plain text "language".
204 180790 2.4.1 Fixed up postscript headers and footers properly.
205 170790 2.4 Added -P x|p option for postscript printers. Very little
206 tested, but it works.
207 110790 2.3 Added -S option, suppressed function index if no functions,
208 suppressed file index if only one file.
209 100790 2.2.5a Ported to DECstations, without aptmac.h or lezzlog.c
210 Fixed uninitialised pointer bug in index.c
211 Changed opr to lpr and changed escape strings
213 140390 2.2.5 changed coding standards - { put on same line
214 as while, if, etc. to reduce number of lines.
215 280290 2.2.4 static char_usage retval in printnextline()
216 was set to INPUT_END at beginning of second
217 pass (value inherited from first pass). This
218 had the effect that if deleted lines were
219 printed before source then the INPUT_END was
220 taken to be the true retval and only the
221 deleted lines were printed. So a line
222 initialising retval at beginning of second
224 270290 2.2.3 a few pascal bugs in lang_pascal.c fixed after
225 trying it out on a decent pascal program
226 for the first time. Also no_of_functions
227 in index.c initialised explicitly.
228 130290 2.2.2 init_diffs() was called too early in getnextchar,
229 and getnextline() was getting confused right
230 at the end of a file about which file the
231 diffs were for. So init_diffs call was
232 moved to getnextline().
233 060290 2.2.1 Newpage was treated like newline - so line
234 were wrong. This showed up with -O and -P
235 options in files with newpage characters.
236 Fixed by not treating newpage like newline
238 240190 2.2 goes through lint (more or less), index functions
239 expected short, got long as param - potential bug.
240 230190 2.1 with -P option (multiple files diffs) released.
241 bug with param ending ...[]; fixed.
242 function names in headers starting too early
244 220190 2.0 with -O option (single file differences) released
245 261089 First public version released!