Mailing List Archive

ANNOUNCE: Embperl 2.0b6
The URL

ftp://ftp.dev.ecos.de/pub/perl/embperl/Embperl-2.0b6.tar.gz

has entered CPAN as

file: $CPAN/authors/id/G/GR/GRICHTER/Embperl-2.0b6.tar.gz
size: 623200 bytes
md5: 966e109d700fb76e6df18316c1cf16a1


Embperl is a system for building dynamic websites with Perl. See
http://perl.apache.org/embperl/ (english) or http://www.ecos.de/embperl/
(german) for more information.


I am very happy to announce the 6th beta of Embperl 2.0. It contains a lot
of important improvements since the last beta release:

- Reworked the internal object structure and make it available to Perl
- Introduction of the application object and support for it in
Embperl::Object, which eases the proper seaparation of Code and Layout
- Support for internationalization
- Module for form validation (client- and server-side)
- Moved Embperl from HTML::Embperl to Embperl namespace since it no longer
only serves HTML. This also allows to use 1.3 and 2.0 within the same
server.
- Support for Apache native configuration directives. No need to use
enviroment variables for configuration anymore (but still possible)
- Cleanup of a lot of legency code and move of most of the Perl parts into
C, which makes execution of small files 30%-50% faster
- Better support for XML, Recipes, Providers, Caches etc.

IMPORTANT: The documentation is not up to date yet, all new features are
documented in README.v2, so make sure you read that file first.

This release contains all features that I have planed for 2.0. So I will now
focus and bugfixing and documentation. Please give this beta a try and give
me feedback, so we soon can make a final 2.0 release.

Enjoy Gerald

All Changes since 2.0b5:

- Embperl have move from the namespace HTML::Embperl to Embperl.
This is because Embperl is no longer only a HTML framework,
but is suitable for other formats like XML too. Also this allows
to install Embperl 1.x and 2.x on the same machine without
conflicts, to make a smooth upgrade.
- Rewrote Embperl internal data structures. The Embperl request
structure is now splitted into thread, application, request
and component structure.
- Moved nearly all of the per request/component initialization code
from Perl to C. Together with the optimized data structures, this
speeds up request/component initialization, which is especialy a
performance improvement for pages that do a lot calls to
Execute (up to 50% for small includes).
- All members of these structures now available form Perl
which avoids using mod_perl Apache object and enviroment
variables in most cases, makeing the resulting pages more
independend from the environment they run under. On the other
side this gives quite a few new possibilities to influence
what Embperl is doing, especialy together with Embperl::Object.
- Introduced new application object which holds together a set
of pages and allows to configure the Embperl logfile and session
handling different for each application.
- Added Embperl::Object application object, which is invoked during
request initialization. Any application code can now go there.
This allows a proper separation of Code and Design and building of
MVC (Model, Controller, View), 2-Tier and 3-Tier applications
with Embperl.
- Added EMBPERL_APP_HANDLER_CLASS to set the application object
for Embperl pages, when not using Embperl::Object
- Embperl now uses nativ Apache configuration directives instead
of enviroment variables when running under mod_perl. You need to
load Embperl before you can use any of them, either via
"PerlModule Embperl" or via "use Embperl" inside of a startup script.
"Embperl_UseEnv on" is provided to get the old behaviour of using
environment variables for configuration.
- The default for input unescaping is now set to off. So people which are
working with an text editor should be happy, people who are using any
sort of HTML editor should use EMBPERL_INPUT_ESCMODE to set the way
Embperl interprets the input.
- Added new configuration directives EMBPERL_INPUT_ESCMODE which controls
the unescaping of the input. This superseds the old optRawInput and
allows a more differentiated control.
- Added form data validation. Embperl is now capable to do server-side
and client-side validation of form input. You just have to define
a set of rules and Embperl generates the correct JavaScript code and
does the validation when the form data is posted to the server. By
writing or overriding class, the validatior could be extented.
See Embperl::Form::Validate for details.
- Added [= foo =] block and $r -> gettext method for page localization.
When the page is executed the 'foo' is replaced with a localizied
message for the current language.
- Added methods r -> messages and r -> default_messages to define
current message set for current language during application init.
- Added embpmsgid.pl utility to extrcat message ids from Embperl pages
and put them in a Data::Dumper or dbm file.
- Simplified the definition of the recipe structure. This allows much
more intuitiv definition of a new recipe.
- A recipe struture can now also be passed directly to the Execute
function as parameter.
- The get_recipe function now can be overriden by a custom application
object.
- Enhanced POD parser. Now generates a similar output as pod2xml,
which is better suitable for XSLT processing. Also the POD
parser now can pasers POD out of other Embperl files.
- Fixed problem with parameter passing to xslt processors, which
were always ignored on the first request.
- Renamed configuration directive EMBPERL_FILESMATCH to
EMBPERL_URIMATCH to better describe what it is doing.
- exit works now outside of [$ sub $]
- New configuration directive EMBPERL_SESSION_MODE allows
to configure to pass session inside of the QUERY_STRING
- Embperl doesn't add's a \r\n at the end of textfiles
anymore.
- Moved send_error_page and mail_errors into Embperl::App, so they can
be overridden by a custom application object.
- Added configuration directives EMBPERL_MAIL_ERRORS_LIMIT,
EMBPERL_MAIL_ERRORS_RESET_TIME and EMBPERL_MAIL_ERRORS_RESEND_TIME
to limit the number of errors send in a small time.
- When running under Embperl::Object all sourcefiles including for
example xsl stylesheets are now search throught the searchpath.
- Fixed a bug that causes input fields and textarea field to not
autofilled anymore after a sub was called. Reported by Kee Hinckley.




-------------------------------------------------------------
Gerald Richter ecos electronic communication services gmbh
Internetconnect * Webserver/-design/-datenbanken * Consulting

Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz
E-Mail: richter@ecos.de Voice: +49 6133 925131
WWW: http://www.ecos.de Fax: +49 6133 925152
-------------------------------------------------------------




---------------------------------------------------------------------
To unsubscribe, e-mail: announce-unsubscribe@perl.apache.org
For additional commands, e-mail: announce-help@perl.apache.org