Revision history for Perl extension HTML::Embperl.
0.24-beta 13 Jan 1998
- Added the option optRawInput which causes Embperl not to preprocess the
source for a perl expression (Only exceptions is that CR will be removed).
This option should be set when you writing your code with an ascii editor.
If you using a WYSIWYG editor, which insert unwanted html tags in your
perl expressions and escapes special charcaters automaticly (i.e.
< will occur as < in the source), you should not set this option, and
Embperl will automaticly convert the html input back to the perl
expression you written. (Thanks to Todd R. Eigenschink for a patch)
- $0 is set to filename of html source
- Change Current Working Directory to directory of html source
- Warning messages now are also logged in logfile at the correct
position next to the source line
- Perl error and warning messages contains the filename and correct
linenumber of the html source
- Sourcelines in logfile contain linenumbers
- Output via [+ ... +] of undefined values at the end of a dynamic table
(which must be there to end the table) do not generate a warning anymore
NOTE: If you use them in a expression (such like $a = $arr[$row] or simply
inside " ", you will still get a warning)
- Open html source in binary mode on Win32 to avoid overhead of crlf -> lf
translation.
- Use aplog_error for apache_1.3 to avoid senseless os errors written to
httpd error log
- Removed some uninitializied value messages when running with
-w / PerlWarn on spotted by Todd R. Eigenschink
- Fixed a bug which has caused nested while loop to exeute incorrect if
the condition of the outer one if false
0.23-beta 31 Dec 1997
- Fixed a bug which causes $req_rec to be not defined anymore (Thanks to
Todd R. Eigenschink for the hint and debugging)
- Fixed a bug in escaping special html char to normal ascii (Thanks to
Todd R. Eigenschink for the hint)
- Makefile.PL now set the path to your perl binary in embpexec.pl and
embpexec.test.pl, so it works regardless where your perl is located
(Thanks to Randal Schwarz for the hint)
- Added the SSLDisable to the test config when running an httpsd. (Thanks
to David Scott for the hint and Ralf S. Engelschall for the Syntax)
- Fixed a bug in tag interpreation causing random errors when not
compiled for mod_perl
0.22-beta 28 Dec 1997
- Changed include path generated in Makefile.PL so Embperl also
compiles with apache_1.3b3 (Thanks to Doug Bagley for the hint)
0.21-beta 25 Dec 1997
- Embperl offline mode now works under win 32 (mod_perl and cgi mode
not tested under win 32 yet, but maybe it works too)
- Totaly reworked safenamespace and operatormask handling. Works now
without memory leak, is fully configurable and does also a p-code
caching. If you use it, please look at the documentation, because
configuration has changed.
- Embperl now sends it's own error document if it detects an error.
The page contains all the error messages and if you have the
dbgLogLink enabled, all errors are links to the corresponding
line in the logfile. (Could be disabled with optDisableEmbperlErrorPage)
- Added new Metacommand [$VAR ... $], which can be used to declare
variables and apply the strict pragma (same as use strict ; use vars )
- Added debug flag dbgHeadersIn which causes Embperl to log all http
headers which are received from the client
- Don't change any unknown HTML Escapes (i.e. && has been translated
to ? in versions < 0.21)
- dbgShowCleanup logs all variables which are automatily undefed at the
end of a request (for scalars also the value is shown)
- Error messages will also be cached, so that the compiling of the code
only takes place once, because errornous perl code, will cause memory
leaks in perl itself, if it's compiled on and on.
- Optimized the compiling of the embbeded perl code
- Changed use Apache::Constants to be conform with new default exports
introduced in mod_perl-1.07_01
- Output of hidden metacommand is sorted in the same order as the input
from the formfields or sorting order can be supplied as third argument
- will override the correspondig http header
this avoids netscape from asking the user to reload the document
when the content-type differs between the http header and the
meta http-equiv
This can also be used to set http headers
- Fixed a problem that Embperl magicaly variables does not work when
the package exists before the first call to Embperl
- Fixed a problem that causes a SIGSEGV when retrieving a document,
which contains a perl error, a second time from the same child
- Fixed a problem that cause Embperl to terminate in offline/cgi-mode
when file was not found or access was forbidden
- Fixed a problem with the hidden metacommand when arguments supplied
with surounding spaces
- Fixed a problem that Embperl does not handle metacommand correctly
when HTML tags (e.g. ) are embbeded
0.20-beta 15 Nov 97
- Every file is executed in a separate package (don't confuse this
with safe namespace) to reduce of unwanted effects for each other
- Added configuration directive EMBPERL_PACKAGE which can be used to override
the automatic genrated package name
- The namespace (package) used by a request is cleanup afterwards.
That means that every scalar, hash or array is undef'ed, after the
request to make sure nothing is lying arround an will the next request
(maybe) make misbehave.
This reqire mod_perl with PERL_CLEANUP=1 and PERL_STACKED_HANDLER=1!
NOTE: To get persitent variables place them in another namespace i.e.
write $persitent::x instead of $x
- Added configuration directive EMBPERL_OPTIONS to configure various runtime
options. Now only the scalar cleanup can be disabled.
- use log_error for writing to apache error log to get timestamp
- Escaping inside a tag is change from html escape to url escape
i.e. space is translated to + and & is translated to %26 and so on
- Escaping can now be turned on and off via $escmode
- Concats ENV and cgi_env under mod_perl so the PerlSetEnv can be used
instead of SetEnv for configuration. In contrast to SetEnv, PerlSetEnv
allows differnet values per directory/virtual host
- Added two links to show source-loglines and eval-loglines when dbgLogLink
is enabled to have a quick jump to the logfile
- Reget pid for every request, so the correct one will be written to the
logfile, also when Embperl is loaded at server startup
- Check error log in make test, added test for error output
- Fixed a bug which causes Embperl to cause a SIGSEGV when an perl syntax
error occured
- Fixed a bug so that a '>' inside of [+/- ... -/+] is not detected as the end
of an html tag (Thanks to Todd R. Eigenschink)
0.19-beta 29 Oct 97
- rewritten the code for the LOG handle. Now the handle LOG is tied so every
print/printf is written to embperl.log at the right position. Use this to
do logging from your embeded code or modules
- Fixed a bug which causes garbage displayed in dynamic tables or make parts
of the table lost at all
0.18-beta 25 Oct 97
- Added caching of p-code. Now all perl-code is compiled only once. On the
second request the compiled p-code is used. This makes, for example, the
table.htm from the test about 4 times faster on the second run then it was in
previous versions of Embperl. Also tables and loops are faster in the first
request, because the code is only compiled in the first iteration.
-