1 ____ _ 2 ___| _ \ ___ _ __| | 3 / _ \ |_) / _ \ '__| | 4 | __/ __/ __/ | | | 5 \___|_| \___|_| |_| 6 7 ePerl -- Embedded Perl 5 Language 8 9 ChangeLog 10 ========= 11 12 Changes between 2.2.13 and 2.2.14 13 --------------------------------- 14 [Bugfixes only] 15 16 970727 o Fixed HTTP header parsing: Now beside the header/body 17 delimiter "\n\n" also "\r\n\r\n" is recogized correctly. This 18 fixes especially the communication between CGI.pm and ePerl. 19 [Thanks to Steve Dodd <dirk@loth.demon.co.uk> for hints and initial 20 patches] 21 o Fixed examples in Apache::ePerl manual 22 [Thanks to Ian Wojtowicz <i@woj.com> for hints] 23 o Fixed recognization of CGI situation where GET is used 24 instead of POST to send data to ePerl scripts. [Thanks to Steve 25 Dodd <dirk@loth.demon.co.uk> for hint] 26 o Added a CREDITS file to give explicit credits to the 27 people who contributed stuff in the past 28 970802 o Replaced build user/host/domain/time determination stuff with a new 29 `buildinfo' script I've written for Apache which is more robust. 30 o Replaced mkinstalldirs and install-sh with the cleaned up 31 versions I've done for Apache 1.3's APACI stuff. 32 o Ported to Perl 5.005 where variables start with PL_, etc. 33 34 Changes between 2.2.12 and 2.2.13 35 --------------------------------- 36 [Security and Bug Fixes] 37 38 980120 o Fixed construction of URLs inside Apache::ePerl for 39 cases where the server port is not 80. [Thanks to Jim 40 O'Quinn <oquinn@fsonline.com> for hint] 41 980202 o Changed .so generation to be more compatible 42 980404 o Made etc/newvers more portable 43 980605 o Fix a minor comparison bug in Apache::ePerl 44 [Thanks to Eric Howe <mu@trends.net> for hint] 45 980705 o Fixed copyright statements by adding 1998 and 46 removing the "All Rights Reserved" part because 47 this is incompatible with the GPL. 48 980710 o Fix again a non-trivial-to-fix security bug related to the 49 inconsitency way webservers handle QUERY_STRINGs: this time by 50 making more exact parameter comparison. Now we check 51 back even the argv[optind] against the provided 52 QUERY_STRING, etc. Now the determination of the three 53 runtime modes (CGI, NPH-CGI, FILTER) should be 54 correct. [Thanks to Tiago Luz Pinto 55 <tiago@EPS.UFSC.BR> who reported this security hole on 56 bugtraq] 57 58 Changes between 2.2.11 and 2.2.12 59 --------------------------------- 60 [Bugfix only] 61 62 971231 o ARGL! We really need 1998 now: Yesterday 63 I've released 2.2.11 with two nasty syntax errors in 64 the configure script. Hmmmmm... 1998 is now really 65 needed, I think. [Thanks to Anthony Fok 66 <foka@gpu.srv.ualberta.ca> and ??? <djk@tobit.co.uk> 67 for quick response and patch] 68 69 Changes between 2.2.10 and 2.2.11 70 --------------------------------- 71 [Bugfix only] 72 73 971230 o Activated Perl Locale support for both Perl 5.003 74 and Perl 5.004 variants. 75 o Fixed owner determination in eperl_main.c: ePerl core 76 dumped when the owner of the script does not exists in 77 the passwd database. 78 o Updated contrib/pkg/ files 79 o Updated VERSIONS file 80 81 Changes between 2.2.9 and 2.2.10 82 -------------------------------- 83 [Bugfix only] 84 85 971228 o little distribution bug: the asc2c was not run before 86 the 2.2.9 release, so it has to be run by the builder 87 which is not what was intended. 88 89 Changes between 2.2.8 and 2.2.9 90 ------------------------------- 91 [Bugfix only] 92 93 971120 o fixed demo.image.phtml description 94 971221 o fixed a really nasty fclose() bug in eperl_main.c 95 which caused core dumps under Debian GNU/Linux with 96 libc6. [Thanks to <tv@havoc.fi> and Anthony Fok 97 <foka@gpu.srv.ualberta.ca> for hints] 98 99 Changes between 2.2.7 and 2.2.8 100 ------------------------------- 101 [Bugfix and Minor Enhancement] 102 103 971107 o ported to AIX 4.1.x by adding a fix for Perl's ccdlflags 104 971108 o again made Apache::ePerl even more complete: added the 105 following env variables similar to nph-eperl: 106 SCRIPT_SRC_URL, SCRIPT_SRC_URL_DIR, 107 SCRIPT_SRC_URL_FILE, SCRIPT_SRC_PATH, 108 SCRIPT_SRC_PATH_DIR, SCRIPT_SRC_PATH_FILE, 109 SCRIPT_SRC_MODIFIED, SCRIPT_SRC_MODIFIED_CTIME, 110 SCRIPT_SRC_MODIFIED_ISOTIME, SCRIPT_SRC_SIZE, 111 SCRIPT_SRC_OWNER 112 o enhanced the Apache::ePerl status page: now displays 113 also the cache size 114 971116 o fixed shebang mode for webserver environment. [Thanks 115 to J. Douglas Dunlop <dunlop@ionline.net> for hint] 116 o added hint to INSTALL file that PerlIO+SfIO is currently 117 not supported. 118 o fixed HTTP header parsing: now setting of cookies 119 (e.g. via Perl's CGI module) work correctly. 120 o fixed HTTP header parsing in Apache::ePerl. Now even 121 the special-case "Content-type: ..." works as expected. 122 971117 o fixed typos in eperl.pod 123 o fixed preprocessing for Apache::ePerl 124 o overhauled the demo webpages under eg/. Now the 125 CGI::Cookie is used an example for CGI.pm. 126 o adjusted VERSIONS file 127 128 Changes between 2.2.6 and 2.2.7 129 ------------------------------- 130 [Bugfix and Minor Enhancement] 131 132 971102 o reduced memory consumption of Apache::ePerl by 133 specificing detailed import flags 134 o fixed prototype bug in Parse::ePerl's XS part 135 [Thanks to Doug MacEachern <dougm@opengroup.org> for patch] 136 o removed the not needed AUTOLOAD facility from 137 Parse::ePerl because this causes problems. 138 [Thanks to Doug MacEachern <dougm@opengroup.org> for hint] 139 971104 o added VERSION_LANGUAGE and VERSION_INTERPRETER 140 environment variables to Apache::ePerl the same way it is provides 141 by the stand-alone program. 142 971105 o adjusted the URL to the Perl homepage in the PODs. 143 o fixed Content-length header generation in Apache::ePerl 144 o minor cleanup to Parse::ePerl 145 971106 o added workarounds to Parse::ePerl for tainted environments 146 like the "PerlTaintCheck On" under Apache/mod_perl where 147 Parse::ePerl is called from Apache::ePerl. 148 o made the Apache::ePerl error page similar to the one nph-eperl 149 displays. 150 151 Changes between 2.2.5 and 2.2.6 152 ------------------------------- 153 [Bugfix and Minor Enhancement] 154 155 970903 o merged ANNOUNCE and ANNOUNCE.ADDR files 156 o slightly fixed comments in eperl_getopt.[ch] 157 970911 o added mod/README with CPAN module snipppet 158 o changed the $VERSION variables to hold a real floating 159 point number like 2.0206 instead of 2.2.6 160 o updated contrib/pkg/fbsdpkg/ stuff 161 o fixed a bug in the preprocessor: filedescriptors were 162 not closed for #include directive [Thanks to 163 mhalperi@bbnplanet.com for patch] 164 971024 o fixed configure's Perl version check because of Perl 165 5.004_04's changed -v output. 166 o added Apache->request($r) to Apache::ePerl for 167 Apache::Registry modules like new CGI.pm under mod_perl-1.02. 168 o updated PORTING file 169 o added GNU long options 170 o changed -i (nocase on delimiters) to -n 171 o cleaned up source by sorted options 172 o now the usage is only displayed on -h/--help 173 o now the copyright and disclaimer is displayed on -V, too. 174 o now configure removes -D_POSIX_SOURCE from Perl's 175 ccflags under IRIX 5.3 because this causes problems with strdup. 176 o now configure explicitly removed newlines at the end 177 of the determined hostname/domainname pair because these 178 would lead to a failure for GNU autoconfs final sed-part. 179 [Thanks to <paul@miraclefish.com> for bug report] 180 o added another -f test inside configure when trying 181 to find a perl binary because when /tmp/perl is 182 a directory -x alone fails. 183 o added eperl_config.[ch] and moved some code from 184 eperl_global to this file. 185 o added test for strdup() to configure and a private 186 replacement version to eperl_config.c (from FreeBSD 2.2) 187 because Ultrix is missing strdup(). 188 [Thanks to Joerg Lenneis <lenneis@wu-wien.ac.at> for hint] 189 o now the XS-Init function in eperl_perl5.c has a variable 190 list of newXS() calls which come from the new 191 eperl_perl5_sm.h file which itself is generated by 192 eperl_perl5_sm.pl. This way we're now really able to 193 use static module when no DynaLoader is available. 194 [Thanks to Joerg Lenneis <lenneis@wu-wien.ac.at> for hint] 195 971027 o fixed also PORTING.test for new "perl -v" output 196 o changed "prefix" stuff in Makefile.in to make the 197 life of our Debian friends a little bit easier... ;_) 198 o added Debian stuff to contrib/pkg/dpkg/ 199 o added workaround in aclocal.m4 for SunOS's braindead "date" 200 o sucessfully run PORTING.test on platforms found in PORTING 201 202 Changes between 2.2.4 and 2.2.5 203 ------------------------------- 204 [Bugfix and Minor Enhancement] 205 206 970902 o fixed error catching for Parse::ePerl::Precompile. 207 [Thanks to Joseph W. Norton <norton@alum.mit.edu> for hint] 208 970903 o added better support for PerlIO/StdIO. The combination 209 PerlIO/SfIO is currently untested and may be broken because 210 the I/O redirection for SfIO is very different from StdIO. 211 o added Perl I/O layer info to eperl -V 212 o added built time/user info to configure and eperl -V 213 214 Changes between 2.2.3 and 2.2.4 215 ------------------------------- 216 [Bugfix and Major Enhancement] 217 218 970901 o added more hints to PORTING file 219 o fixed a bug in Parse::ePerl for case where $error was undefined 220 [Thanks to Joseph W. Norton <norton@alum.mit.edu> for patch] 221 o fixed -I option: now it works as expected even for 222 cases where you want to add stuff to @INC which is 223 needed at _parse_ time. 224 o now the webmaster can configure the delimiters and other stuff via 225 Apache::ePerl::Config hash from within <Perl>...</Perl> sections in 226 Apache. An example is added to the synopsis of Apache::ePerl 227 manpage. 228 229 Changes between 2.2.2 and 2.2.3 230 ------------------------------- 231 [Security Bugfix and Minor Enhancement] 232 233 970821 o fixed installation section in Apache::ePerl manpage 234 o ***** SECURITY BUGFIX ***** 235 ePerl versions <= 2.2.2 have a heavy security hole when running 236 under a webserver's CGI/1.1 interface. Because ePerl assumed here 237 there are not command line arguments. THIS IS WRONG! According to 238 the CGI/1.1 spec when an ISINDEX document is used (QUERY_STRING!) 239 the query is provided on the command line by the webserver. So, 240 when only one query existed, there was exactly one command line 241 argument and ePerl switched to stand-alone runtime mode and all 242 CGI-mode restrictions are falling down!! 243 ***** SECURITY BUGFIX ***** 244 [Thanks to Andrew Pimlott <pimlott@abel.MATH.HARVARD.EDU> for 245 finding this security bug!] 246 o now a chdir is done before the preprocessor is run so relative 247 paths in #include directives work as expected. [Thanks to Marc 248 Singer <elf@netcom.com> for patch] 249 250 Changes between 2.2.1 and 2.2.2 251 ------------------------------- 252 [Bugfix and Porting Enhancement] 253 254 970804 o removed bad demo.errsync.phtml 255 970806 o fixed a few spaces in Makefile.in 256 970807 o removed wrong $AUTOLOAD from Apache::ePerl 257 o fixed a few other things in Apache::ePerl and Parse::ePerl 258 o added 2.2.1 to VERSIONS file 259 o moved the place of the release macros in Makefile.in 260 before any targets because some braindead Make variants 261 don't like it in the middle of targets. 262 o added a new test 09-dynaloader.t for testing if 263 dynamic loading works correctly. 264 o added error capturing for Parse::ePerl::Evaluate via __DIE__ hook. 265 o fixed the PODs 266 o moved -lperl at linking after DynaLoader 267 970808 o fixed configure help string for --with-perl=PATH 268 o added missing .eperl extension in eperl_security.h 269 [Thanks to Heiko Schlittermann <heiko@os.inf.tu-dresden.de> for hint] 270 o added more stuff to INSTALL.APACHE 271 970811 o fixed wrong coding in setuid check 272 [Thanks to SONE Takeshi <ts1@tsn.or.jp> for patch] 273 274 Changes between 2.2.0 and 2.2.1 275 ------------------------------- 276 [Bugfix and Enhancement] 277 278 970721 o fixed eg/demo.net.phtml 279 970727 o optimized the Perl 5 internal stuff in eperl_eperl5.c 280 [Thanks to Doug McEachern <dougm@opengroup.org> for patches] 281 o added support for Cwd parameter to Parse::ePerl::Precompile and use 282 this also in Apache::ePerl when precompiling. 283 [Thanks to Michael Lazar <michael@vertex.worldweb.com> for idea] 284 o added support for quotation marks and angle brackets in #include 285 and #sinclude directives: these are just skipped. 286 [Thanks to Karl Wallner <karl.wallner@x3network.net> for idea] 287 o now DOCUMENT_ROOT is automatically added to @INC in CGI modes. 288 [Thanks to Karl Wallner <karl.wallner@x3network.net> for idea] 289 o now Apache::ePerl always uses option "ConvertEntities=1" when 290 calling Parse::ePerl::Translate. 291 [Thanks to Mike Pheasant <pheasant@gte.net> for hint] 292 o fixed demos for strict variables and added both .phtml 293 and .iphtml files (same contents!) for easier testing 294 with both nph-eperl and Apache::ePerl. 295 o added support for generated custom HTTP headers 296 to Apache::ePerl. 297 970801 o added "/eperl" to $libdir for installation 298 o now "make install" installs the demo pages into $libdir/eg 299 o added PORTING.test script for making porting tests easier 300 o changed test for Perl in configure from "test -f" to "test -x" 301 o fixed the examples again. 302 o fixed a few things in eperl.pod 303 970802 o enhanced the overwriting of the perl and cc programs 304 for the build process. See INSTALL for more details. 305 o enhanced PORTING.test to be able to set perl and cc. 306 o added overview to INSTALL 307 308 Changes between 2.2b9 and 2.2.0 309 ------------------------------- 310 [Bugfix only] 311 312 970706 o added missing eperl_getopt.h include 313 for eperl_main.c which caused the compilation 314 at least under SunOS 4.x to fail. 315 o added more descriptive error message 316 to configure when Perl version is to old 317 o added hint to INSTALL that the same 318 environment have to be used for compiling 319 ePerl as for Perl. 320 970709 o added klduge to support Perl+SFIO where 321 fwrite has to be replaced by PerlIO_write 322 o enabled ``CC=/path/to/cc ./configure'' again 323 for cases where one wants to overwrite the 324 used C compiler. 325 970714 o removed some unused defines in eperl_global.h 326 which lead to problems under AIX 4.1.4 327 o removed the P_ macros in eperl_proto.h because 328 AIX 4.1.4 is not happy about it because of 329 PrintError defines which has "...". Should 330 be ok without P_ because we need an ANSI 331 compiler since the first days. 332 970715 o changed Perl requirement from 5.00390 to 5.00325 333 970718 o added ANNOUNCE.ADDR file 334 o updated NEWS file and updated ANNOUNCE file 335 o updated VERSIONS file 336 o slightly adjusted NEWS file 337 o created contrib/utils/00README file 338 o added the package files to contrib/pkg/ 339 o updated the demo files 340 341 Changes between 2.2b8 and 2.2b9 342 ------------------------------- 343 344 970623 o added docs about #elsif to eperl.pod and NEWS file 345 970628 o added VERSIONS file with ePerl history 346 o shit happens: the preprocessor parsing had 347 nasty bugs where a string "#include" somewhere 348 in the text leads to a total skip of all 349 real "^#include" directives :-( 350 351 Changes between 2.2b7 and 2.2b8 352 ------------------------------- 353 354 970615 o added hint about Options +ExecCGI 355 to mod/Apache/ePerl.pm 356 o split the ChangeLog file into seperated files 357 o added old stuff from 2.1.2 to end of NEWS file 358 o created a KNOWN.BUGS file 359 o created a INSTALL.NSAPI 360 o slightly fixed the POD in mod/Apache/ePerl.pm 361 o created a new set of demo files in eg/ 362 o fixed some README headers 363 970620 o created a contrib/ dir and initially 364 started to write a shtml2phtml script 365 which converts (X)SSI to ePerl 366 o fixed tabs in top-level Makefile 367 970622 o changed red colors to blue ones in error page 368 o added the new powered-by-ePerl image 369 which can be retrieved via URL nph-eperl/powered.gif 370 o added del2del script to contrib/ 371 o added a #elsif to the preprocessor 372 373 Changes between 2.2b6 and 2.2b7 374 ------------------------------- 375 376 970602 o now etc/newvers always removes /tmp/genopt 377 [Thanks to Phil Ritzenthaler <phil@cgrg.ohio-state.edu> 378 for hint] 379 o now configure determines the full 380 operating system id from Perl's Config.pm 381 970604 o set -Wl,-woff 85 only for IRIX 6.x because 382 IRIX 5.x hates this option.. 383 [Thanks to Ewan McPhail <ewan@epages.iafrica.com> and 384 Phil Ritzenthaler <phil@cgrg.ohio-state.edu> for hint] 385 o fixed the preprocessor: the inital searching 386 of the directives was broken, only worked 387 when a specific order was used. So some 388 directives were skipped :-( 389 o added a #sinclude (secure include) directive 390 which is the same as #include but removes 391 all begin and end delimiters, so this one 392 is a secure way of including stuff from 393 foreign servers. 394 o rewritten the preprocessor part of eperl.pod 395 396 Changes between 2.2b5 and 2.2b6 397 ------------------------------- 398 399 970601 o added a #c preprocessor directive 400 to be able to comment out stuff 401 (even to use "#c #include..." to 402 disable an include directive) 403 [Thanks to J. Douglas Dunlop for hint] 404 o now the preprocessor checks the 405 HTTP response code when http://.. 406 is uses as the file: 407 - when 301 and 302 are returned 408 it searches for the new URL in the Location-header 409 and restarts with this one 410 - when a response code other 411 than 200 (OK) is returned it fails the same way 412 as it fails when a local file it not found: 413 with an error. 414 [Thanks to J. Douglas Dunlop for hint] 415 o removed the Bash check in configure 416 because this it not used 417 418 Changes between 2.2b4 and 2.2b5 419 ------------------------------- 420 421 970530 o fixed perlvers -> perl_vers stuff 422 o fixed again problem with VERSION stuff: 423 ePerl.pm's were broken (ARGL!) 424 425 Changes between 2.2b3 and 2.2b4 426 ------------------------------- 427 428 970529 o fixed preprocessor: #include only 429 valid at column 0, i.e. at start of line 430 o added a test 08 for the preprocessor 431 o now any characters are skipped at end 432 of #include lines up to the newline 433 o added new parsing feature: 434 "_" as the last non-whitespace command disables the automatic 435 adding of the final semicolon. This is to be able to writeo 436 <: if { :> ... <: } :> etc. 437 o added new optional(!) parsing feature 438 which is per-default disabled(!): "\" directly before a newline 439 character outside ePerl blocks prevent the newline to be printed, 440 i.e. the line is continued in the output 441 This feature can be turned on via new option -L. 442 o added new parsing feature: 443 when an end delimiter is directly followed by ``//'' 444 this discards all data up to and including the following 445 newline. 446 o added three new commands to preprocessor 447 which gets converted to ePerl blocks: 448 ``#if expr'' -> ``<: if (expr) { _:>//' 449 ``#else'' -> ``<: } else { _:>//'' 450 ``#endif'' -> ``<: } _:>//'' 451 o imported the patch from ePerl 2.1.2 which 452 fixes a problem under non-GCC compilers 453 with a semicolon in eperl_security.h 454 o removed the sin_len stuff 455 970530 o !! Essential Change !! 456 configure now imports all essential compilation 457 flags from Perl's Config.pm, including the compiler. 458 This is necessary to make ePerl work even under 459 HP-UX and IRIX where they need the special compiler 460 and special compiler flags. The point is that 461 Perl already determined the correct flags, so 462 we can use it. 463 o changed C++ style comments in 464 eperl_parse.c to C style 465 o fixed a missing "int" in eperl_sys.c 466 o renamed eperl_getopt.c to original 467 eperl_egetopt.c and make the namespace 468 clean, i.e. renamed optXXX to egetopt_optXXX. 469 This is needed at least for IRIX 470 o changes egetopt() slightly 471 o replaced the old egetopt() by the GNU getopt() 472 because egetopt() was broken under some 473 systems like IRIX. 474 o option -h now never displays the version 475 o added a missing semicolon in mod/Parse/ePerl.pm 476 o renamed and fixed mod/Parse/t/04_compile.t 477 o now etc/newvers resets the LANG variable 478 to prevent LOCALE warnings 479 o provided an own copy of perl_eval_pv() which 480 is too new. It was introduced in Perl 5.003_97e. 481 Now plain old Perl 5.003 will work again. 482 o the Perl 5 interface modules can only be 483 used with Perl 5.003_90 or higher because 484 of the TIEHANDLE stuff which is not working 485 in prior releases. 486 o fixed update-version target in Makefile.i 487 488 Changes between 2.2b2 and 2.2b3 489 ------------------------------- 490 491 970521 o fixed NEWS and ANNOUNCE files o spellchecked 492 INSTALL, INSTALL.APACHE and eperl.pod 493 970522 o fixed eperl.pod =back stuff and added a paragraph 494 about software leverage. 495 970523 o added reference for Parse::ePerl and Apache::ePerl 496 to eperl.pod 497 o changed abstract in all source files 498 970525 o ** added new option -P for an own #include preprocessor. ** 499 o added new option -I: same as for "perl" to 500 add directories to @INC and preprocessor 501 970526 o ** added support for URLs to #include ** 502 o added a kludge to etc/newvers for systems 503 like BSDI where no "getopt" program is available 504 970527 o added Parse::ePerl::Preprocess which is the 505 interface to the new preprocessor 506 o added six new environment variables: 507 SCRIPT_SRC_PATH, SCRIPT_SRC_PATH_DIR and SCRIPT_SRC_PATH_FILE 508 SCRIPT_SRC_URL, SCRIPT_SRC_URL_DIR and SCRIPT_SRC_URL_FILE 509 o fixed a long-standing bug: temporary files were 510 not removed :-( 511 o added new option -C for HTML entity conversions 512 inside ePerl blocks. This is for people who 513 use HTML editors which have now knowledge of ePerl code. 514 970529 o slightly fixed eperl.pod at some places 515 516 Changes between 2.2b1 and 2.2b2 517 ------------------------------- 518 519 970518 o fixed ``make install UNINST=1'' case 520 for Makefile.PL 521 970520 o added more POD to Apache::ePerl 522 523 Changes between 2.2a2 and 2.2b1 524 ------------------------------- 525 526 970505 o again reorganized the source 527 code and renamed a lot of 528 functions. 529 o created modules/ with h2xs 530 for a Parse::ePerl module 531 o created generation of libeperl.a 532 containing shared objects for 533 Parse::ePerl 534 970506 o created a top-level Makefile.PL 535 for faking a MakeMaker distribution 536 970509 o created a Apache::ePerl module 537 970510 o added option -i for making the 538 delimiters case-sensitive in more 539 explicit way 540 970511 o added t/05* to Parse::ePerl 541 and made delimiter case variable 542 970513 o enhanced Parse::ePerl and 543 finished Apache::ePerl 544 970515 o fixed tests 4 and 5 for non-Bash users 545 and fixed a char/int problem in eperl_main.c 546 and eperl_sys.c 547 [Thanks to Jarom Smith <jarom@jarom-indy.prophet.com>] 548 970516 o finished Apache::ePerl and Parse::ePerl 549 970517 o added a INSTALL.APACHE which describes the 550 installation of ePerl as an SSSL under Apache 551 552 Changes between 2.2a1 and 2.2a2 553 ------------------------------- 554 555 970504 o removed -s and added -m 755 556 to install in configure 557 o optimized the parser; no 558 ``print "";'' constructs are 559 never created which at least slightly 560 speeds up processing. 561 562 Changes between 2.2a0 and 2.2a1 563 ------------------------------- 564 565 970503 o now the begin and end delimiters are searched 566 case-insensitive. 567 o added -h for displaying the usage list. 568 Just to be consequent with options. 569 o added leading and trailing whitespaces 570 for Perl blocks when translating the source file 571 to make the -x display more readable. 572 573 Changes between 2.1.1 and 2.2a0 574 ------------------------------- 575 576 970502 o added support for '=' prefix: now <:= ... :> 577 automatically gets converted to "print ...". Now one 578 can interpolate variables in a more shorter way via 579 <?=$variable!> instead of the long <? print 580 $variable; !> (in conjunction with the next 581 enhancements) 582 o now ePerl is much smarter when converting the ePerl 583 blocks, i.e. it now recognizes final semicolons and 584 automatically puts one if missing. Now <: cmd;cmd :> 585 is also valid. 586 o Whitespaces are not only stripped 587 from the beginning of a ePerl block. Now 588 they are stripped from the end, too. 589 o !!CHANGED THE PARSING AGAIN!! 590 Now again (as in 2.0.3) ePerl block end delimiters are 591 found via plain forward search. No quoted strings are 592 recognized. The reason is that constructs with odd 593 number of quoting characters are more often seen than 594 end delimiters in quoted string. And one more fact: It 595 is easier to escape the end delimiter in a quotes 596 string (e.g. via backslahes) than to rewrite a 597 complex construct (e.g. m|"[^"]+"| !!). 598 o added -T (Tainting) and -w (Warnings) options 599 which can be used like the same in "perl". 600 o added alpha and snap releases to NEWVERS 601 602