1
2  C h a n g e L o g   o f   e P e r l
3  ___________________________________________________________________________
4
5
6  Changes between 2.1.1 and 2.1.2
7  -------------------------------
8
9  970529 o fixed a typo in eperl_security.h
10           which caused problems for non GCC
11           compilers, e.g. under IRIX.
12           [Thanks to Ewan McPhail
13            <ewan@epages.iafrica.com> for hint]
14
15  Changes between 2.1.0 and 2.1.1
16  -------------------------------
17
18  970501 o added -P option to etc/newsvers
19         o removed \n at SCRIPT_.._CTIME
20  970502 o replaced the $| = 1 stuff in eperl_perl5.c to the way
21           mod_perl does it
22           [Thanks to Doug MacEachern <dougm@osf.org> for patch]
23         o enhanced the SetUID-based UID/GID checking: now in
24           eperl_global.h is an option DO_ON_FAILED_STEP which
25           either forces ePerl to error on any failed checks or go
26           on but finally don't do the UID/GID switching
27         o moved the security definitions from eperl_global.h to
28           a new eperl_security.h and changed the references in
29           eperl.pod
30
31  Changes between 2.1b8 and 2.1.0
32  -------------------------------
33
34  970426 o removed more obsolete @logfile@ stuff
35         o again revised eperl.pod
36         o !! CHANGED LICENSE !!
37           NOW ePerl IS DISTRIBUTED AT THE TERMS
38           OF EITHER THE GPL OR THE ARTISTIC LICENSE
39           LIKE THE Perl 5.0 INTERPRETER ITSELF
40         o fixed /tmp/x usage in configure
41         o created PORTING file
42         o tested ePerl on various platforms
43         o made seteuid/setegid configureable
44           via GNU autoconf for HP/UX and others
45         o made the include files in eperl_globa.h
46           conditional
47         o made the -O2 conditional for GCC only
48
49  Changes between 2.1b7 and 2.1b8
50  -------------------------------
51
52  970425 o fixed installation manpath
53         o fixed a security hole: the
54           effective uid/gid have to be eliminated
55           independend of mode and uid switching
56         o fixed some typos in eperl.pod
57         o rewritten the NEWS file
58         o renamed the options:
59           -D => -d, -E => -D (more intuitive)
60           -b => -B, -e => -E (prevent conflicts)
61         o fixed the order of command line
62           option descriptions
63         o removed the @logfile@ stuff from Makefile
64
65  Changes between 2.1b6 and 2.1b7
66  -------------------------------
67
68  970425 o fixed error page colors
69         o changed some aux files: NEWS, TODO
70         o added .cgi to allowed extensions
71           for using shebang CGI/ePerl scripts
72         o added more clear info about shebang
73           to eperl.pod
74         o fixed more bugs in eperl.pod
75         o removed the exit on debug
76         o finished the test suite
77         o slightly fixed the usage output
78         o added support for HEAD requests in
79           case the server does not do it for us
80         o documented provided env variables
81         o created new isotime() function
82           for SCRIPT_SRC_MODIFIED_ISOTIME variable
83         o removed eperl_log.c because this
84           will be used in later versions only
85
86  Changes between 2.1b5 and 2.1b6
87  -------------------------------
88
89  970414 o slightly changed the error message page
90  970418 o created -c for syntax check like "perl -c"
91         o now the default delimiters are
92                <? .. !> for CGI modes
93           and  <: ...:> for Filter mode
94         o removed the delimiters defs in eperl_global.h
95           but added a table to eperl.pod
96         o completely rewritten the setuid security stuff !!
97         o added security information to eperl.pod
98         o now -x does something useful: it outputs
99           the internally generated Perl script to /dev/tty
100           and exits
101
102  Changes between 2.1b4 and 2.1b5
103  -------------------------------
104
105  970404 o now when used as a Unix filter the exit code
106           is != 0 on error while for CGI scripts it is
107           still 0 (needed to make the webserver happy
108           and to force him to accept your HTML error page).
109         o now prints the error message on stderr instead
110           of stdout in Unix filter mode
111         o fixed "make distclean", now t/Makefile is
112           also removed.
113
114  Changes between 2.1b3 and 2.1b4
115  -------------------------------
116
117  970403 o fixed a bug in the b3 distribution:
118           autoheader was not run, so to _compile_
119           ePerl GNU autoconf was needed. :-(
120         o slight adjustments to eperl.pod
121
122  Changes between 2.1b2 and 2.1b3
123  -------------------------------
124
125  970402 o starting with Perl 5.003_96 the dXSUB_SYS define
126           is empty.  Removed the call and the gcc -Wall
127           kludge from eperl_perl5.c
128         o fixed etc/newvers
129         o add "none" to configure DynaLoader check
130
131  Changes between 2.1b1 and 2.1b2
132  -------------------------------
133
134  970330 o reduced the logo GIF image in size to fit betteri
135           into the browser window. The reduced one also has
136           10 KB less bytes.
137         o made the Error HTML page nicer
138         o removed the not used -a (age) option
139
140  Changes between 2.1b0 and 2.1b1
141  -------------------------------
142
143  970326 o added "-o file" to the usage message
144         o when running as a Unix filter the current
145           working directory is restored before the
146           final outputfile (-o) is created.
147         o documented that "-o outputfile" is
148           relative to source file dir when
149           runtime mode is CGI or NPH-CGI
150         o added new-betalevel to Makefile.in
151
152  Changes between 2.0.3 and 2.1b0
153  -------------------------------
154
155  970322 o released as 2.1b0 for first test
156
157  970310 o added --with-perl=/path/to/perl option
158           to ./configure to force a specific perl
159
160  970302 o removed getdate.c stuff :-(
161         o added more tests
162         o changed aux dir to etc for porting to WinNT :-(
163
164  970228 o debugged and cleanup up eperl_parse.c
165         o fixed the core-dump under SunOS which
166           comes from SunOS' non-POSIX vsprintf().
167         o removed the sdbm and md5 stuff because
168           this should be introduced in 3.0 later only.
169         o removed brainfile stuff
170         o fixed another coredump in eperl_parse.c
171         o fixed mode determination and mode-dependend
172           error message
173
174  970227 o debugged and cleanup up eperl_parse.c
175
176  970226 o added dmalloc support for debugging
177
178  970224 o changed sprintf stuff to more portable
179           variant in eperl_main.c
180         o now autoconf checks for memmove and
181           if not found eperl_parse.c uses bcopy.
182
183  970219 o changed bool checking to Autoconf stuff
184
185  970216 o ported to Linux: now bool is defined,
186           prefix was replaced by AC_prefix to avoid collisions and the
187           ccdlflags from Perl are used which need to be -rdynamic under
188           Linux. Now ePerl compiles out of the box on Linux and runs fine,
189           even with dynamic loading.
190
191  970210 o added getdate() code
192         o added --enable-brainfile=/path/to/brainfile
193           which sets the brain file where timestamps and
194           md5 etc. are stored.
195         o added -a option to set an age
196
197  970209 o added MD5 code
198         o added SDBM code
199
200  970207 o changed -c and -s options to -m c and -m f
201         o adding -m n for NPH/CGI, -m c is no only CGI
202         o added stdin support via "-" and tmpfiles
203         o added automatic tmpfile support with remove
204           on interrupts or errors
205         o now the old tempfiles are also created
206           with new mechanism
207         o added -o option for specifying an
208           explicit outputfile instead of stdout
209         o greatly imporved the manpage and brroght it
210           to the latest status
211         o created a test suite with Perl Test::Harness
212         o now ePerl also accepts an empty file
213         o added a security logfile which can be optionally
214           enabled via "--enable-logfile=/path/to/logfile"
215           at compile time.
216         o added configure support for debug compilation
217           via --enable-debug. This adds -g -ggdb3 to
218           the CFLAGS and LDFLAGS and prevents the
219           executable from being stripped.
220         o removed the old doc/ subdir with the
221           old FAQ and About file.
222
223  970206 o removed the generation of libeperl.a
224         o added a real installation target to Makefile
225         o removed eperl_parse.h, because it is still
226           replaced by the generated eperl_proto.h
227         o added -V option which now displays the compile
228           parameters
229         o removed the <tt>..</tt> tags from error output
230           because for the stand-alone version is looks bad.
231         o added experimental TAINT...TAINT_NOT around perl_run.
232         o added -d option to set real Perl variables and
233           not just $ENV{'...'};
234
235  970128 o added support to configure for Perl snapshot
236           releases named 5.003_XX.
237         o added a first security check: If operating in
238           NPH-CGI mode the source file has to be one of
239           the predefined valid file extensions.
240         o now when ePerl runs as a setuid program (seteuid = 0)
241           it switches to the uid/gid of the file owner
242
243  970127 o added -D option to set environment variables.
244           (this is needed for my WML project where in
245           pass 3 eperl gets called via -D...)
246         o added -k option to keep CWD.
247           (this is needed for my WML project where
248           ePerl should not chdir to the /tmp/xxx files).
249
250  970118 o make the BEGIN/END_DELIMITER strings variables which
251           now can be set via -b and -e
252           (this is needed for my WML project where I use
253           two variants of embedded Perl blocks)
254
255  970107 o fixed this changelog file
256         o added test directory
257         o cleanup of Makefile
258         o removed obsolete prototypes in eperl_lib.h
259         o cleaned up eperl_global.h
260         o make eperl_getopt.[ch] gcc -Wall clean
261         o added support for shebang usage, i.e.  you can use #!/path/to/eperl
262           at the top of your pages and use them as a CGI script now. ePerl
263           will ignore the shebang line.
264         o moved the system IO and env functions out to new eperl_sys.c
265         o renamed eperl_lib to eperl_parse
266         o Hups! all references to the CGI/1.0 standard were wrong, it
267           actually is CGI/1.1...
268
269  970106 o added stand-alone interpreter with options
270         o added -x and -v options
271         o added README and LICENSE display
272         o now ePerl reads the file from stdin if
273           the argument is "-"
274         o added a ePerl manual page for the
275           stand-alone interpreter
276
277