cvs commit: modperl-docs/src/docs/2.0/user/handlers protocols.pod

2003-02-17 Thread stas
stas2003/02/17 01:43:21

  Modified:src/docs/2.0/api/Apache Reload.pod
   src/docs/2.0/user/handlers protocols.pod
  Log:
  document: PerlPreConnectionHandler Apache::Reload
  
  Revision  ChangesPath
  1.2   +14 -2 modperl-docs/src/docs/2.0/api/Apache/Reload.pod
  
  Index: Reload.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/Apache/Reload.pod,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- Reload.pod27 Jan 2003 04:05:12 -  1.1
  +++ Reload.pod17 Feb 2003 09:43:21 -  1.2
  @@ -9,6 +9,9 @@
 PerlModule Apache::Reload
 PerlInitHandler Apache::Reload
   
  +  # when working with protocols and connection filters
  +  # PerlPreConnectionHandler Apache::Reload
  +
 # Reload groups of modules:
 # httpd.conf:
 PerlModule Apache::Reload
  @@ -57,11 +60,20 @@
   
   =head2 Monitor All Modules in C<%INC>
   
  -To monitor and reload all modules in C<%INC>, simply add the following
  -configuration to your I:
  +To monitor and reload all modules in C<%INC> at the beginning of
  +request's processing, simply add the following configuration to your
  +I:
   
 PerlModule Apache::Reload
 PerlInitHandler Apache::Reload
  +
  +When working with connection filters and protocol modules
  +C should be invoked in the pre_connection stage:
  +
  +  PerlPreConnectionHandler Apache::Reload
  +
  +See also the discussion on
  
+C>.
   
   =head2 Register Modules Implicitly
   
  
  
  
  1.4   +0 -3  modperl-docs/src/docs/2.0/user/handlers/protocols.pod
  
  Index: protocols.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/handlers/protocols.pod,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- protocols.pod 12 Nov 2002 17:04:37 -  1.3
  +++ protocols.pod 17 Feb 2003 09:43:21 -  1.4
  @@ -73,9 +73,6 @@
   C>, because it's not
   known yet which resource the request will be mapped to.
   
  -XXX: As of this moment C is not being
  -executed by mod_perl. Stay tuned.
  -
   Example:
   
   A I handler accepts connection record and socket
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/debug c.pod

2003-02-17 Thread stas
stas2003/02/16 19:28:06

  Modified:src/docs/2.0/devel/debug c.pod
  Log:
  typo
  
  Revision  ChangesPath
  1.4   +1 -1  modperl-docs/src/docs/2.0/devel/debug/c.pod
  
  Index: c.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/debug/c.pod,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- c.pod 31 Dec 2002 04:07:37 -  1.3
  +++ c.pod 17 Feb 2003 03:28:06 -  1.4
  @@ -738,7 +738,7 @@
   
   The mod_perl I's include a rule for macro expansions which
   you can find by looking for the C rule. To expand all macros in
  -a certain C file, you should run C, which will create
  +a certain C file, you should run C, which will create
   I with all macros expanded in it. For example to create
   I with all macros used in I:
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/core coding_style.pod

2003-02-16 Thread stas
stas2003/02/16 14:50:32

  Modified:src/docs/2.0/devel/core coding_style.pod
  Log:
  typos
  
  Revision  ChangesPath
  1.2   +2 -2  modperl-docs/src/docs/2.0/devel/core/coding_style.pod
  
  Index: coding_style.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/core/coding_style.pod,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- coding_style.pod  9 Dec 2002 16:29:57 -   1.1
  +++ coding_style.pod  16 Feb 2003 22:50:32 -  1.2
  @@ -131,7 +131,7 @@
   always add it even if it's not required, so when you add a new
   statement you don't have to remember to add C<;> on a previous line.
   
  -Do:0
  +Do:
   
 sub foo {
 statement1;
  @@ -139,7 +139,7 @@
 statement3;
 }
   
  -Don't
  +Don't:
   
 sub foo {
 statement1;
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/compat compat.pod

2003-02-12 Thread stas
stas2003/02/12 15:51:01

  Modified:src/docs/2.0/user/compat compat.pod
  Log:
  document the new Apache::compat methods:
$connection->auth_type
$connection->user
  
  Revision  ChangesPath
  1.43  +18 -1 modperl-docs/src/docs/2.0/user/compat/compat.pod
  
  Index: compat.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/compat/compat.pod,v
  retrieving revision 1.42
  retrieving revision 1.43
  diff -u -r1.42 -r1.43
  --- compat.pod29 Jan 2003 07:18:33 -  1.42
  +++ compat.pod12 Feb 2003 23:51:00 -  1.43
  @@ -617,8 +617,25 @@
   supported. For a complete info on these see
   I.
   
  +=head1 C
   
  -=head1 Apache::File
  +=head2 C<$connection-Eauth_type>
  +
  +The record I doesn't exist in the Apache 2.0's connection
  +struct. It exists only in the request record struct.
  +C provides a back compatibility method, though it
  +relies on the availability of the global Crequest>, which
  +requires the configuration to have:
  +
  +  PerlOptions +GlobalRequest
  +
  +to set it up for earlier stages than response handler.
  +
  +=head2  C<$connection-Euser>
  +
  +See Cauth_type|/C__connection_E_gt_auth_type_>>.
  +
  +=head1 C
   
   The methods from mod_perl 1.0's module C have been
   either moved to other packages or removed.
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/general/perl_reference perl_reference.pod

2003-02-09 Thread stas
stas2003/02/08 18:05:21

  Modified:src/docs/1.0/guide install.pod modules.pod porting.pod
strategy.pod
   src/docs/general/os/win32 faq.pod
   src/docs/general/perl_reference perl_reference.pod
  Log:
  correct internal xref links
  
  Revision  ChangesPath
  1.21  +7 -4  modperl-docs/src/docs/1.0/guide/install.pod
  
  Index: install.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/install.pod,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- install.pod   29 Jan 2003 23:44:15 -  1.20
  +++ install.pod   9 Feb 2003 02:05:19 -   1.21
  @@ -1203,10 +1203,13 @@
   the I convention, instead of using hardcoded version numbers.
   Remember to replace the I place-holders with the version numbers
   of the distributions you are about to use.  To find out the latest
  -stable version number, visit the components' sites.  So if I say
  -http://perl.apache.org/dist/mod_perl-1.xx.tar.gz , go to
  -http://perl.apache.org/dist/ in order to learn the version number of
  -the latest stable release and download the appropriate file.
  +stable version number, visit the components' sites.  So if the
  +instructions say:
  +
  +  http://perl.apache.org/dist/mod_perl-1.xx.tar.gz
  +
  +go to http://perl.apache.org/download/ in order to learn the version
  +number of the latest stable release and download the appropriate file.
   
   Unless otherwise noted, all the components install themselves into a
   default location.  When you run C the installation
  
  
  
  1.14  +1 -1  modperl-docs/src/docs/1.0/guide/modules.pod
  
  Index: modules.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/modules.pod,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- modules.pod   3 Dec 2002 14:38:37 -   1.13
  +++ modules.pod   9 Feb 2003 02:05:19 -   1.14
  @@ -124,7 +124,7 @@
   =head1 Apache::DBI - Initiate a persistent database connection
   
   See L
  
+Databases|guide::databases/Apache__DBI___Initiate_a_persistent_database_connection>
   
   =head1 Apache::Watchdog::RunAway - Hanging Processes Monitor and Terminator
   
  
  
  
  1.17  +30 -26modperl-docs/src/docs/1.0/guide/porting.pod
  
  Index: porting.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/porting.pod,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- porting.pod   25 Nov 2002 22:00:33 -  1.16
  +++ porting.pod   9 Feb 2003 02:05:19 -   1.17
  @@ -39,12 +39,12 @@
   It can be a good idea to tighten up some of your Perl programming
   practices, since mod_perl doesn't tolerate sloppy programming.
   
  -This chapter relies on a certain level of Perl knowledge. Please
  -read through the L chapter and 
make sure you
  -know the material covered there. This will allow me to concentrate on
  -pure mod_perl issues and make them more prominent to the experienced
  -Perl programmer, which would otherwise be lost in the sea of Perl
  -background notes.
  +This chapter relies on a certain level of Perl knowledge. Please read
  +through the L
  +chapter and make sure you know the material covered there. This will
  +allow me to concentrate on pure mod_perl issues and make them more
  +prominent to the experienced Perl programmer, which would otherwise be
  +lost in the sea of Perl background notes.
   
   Additional resources:
   
  @@ -136,7 +136,8 @@
   opposed to anonymous - subroutine defined inside another subroutine)
   that refers to a lexically scoped variable defined outside this nested
   subroutine.  This effect is explained in L.
  +Nested 
  
+Subroutines|general::perl_reference::perl_reference/my___Scoped_Variable_in_Nested_Subroutines>.
   
   Do you see a nested named subroutine in my script? I don't!  What's
   going on? Maybe it's a bug? But wait, maybe the perl interpreter sees
  @@ -483,7 +484,8 @@
 }
   
   To make sure you don't miss these bugs always test your CGI in
  -L.
  +L.
   
   To solve this particular C modifier problem refer to L.
  @@ -498,7 +500,7 @@
   =head1 @INC and mod_perl
   
   The basic Perl C<@INC> behaviour is explained in section L.
  +do(), %INC and @INC 
Explained|general::perl_reference::perl_reference/userequiredo_INC_and__INC_Explained>.
   
   When running under mod_perl, once the server is up C<@INC> is frozen
   and cannot be updated.  The only opportunity to I modify
  @@ -1201,7 +1203,7 @@
   variables on its first invocation.  To do that, you would need to
   replace each occurrence of return() and warn() with die(). If you do
   that, take a look at t

cvs commit: modperl-docs/src/outstanding/stats graph.jpg input.data netcraft.html pseudo-graph.jpg securityspace.html

2003-02-05 Thread stas
stas2003/02/05 15:48:08

  Modified:src/outstanding/stats graph.jpg input.data netcraft.html
pseudo-graph.jpg securityspace.html
  Log:
  jan2003 update
  
  Revision  ChangesPath
  1.12  +156 -146  modperl-docs/src/outstanding/stats/graph.jpg
  
<>
  
  
  1.12  +1 -0  modperl-docs/src/outstanding/stats/input.data
  
  Index: input.data
  ===
  RCS file: /home/cvs/modperl-docs/src/outstanding/stats/input.data,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- input.data2 Jan 2003 00:49:04 -   1.11
  +++ input.data5 Feb 2003 23:48:07 -   1.12
  @@ -1,4 +1,5 @@
   # this file must have the columns \t separated 
  +January 2003 4108930 458057
   December 20024082690 461309
   November 20023943776 462402
   October 2002 3753202 434418
  
  
  
  1.12  +1 -0  modperl-docs/src/outstanding/stats/netcraft.html
  
  Index: netcraft.html
  ===
  RCS file: /home/cvs/modperl-docs/src/outstanding/stats/netcraft.html,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- netcraft.html 2 Jan 2003 00:49:04 -   1.11
  +++ netcraft.html 5 Feb 2003 23:48:07 -   1.12
  @@ -31,6 +31,7 @@
   
   
   SurveyHostnamesUnique IP Addresses
  + January 2003   4108930458057
December 2002  4082690461309
November 2002  3943776462402
October 2002   3753202434418
  
  
  
  1.12  +37 -45modperl-docs/src/outstanding/stats/pseudo-graph.jpg
  
<>
  
  
  1.13  +2 -2  modperl-docs/src/outstanding/stats/securityspace.html
  
  Index: securityspace.html
  ===
  RCS file: /home/cvs/modperl-docs/src/outstanding/stats/securityspace.html,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- securityspace.html2 Jan 2003 00:49:04 -   1.12
  +++ securityspace.html5 Feb 2003 23:48:07 -   1.13
  @@ -7,12 +7,12 @@
   
   
SecuritySpace provides an http://www.securityspace.com/s_survey/data/man.200212/apachemods.html?mod=cGVybA==";>Apache
  
+href="http://www.securityspace.com/s_survey/data/man.200301/apachemods.html?mod=cGVybA==";>Apache
   Module Report on mod_perl comprising statistics and a graph based
   on the data collected by http://www.securityspace.com/";>www.securityspace.com. They
   also feature http://www.securityspace.com/s_survey/data/man.200212/apachemods.html";>a
  
+href="http://www.securityspace.com/s_survey/data/man.200301/apachemods.html";>a
   comparison between all the Apache modules they survey.  
   
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/general/testing testing.pod

2003-02-03 Thread stas
stas2003/02/02 22:45:08

  Modified:src/docs/general/testing testing.pod
  Log:
  doh, yet another L<> fix
  
  Revision  ChangesPath
  1.11  +1 -1  modperl-docs/src/docs/general/testing/testing.pod
  
  Index: testing.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/general/testing/testing.pod,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- testing.pod   3 Feb 2003 06:34:27 -   1.10
  +++ testing.pod   3 Feb 2003 06:45:08 -   1.11
  @@ -2375,7 +2375,7 @@
   tests, such as: C, C, C,
   C, C, C, C, and
   C. See the
  -C> manpage for
  +C> manpage for
   more information.
   
   =head2 Auto Configuration
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/general/testing testing.pod

2003-02-03 Thread stas
stas2003/02/02 22:34:27

  Modified:src/docs/general/testing testing.pod
  Log:
  pod fix
  
  Revision  ChangesPath
  1.10  +1 -1  modperl-docs/src/docs/general/testing/testing.pod
  
  Index: testing.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/general/testing/testing.pod,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- testing.pod   3 Feb 2003 06:33:57 -   1.9
  +++ testing.pod   3 Feb 2003 06:34:27 -   1.10
  @@ -2375,7 +2375,7 @@
   tests, such as: C, C, C,
   C, C, C, C, and
   C. See the
  -C manpage for
  +C> manpage for
   more information.
   
   =head2 Auto Configuration
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/general/testing testing.pod

2003-02-03 Thread stas
stas2003/02/02 22:33:57

  Modified:src/docs/general/testing testing.pod
  Log:
  add a section that pointers to other Apache::TestUtil methods
  
  Revision  ChangesPath
  1.9   +9 -0  modperl-docs/src/docs/general/testing/testing.pod
  
  Index: testing.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/general/testing/testing.pod,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- testing.pod   22 Jan 2003 06:59:42 -  1.8
  +++ testing.pod   3 Feb 2003 06:33:57 -   1.9
  @@ -2369,6 +2369,15 @@
   plan(), ok() and other functions() will work correctly more than one
   test is running under the same interpreter.
   
  +=head2 Helper Functions
  +
  +C provides several helper functions for writing
  +tests, such as: C, C, C,
  +C, C, C, C, and
  +C. See the
  +C manpage for
  +more information.
  +
   =head2 Auto Configuration
   
   If the test is comprised only from the request part, you have to
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/handlers filters.pod

2003-02-03 Thread stas
stas2003/02/02 21:45:24

  Modified:src/docs/2.0/user/handlers filters.pod
  Log:
  fix a bug in examples, use base for Apache::Filter, to inherit the
  sub attributes
  
  Revision  ChangesPath
  1.11  +2 -2  modperl-docs/src/docs/2.0/user/handlers/filters.pod
  
  Index: filters.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/handlers/filters.pod,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- filters.pod   9 Dec 2002 16:47:41 -   1.10
  +++ filters.pod   3 Feb 2003 05:45:23 -   1.11
  @@ -848,7 +848,7 @@
 use strict;
 use warnings;
 
  -  use Apache::Filter ();
  +  use base qw(Apache::Filter);
 
 use Apache::Const -compile => qw(OK);
 
  @@ -944,7 +944,7 @@
 use strict;
 use warnings;
 
  -  use Apache::Filter;
  +  use base qw(Apache::Filter);
 
 use APR::Brigade ();
 use APR::Bucket ();
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/config config.pod

2003-02-03 Thread stas
stas2003/02/02 19:22:09

  Modified:src/docs/2.0/user/config config.pod
  Log:
  fix the explanation for 'PerlInterpScope handler'
  
  Revision  ChangesPath
  1.35  +3 -3  modperl-docs/src/docs/2.0/user/config/config.pod
  
  Index: config.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/config/config.pod,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- config.pod31 Jan 2003 23:07:57 -  1.34
  +++ config.pod3 Feb 2003 03:22:09 -   1.35
  @@ -774,9 +774,9 @@
   
 PerlInterpScope handler
   
  -With this configuration, an interpreter will be selected before
  -C are run, and put back immediately afterwards,
  -before Apache moves onto the authentication phase.  If a
  +For example if C is configured, an interpreter will
  +be selected before running the handler, and put back immediately
  +afterwards, before Apache moves onto the next phase. If a
   C is configured further down the chain, another
   interpreter will be selected and again put back afterwards, before
   C is run.
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/config config.pod

2003-01-31 Thread stas
stas2003/01/31 15:07:57

  Modified:src/docs/2.0/user/config config.pod
  Log:
  - fix /-Mblib/-Mlib/
  - add a note that Apache2 and other perl modules need to be reloaded for
  +Parent
  
  Revision  ChangesPath
  1.34  +11 -3 modperl-docs/src/docs/2.0/user/config/config.pod
  
  Index: config.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/config/config.pod,v
  retrieving revision 1.33
  retrieving revision 1.34
  diff -u -r1.33 -r1.34
  --- config.pod29 Jan 2003 23:28:06 -  1.33
  +++ config.pod31 Jan 2003 23:07:57 -  1.34
  @@ -347,19 +347,27 @@
   one for each CVirtualHostE>, each with its own namespace and
   pointing to a different paths in C<@INC>:
   
  -META: is -Mblib portable? (problems with -Mlib on Darwin/5.6.0?)
  +META: is -Mlib portable? (problems with -Mlib on Darwin/5.6.0?)
   
 
 ServerName dev1
 PerlOptions +Parent
  -  PerlSwitches -Mblib=/home/dev1/lib/perl
  +  PerlSwitches -Mlib=/home/dev1/lib/perl
  +  PerlModule Apache2
 
   
 
 ServerName dev2
 PerlOptions +Parent
  -  PerlSwitches -Mblib=/home/dev2/lib/perl
  +  PerlSwitches -Mlib=/home/dev2/lib/perl
  +  PerlModule Apache2
 
  +
  +Remember that C<+Parent> gives you a completely new Perl interpreters
  +pool, so all your modifications to C<@INC> and preloading of the
  +modules should be done again. Consider using L if you want to inherit from the parent Perl
  +interpreter.
   
   Or even for a given location, for something like "dirty" cgi scripts:
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/help help.pod

2003-01-31 Thread stas
stas2003/01/31 15:07:08

  Modified:src/docs/2.0/user/help help.pod
  Log:
  how to create report without having t/REPORT
  
  Revision  ChangesPath
  1.17  +7 -2  modperl-docs/src/docs/2.0/user/help/help.pod
  
  Index: help.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/help/help.pod,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- help.pod  9 Dec 2002 16:47:41 -   1.16
  +++ help.pod  31 Jan 2003 23:07:08 -  1.17
  @@ -59,11 +59,16 @@
   The C utility is autogenerated when C is
   run, so you should have it already after building mod_perl.
   
  +META: soon we will have C report script which will be
  +installed system-wide. For now, if you don't have the source, you can
  +create the report by running the following:
  +
  +  % perl -MApache2 -MApache::TestReportPerl \
  +  -le 'Apache::TestReportPerl->new->run'
  +
   Now add the problem description to the report and send it to the
   L.
   
  -META: soon we will have C report script which will be
  -installed system-wide
   
   =head2 Problem Description
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/intro start_fast.pod

2003-01-31 Thread stas
stas2003/01/30 16:32:35

  Modified:src/docs/2.0/user/install install.pod
   src/docs/2.0/user/intro start_fast.pod
  Log:
  stress again that Apache and Perl have to be built and installed before
  proceeding.
  
  Revision  ChangesPath
  1.36  +3 -0  modperl-docs/src/docs/2.0/user/install/install.pod
  
  Index: install.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/install/install.pod,v
  retrieving revision 1.35
  retrieving revision 1.36
  diff -u -r1.35 -r1.36
  --- install.pod   18 Jan 2003 01:35:55 -  1.35
  +++ install.pod   31 Jan 2003 00:32:35 -  1.36
  @@ -234,6 +234,9 @@
   
   =head2 Configuring mod_perl
   
  +Before you proceed make sure that Apache 2.0 has been built and
  +installed. mod_perl B be built before that.
  +
 % cd modperl-2.0
 % perl Makefile.PL MP_AP_PREFIX=$HOME/httpd/prefork \
   MP_INST_APACHE2=1
  
  
  
  1.11  +3 -1  modperl-docs/src/docs/2.0/user/intro/start_fast.pod
  
  Index: start_fast.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/intro/start_fast.pod,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- start_fast.pod27 Jan 2003 04:05:13 -  1.10
  +++ start_fast.pod31 Jan 2003 00:32:35 -  1.11
  @@ -16,7 +16,9 @@
   
   Before installing mod_perl, you need check that you have the
   L.
  +prerequisites|docs::2.0::user::install::install/Prerequisites> B.
  +Apache and the right Perl version have to be built and installed
  +B you can proceed with building mod_perl.
   
   In this chapter we assume that httpd was installed under
   I<$HOME/httpd/prefork>.
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/1.0/guide install.pod

2003-01-29 Thread stas
stas2003/01/29 15:44:15

  Modified:src/docs/1.0/guide install.pod
  Log:
  use italic for files
  
  Revision  ChangesPath
  1.20  +1 -1  modperl-docs/src/docs/1.0/guide/install.pod
  
  Index: install.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/install.pod,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- install.pod   29 Jan 2003 22:27:38 -  1.19
  +++ install.pod   29 Jan 2003 23:44:15 -  1.20
  @@ -1559,7 +1559,7 @@
--enable-module=rewrite
 % make
   
  -Note: C and C do not exist at this time. They
  +Note: I and I do not exist at this time. They
   will be generated during compilation.
   
   =item 1
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/config config.pod

2003-01-29 Thread stas
stas2003/01/29 15:28:06

  Modified:src/docs/2.0/user/config config.pod
  Log:
  - add an item "Is There a Way to Modify @INC on a Per-VirtualHost" so it's
  easier to find the info
  - update the link to Apache::Directive
  - update maintainers
  
  Revision  ChangesPath
  1.33  +14 -12modperl-docs/src/docs/2.0/user/config/config.pod
  
  Index: config.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/config/config.pod,v
  retrieving revision 1.32
  retrieving revision 1.33
  diff -u -r1.32 -r1.33
  --- config.pod10 Jan 2003 04:26:57 -  1.32
  +++ config.pod29 Jan 2003 23:28:06 -  1.33
  @@ -199,8 +199,8 @@
   I handler, with the C handler, you can gain even
   more performance. (This handler isn't available in mod_perl 1.0.)
   
  -Unless the C callback running under the C
  -handler is configured with:
  +Unless the C callback, running under the C
  +handler, is configured with:
   
 PerlOptions +SetupEnv
   
  @@ -1032,17 +1032,19 @@
   
   =head1 Perl Interface to the Apache Configuration Tree
   
  -META: any volunteers to write this section? see
  -t/response/TestApache/conftree.pm for examples of using the api.
  -
  -L.
  -
  -
  +For now refer to the
  +L manpage and the
  +test I in the mod_perl source
  +distribution.
   
  +META: need help to write the tutorial section on this with examples.
   
   
  +=head1 General Issues
   
  +=head2 Is There a Way to Modify C<@INC> on a Per-VirtualHost
   
  +You can, using the L option.
   
   
   =head1 Maintainers
  @@ -1054,10 +1056,6 @@
   
   =item *
   
  -Doug MacEachern Edougm (at) covalent.netE
  -
  -=item *
  -
   Stas Bekman Estas (at) stason.orgE
   
   =back
  @@ -1069,6 +1067,10 @@
   =item *
   
   Doug MacEachern Edougm (at) covalent.netE
  +
  +=item *
  +
  +Stas Bekman Estas (at) stason.orgE
   
   =back
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/1.0/guide install.pod

2003-01-29 Thread stas
stas2003/01/29 14:27:38

  Modified:src/docs/1.0/guide install.pod
  Log:
  adding two notes to docs/1.0/guide/install.pod
  explaing that libperl.a (and libphp4.a) are not expected to be in the
  src/modules dir during ./configure
  Submitted by: Thomas Klausner <[EMAIL PROTECTED]>
  Reviewed by:  stas
  
  Revision  ChangesPath
  1.19  +6 -0  modperl-docs/src/docs/1.0/guide/install.pod
  
  Index: install.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/install.pod,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- install.pod   31 Dec 2002 19:24:25 -  1.18
  +++ install.pod   29 Jan 2003 22:27:38 -  1.19
  @@ -1036,6 +1036,9 @@
   C<--prefix=/usr/share/apache> the Apache directory tree will be
   installed in I.
   
  +Note that the files activated by C<--activate-module> do not exist at
  +this time. They will be generated during compilation.
  +
   The last three steps build, test and install the Apache-side of the
   mod_perl enabled server.  Presumably your new server includes
   third-party components, otherwise you probably won't choose this
  @@ -1555,6 +1558,9 @@
--enable-module=stats \
--enable-module=rewrite
 % make
  +
  +Note: C and C do not exist at this time. They
  +will be generated during compilation.
   
   =item 1
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/compat compat.pod

2003-01-29 Thread stas
stas2003/01/28 23:18:33

  Modified:src/docs/2.0/user/compat compat.pod
  Log:
  add notes about building 3rd party extension Makefile.PL's with 2.0, when
  XS is used
  
  Revision  ChangesPath
  1.42  +21 -0 modperl-docs/src/docs/2.0/user/compat/compat.pod
  
  Index: compat.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/compat/compat.pod,v
  retrieving revision 1.41
  retrieving revision 1.42
  diff -u -r1.41 -r1.42
  --- compat.pod27 Jan 2003 04:05:13 -  1.41
  +++ compat.pod29 Jan 2003 07:18:33 -  1.42
  @@ -812,8 +812,29 @@
   C<:method> attribute is not required.
   
   
  +=head1 C
   
  +For those who write 3rd party modules using XS, this module was used
  +to supply mod_perl specific include paths, defines and other things,
  +needed for building the extensions. mod_perl 2.0 makes things
  +transparent with C.
   
  +Here is how to write a simple I for modules wanting to
  +build XS code against mod_perl 2.0:
  +
  +  use Apache2;
  +  use mod_perl 1.99;
  +  use ModPerl::MM ();
  +  
  +  ModPerl::MM::WriteMakefile(
  +  NAME => "Foo",
  +  );
  +
  +and everything will be done for you.
  +
  +META: we probably will have a compat layer at some point.
  +
  +META: move this section to the devel/porting and link there instead
   
   =head1 C
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/handlers http.pod

2003-01-29 Thread stas
stas2003/01/28 23:13:04

  Modified:src/docs/2.0/user/handlers http.pod
  Log:
  add a note about stacked handlers being different from single handlers in
  the handling of their return status
  
  Revision  ChangesPath
  1.12  +8 -0  modperl-docs/src/docs/2.0/user/handlers/http.pod
  
  Index: http.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/handlers/http.pod,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- http.pod  27 Jan 2003 04:05:13 -  1.11
  +++ http.pod  29 Jan 2003 07:13:03 -  1.12
  @@ -63,6 +63,14 @@
   connection output filters before it's sent to the client. We will talk
   about filters in detail later in this chapter.
   
  +Before discussing each handler in detail remember that if you use
  +stacked handlers feature (META: add link to where it's discussed [go
  +read 1.0 docs for now, as it works the same]) all handlers in the
  +chain will be run as long as they return C or
  +C. Because stacked handlers is a special case. So
  +don't be surprised if you've returned C and the next
  +handler was still executed. This is a feature, not a bug.
  +
   Now let's discuss each of the mentioned handlers in detail.
   
   =head2 PerlPostReadRequestHandler
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/porting porting.pod

2003-01-29 Thread stas
stas2003/01/28 21:19:31

  Modified:src/docs/2.0/devel/porting porting.pod
  Log:
  don't forget to load Apache2
  
  Revision  ChangesPath
  1.6   +9 -3  modperl-docs/src/docs/2.0/devel/porting/porting.pod
  
  Index: porting.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/porting/porting.pod,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- porting.pod   29 Jan 2003 05:14:17 -  1.5
  +++ porting.pod   29 Jan 2003 05:19:31 -  1.6
  @@ -64,12 +64,18 @@
   
   To require a module to run only under 2.0, simply add:
   
  +  use Apache2;
 use mod_perl 2.0;
   
  -to your module. You can also use the variable C<$mod_perl::VERSION>.
  +to your module. You can also use the variable
  +C<$mod_perl::VERSION>. But you should always load C first, so
  +it'll adjust C<@INC>, if mod_perl 2.0 is installed on the same base
  +with mod_perl 1.0.
   
  -(META: Well before 2.0 is released you really have to say: 
  -C)
  +META: Well before 2.0 is released you really have to say:
  +
  +  use Apache2;
  +  use mod_perl 1.99;
   
   In the configuration file you can use a special configuration "define"
   symbol C which is enabled internally, as if the server had
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/porting porting.pod

2003-01-29 Thread stas
stas2003/01/28 21:14:18

  Modified:src/docs/2.0/devel/porting porting.pod
  Log:
  we still don't have 2.0, so should require 1.99
  
  Revision  ChangesPath
  1.5   +3 -0  modperl-docs/src/docs/2.0/devel/porting/porting.pod
  
  Index: porting.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/porting/porting.pod,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- porting.pod   13 Jan 2003 04:52:37 -  1.4
  +++ porting.pod   29 Jan 2003 05:14:17 -  1.5
  @@ -68,6 +68,9 @@
   
   to your module. You can also use the variable C<$mod_perl::VERSION>.
   
  +(META: Well before 2.0 is released you really have to say: 
  +C)
  +
   In the configuration file you can use a special configuration "define"
   symbol C which is enabled internally, as if the server had
   been started with C<-DMODPERL2>.
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/api/Apache Directive.pod

2003-01-29 Thread stas
stas2003/01/28 19:51:42

  Modified:src/docs/2.0/api/Apache Directive.pod
  Log:
  spel
  
  Revision  ChangesPath
  1.2   +2 -2  modperl-docs/src/docs/2.0/api/Apache/Directive.pod
  
  Index: Directive.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/Apache/Directive.pod,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- Directive.pod 29 Jan 2003 03:40:39 -  1.1
  +++ Directive.pod 29 Jan 2003 03:51:42 -  1.2
  @@ -45,7 +45,7 @@
   internal Apache configuration.
   
   Internally, this information is stored in a tree structure. Each node
  -in the tree has a reference to it's parent (if it's not the root), its
  +in the tree has a reference to its parent (if it's not the root), its
   first child (if any), and to its next sibling.
   
   =head1 Class Methods
  @@ -68,7 +68,7 @@
   
 $node = $node->next;
   
  -Returns the next sibbling of C<$node>, C otherwise
  +Returns the next sibling of C<$node>, C otherwise
   
   =head2 C
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/api/Apache Directive.pod

2003-01-29 Thread stas
stas2003/01/28 19:40:39

  Modified:src/docs/2.0/api config.cfg
  Added:   src/docs/2.0/api/Apache Directive.pod
  Log:
  Apache::Directive pod (committed with some tweaks)
  Submitted by: Philippe M. Chiasson <[EMAIL PROTECTED]>
  Reviewed by:  stas
  
  Revision  ChangesPath
  1.15  +1 -0  modperl-docs/src/docs/2.0/api/config.cfg
  
  Index: config.cfg
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/config.cfg,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- config.cfg29 Jan 2003 02:47:12 -  1.14
  +++ config.cfg29 Jan 2003 03:40:38 -  1.15
  @@ -18,6 +18,7 @@
   group=> 'Apache:: Core API',
   chapters => [qw(
   Apache/Log.pod
  +Apache/Directive.pod
   Apache/RequestRec.pod
   Apache/RequestUtil.pod
   Apache/ServerUtil.pod
  
  
  
  1.1  modperl-docs/src/docs/2.0/api/Apache/Directive.pod
  
  Index: Directive.pod
  ===
  =head1 NAME
  
  Apache::Directive -- A Perl API for manipulating Apache configuration tree
  
  =head1 Synopsis
  
use Apache::Directive;

my $tree = Apache::Directive->conftree;

my $documentroot = $tree->lookup('DocumentRoot');

my $vhost = $tree->lookup('VirtualHost', 'localhost:8000');
my $servername = $vhost->{'ServerName'};

print $tree->as_string;

use Data::Dumper;
print Dumper($tree->as_hash);

my $node = $tree;
while ($node) {

#do something with $node

if (my $kid = $node->first_child) {
$node = $kid;
} 
elsif (my $next = $node->next) {
$node = $next;
}
else {
if (my $parent = $node->parent) {
$node = $parent->next;
}
else {
$node = undef;
}
}  
}
  
  =head1 Description
  
  C allows its users to search and navigate the
  internal Apache configuration.
  
  Internally, this information is stored in a tree structure. Each node
  in the tree has a reference to it's parent (if it's not the root), its
  first child (if any), and to its next sibling.
  
  =head1 Class Methods
  
  Function arguments (if any) and return values are shown in the
  function's synopsis.
  
  =head2 C
  
$tree = Apache::Directive->conftree();
  
  Returns the root of the configuration tree.
  
  =head1 Object Methods
  
  Function arguments (if any) and return values are shown in the
  function's synopsis.
  
  =head2 C
  
$node = $node->next;
  
  Returns the next sibbling of C<$node>, C otherwise
  
  =head2 C
  
$subtree = $node->first_child;
  
  Returns the first child node of C<$node>, undef otherwise
  
  =head2 C
  
$parent = $node->parent;
  
  Returns the parent of C<$node>, undef if this node is the root node
  
  =head2 C
  
$name = $node->directive;
  
  Returns the name of the directive in C<$node>.
  
  =head2 C
  
$args = $node->args;
  
  Returns the arguments to this C<$node>
  
  =head2 C
  
$fname = $node->filename;
  
  Returns the filename this C<$node> was created from
  
  =head2 C
  
$lineno = $node->line_number;
  
  Returns the line number in C this C<$node> was created from
  
  =head2 C
  
 print $tree->as_string();
  
  Returns a string representation of the configuration tree, in
  httpd.conf format.
  
  =head2 C
  
 $config = $tree->as_hash();
  
  Returns a hash representation of the configuration tree, in a format
  suitable for inclusion in the EPerlE sections.
  
  =head2 C
  
lookup($directive, [$args])
  
  Returns node(s) matching a certain value. In list context, it will
  return all matching nodes.  In scalar context, it will return only the
  first matching node.
  
  If called with only one C<$directive> value, this will return all
  nodes from that directive:
  
@Alias = $tree->lookup('Alias');
  
  Would return all nodes for Alias directives.
  
  If called with an extra C<$args> argument, this will return only nodes
  where both the directive and the args matched:
  
$VHost = $tree->lookup('VirtualHosts', '_default_:8000');
  
  =head1 Authors
  
  =head1 Copyright
  
  =cut
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/api/Apache RequestUtil.pod ServerUtil.pod

2003-01-29 Thread stas
stas2003/01/28 18:47:12

  Modified:src/docs/2.0/api config.cfg
   src/docs/2.0/api/Apache ServerUtil.pod
  Added:   src/docs/2.0/api/Apache RequestUtil.pod
  Log:
  a skeleton for the request util api
  
  Revision  ChangesPath
  1.14  +1 -0  modperl-docs/src/docs/2.0/api/config.cfg
  
  Index: config.cfg
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/config.cfg,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- config.cfg28 Jan 2003 07:26:29 -  1.13
  +++ config.cfg29 Jan 2003 02:47:12 -  1.14
  @@ -19,6 +19,7 @@
   chapters => [qw(
   Apache/Log.pod
   Apache/RequestRec.pod
  +Apache/RequestUtil.pod
   Apache/ServerUtil.pod
   Apache/SubProcess.pod
   Apache/compat.pod
  
  
  
  1.2   +6 -0  modperl-docs/src/docs/2.0/api/Apache/ServerUtil.pod
  
  Index: ServerUtil.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/Apache/ServerUtil.pod,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ServerUtil.pod27 Jan 2003 04:05:12 -  1.1
  +++ ServerUtil.pod29 Jan 2003 02:47:12 -  1.2
  @@ -118,6 +118,12 @@
   
   =item * push_handlers()
   
  +  $s->push_handlers(PerlResponseHandler => \&handler);
  +  $s->push_handlers(PerlResponseHandler => [\&handler, \&handler2]);
  +
  +  # XXX: not implemented yet
  +  $s->push_handlers(PerlResponseHandler => sub {...});
  +
   =item * add_handlers()
   
   =item * get_handlers()
  
  
  
  1.1  modperl-docs/src/docs/2.0/api/Apache/RequestUtil.pod
  
  Index: RequestUtil.pod
  ===
  =head1 NAME
  
  Apache::RequestUtil -- Methods for work with Apache::Request object
  
  =head1 SYNOPSIS
  
use Apache::RequestUtil;
  
  =head1 DESCRIPTION
  
  C provides the Perl API for Apache request object.
  
  META: complete
  
  =head1 API
  
  Function arguments (if any) and return values are shown in the
  function's synopsis.
  
  =head2 FUNCTIONS
  
  =over
  
  =item * Apache-Erequest()
  
  =back
  
  
  =head2 METHODS
  
  =over
  
  =item * new()
  
  =item * server_name()
  
  =item * server_port()
  
  =item * dir_config()
  
  =item * get_status_line()
  
  =item * is_initial_req()
  
  =item * method_register()
  
  =item * add_config()
  
  =item * location()
  
  =item * location_merge()
  
  =item * no_cache()
  
  =item * pnotes()
  
  =item * set_basic_credentials()
  
  =item * as_string()
  
  =item * push_handlers()
  
$r->push_handlers(PerlResponseHandler => \&handler);
$r->push_handlers(PerlResponseHandler => [\&handler, \&handler2]);
  
# XXX: not implemented yet
$r->push_handlers(PerlResponseHandler => sub {...});
  
  =item * add_handlers()
  
  =item * get_handlers()
  
  
  =back
  
  
  =cut
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/api/Apache Status.pod

2003-01-28 Thread stas
stas2003/01/27 23:26:29

  Modified:src/docs/2.0/api config.cfg
  Added:   src/docs/2.0/api/Apache Status.pod
  Log:
  - add the docs for Apache::Status
  - create a new group of docs for non-core API
  
  Revision  ChangesPath
  1.13  +13 -8 modperl-docs/src/docs/2.0/api/config.cfg
  
  Index: config.cfg
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/config.cfg,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- config.cfg27 Jan 2003 04:05:12 -  1.12
  +++ config.cfg28 Jan 2003 07:26:29 -  1.13
  @@ -9,21 +9,28 @@
   The Apache::, APR:: and ModPerl:: namespaces APIs for mod_perl 2.0
   EOB
   
  - body => {
  - bot => 'index_bot.html',
  - },
  +body => {
  +bot => 'index_bot.html',
  +},
   
  -group=> 'Apache::',
  +# NOTE: please keep the names sorted
  +
  +group=> 'Apache:: Core API',
   chapters => [qw(
   Apache/Log.pod
  -Apache/Reload.pod
   Apache/RequestRec.pod
   Apache/ServerUtil.pod
   Apache/SubProcess.pod
   Apache/compat.pod
   )],
   
  -group=> 'APR::',
  +group=> 'Apache:: Non-Core (Helper Apps)',
  +chapters => [qw(
  +Apache/Reload.pod
  +Apache/Status.pod
  +)],
  +
  +group=> 'APR:: Core API',
   chapters => [qw(
   APR/PerlIO.pod
   APR/Table.pod
  @@ -37,7 +44,5 @@
   ModPerl/RegistryCooker.pod
   ModPerl/RegistryLoader.pod
   )],
  -
  -
   
   );
  
  
  
  1.1  modperl-docs/src/docs/2.0/api/Apache/Status.pod
  
  Index: Status.pod
  ===
  =head1 NAME
  
  Apache::Status - Embedded interpreter status information
  
  =head1 SYNOPSIS
  

SetHandler modperl
PerlResponseHandler Apache::Status

  
  =head1 DESCRIPTION
  
  The B module provides some information
  about the status of the Perl interpreter embedded in the server.
  
  Configure like so:
  

 SetHandler modperl
 PerlResponseHandler Apache::Status

  
  Notice that under the "modperl" core handler the I menu
  option will show only the environment under that handler. To see the
  environment seen by handlers running under the "perl-script" core
  handler, configure C as:
  

 SetHandler perl-script
 PerlResponseHandler Apache::Status

  
  Other modules can "plugin" a menu item like so:
  
Apache::Status->menu_item(
   'DBI' => "DBI connections", #item for Apache::DBI module
   sub {
   my($r,$q) = @_; #request and CGI objects
   my(@strings);
   push @strings,  "blobs of html";
   return [EMAIL PROTECTED]; #return an array ref
   }
) if Apache->module("Apache::Status"); #only if Apache::Status is loaded
  
  B: Apache::Status must be loaded before these modules via the 
  PerlModule or PerlRequire directives.
  
  =head1 OPTIONS
  
  =over 4
  
  =item StatusOptionsAll
  
  This single directive will enable all of the options described below.
  
PerlSetVar StatusOptionsAll On
  
  =item StatusDumper
  
  When browsing symbol tables, the values of arrays, hashes and scalars
  can be viewed via B<Data::Dumper> if this configuration variable is set
  to On:
  
PerlSetVar StatusDumper On
  
  =item StatusPeek
  
  With this option On and the B module installed, 
  functions and variables can be viewed ala B style:
  
PerlSetVar StatusPeek On
  
  =item StatusLexInfo
  
  With this option On and the B module installed,
  subroutine lexical variable information can be viewed.
  
PerlSetVar StatusLexInfo On
  
  =item StatusDeparse
  
  With this option On and B version 0.59 or higher 
  (included in Perl 5.005_59+), subroutines can be "deparsed".
  
PerlSetVar StatusDeparse On
  
  Options can be passed to B::Deparse::new like so:
  
PerlSetVar StatusDeparseOptions "-p -sC"
  
  See the B manpage for details.
  
  =item StatusTerse
  
  With this option On, text-based op tree graphs of subroutines can be 
  displayed, thanks to B.
  
PerlSetVar StatusTerse On
  
  =item StatusTerseSize
  
  With this option On and the B module installed,
  text-based op tree graphs of subroutines and their size can be
  displayed.  See the B docs for more info.
  
PerlSetVar StatusTerseSize On
  
  =item StatusTerseSizeMainSummary
  
  With this option On and the B module installed, a
  "Memory Usage" will be added to the Apache::Status main menu.  This
  option is disabled by default, as it can be rather c

cvs commit: modperl-docs/bin site_build

2003-01-27 Thread stas
stas2003/01/27 15:04:27

  Modified:bin  site_build
  Log:
  doh! someone has modified the live script, without committing it. never
  change anything on the live site, but only on your machine and update via
  cvs.  otherwise an automatic 'cvs up' may break things and create a havoc
  
  Revision  ChangesPath
  1.10  +13 -5 modperl-docs/bin/site_build
  
  Index: site_build
  ===
  RCS file: /home/cvs/modperl-docs/bin/site_build,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- site_build27 Jan 2003 23:00:48 -  1.9
  +++ site_build27 Jan 2003 23:04:26 -  1.10
  @@ -21,7 +21,7 @@
   umask 0002;
   
   my $HOME = $ENV{HOME};
  -$ENV{PATH} = 
"/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/bin:/usr/X11R6/bin:$HOME";
  +$ENV{PATH} = 
"/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/bin:/usr/X11R6/bin:$HOME/bin";
   
   $ENV{PERL5LIB} = 
"$HOME/lib/perl5/5.00503:$HOME/lib/perl5/site_perl/5.005:$HOME/lib/perl5/site_perl:$HOME/lib/perl5";
   
  @@ -67,9 +67,17 @@
   }
   
   sub fs_is_full {
  -my $x = qx{ df | grep /x2 };
  -my ($s) = ($x =~ /(\d+)\%/);
  -# when size(fs)>=95 we most likely will fail to create files 
  -return $s > 94 ? 1 : 0;
  +# get available disk space
  +my $disk = qx{ df | grep /x2 };
  +my ($disk_avail) = ($disk =~ /(\d+)\s+\d+\%/); # avail is before capacity
  +
  +# get size of site
  +my $site = qx{ du -c $rel | grep total };
  +my ($site_size) = ($site =~ /^(\d+)/);
  +
  +# print "site_size = $site_size , disk_avail = $disk_avail";
  +
  +# give us a margin of 50MB
  +return $site_size + 50*1024 > $disk_avail ? 1 : 0;
   
   }
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/bin site_build

2003-01-27 Thread stas
stas2003/01/27 15:00:48

  Modified:bin  site_build
  Log:
  support the verbose mode
  
  Revision  ChangesPath
  1.9   +5 -3  modperl-docs/bin/site_build
  
  Index: site_build
  ===
  RCS file: /home/cvs/modperl-docs/bin/site_build,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- site_build21 Nov 2002 19:50:33 -  1.8
  +++ site_build27 Jan 2003 23:00:48 -  1.9
  @@ -3,9 +3,10 @@
   #
   # this script does different things depending on how it was named (or
   # a symlink) if the name includes:
  -# force - the whole site is rebuilt
  -# pdf   - builds pdfs
  -# index - builds the index
  +# force   - the whole site is rebuilt
  +# pdf - builds pdfs
  +# index   - builds the index
  +# verbose - turn the verbose mode on
   #
   # the easiest way is to use symlinks to the same script
   #
  @@ -45,6 +46,7 @@
   my $flags = '';
   $flags .= 'f' if $name =~ /force/;
   $flags .= 'd' if $name =~ /pdf/;
  +$flags .= 'v' if $name =~ /verbose/;
   $flags = $flags ? "-$flags" : "";
   
   system("cvs up -dP >/dev/null 2>&1");
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/api README

2003-01-27 Thread stas
stas2003/01/27 01:02:28

  Modified:src/docs/2.0/api README
  Log:
  reality update
  
  Revision  ChangesPath
  1.2   +0 -17 modperl-docs/src/docs/2.0/api/README
  
  Index: README
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/README,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- README2 Oct 2001 15:26:29 -   1.1
  +++ README27 Jan 2003 09:02:28 -  1.2
  @@ -3,26 +3,9 @@
   autogenerated it's much easier to keep the documentation in a separate
   place.
   
  -Each sub-project will have its own directory under docs/src/api
  -
  -Here is an example:
  -
  -docs/src/api:
  -  mod_perl-2.0/APR/Table.pod 
  -  mod_perl-2.0/Apache/RequestRec.pod 
  -  mod_perl-2.0/Apache/compat.pod
  -  Apache-Test/Apache/Test.pod
  -  Apache-Registry/Apache/Registry.pod
  -
   Keeping all the docs under the same directory makes it easy to
   distribute only the documentation, especially simplify the build,
   since they all live in a separate modperl-docs project.
  -
  -So modperl-2.0's API goes into docs/src/api/mod_perl-2.0,
  -Apache-Test's into docs/src/api/Apache-Test and etc.
  -
  -If later on we want to move directories around, this is very easy to
  -do without losing cvs history.
   
   That's said, when you send in new patches, from now on please don't
   forget to send documentation patches. It's much easier and nicer to
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src config.cfg

2003-01-27 Thread stas
stas2003/01/27 01:00:12

  Modified:src  config.cfg
  Log:
  adjustments for the changed hierarchy of api dirs
  
  Revision  ChangesPath
  1.36  +1 -2  modperl-docs/src/config.cfg
  
  Index: config.cfg
  ===
  RCS file: /home/cvs/modperl-docs/src/config.cfg,v
  retrieving revision 1.35
  retrieving revision 1.36
  diff -u -r1.35 -r1.36
  --- config.cfg15 Jul 2002 05:27:29 -  1.35
  +++ config.cfg27 Jan 2003 09:00:11 -  1.36
  @@ -90,8 +90,7 @@
   
   # search path for pods, etc. must put more specific paths first!
   search_paths => [qw(
  -docs/2.0/api/mod_perl-2.0 
  -docs/2.0/api/ModPerl-Registry 
  +docs/2.0/api
   docs/2.0 
   docs/1.0/api
   docs/1.0
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/intro overview.pod start_fast.pod

2003-01-27 Thread stas
stas2003/01/26 20:05:13

  Modified:src/docs/2.0/api config.cfg
   src/docs/2.0/user/compat compat.pod
   src/docs/2.0/user/config custom.pod
   src/docs/2.0/user/handlers http.pod
   src/docs/2.0/user/intro overview.pod start_fast.pod
  Added:   src/docs/2.0/api/APR PerlIO.pod Table.pod
   src/docs/2.0/api/Apache Log.pod Reload.pod RequestRec.pod
ServerUtil.pod SubProcess.pod compat.pod
   src/docs/2.0/api/ModPerl PerlRun.pod Registry.pod
RegistryBB.pod RegistryCooker.pod
RegistryLoader.pod
  Removed: src/docs/2.0/api/ModPerl-Registry/ModPerl PerlRun.pod
Registry.pod RegistryBB.pod RegistryCooker.pod
RegistryLoader.pod
   src/docs/2.0/api/mod_perl-2.0 .cvsignore Makefile.PL
   src/docs/2.0/api/mod_perl-2.0/APR PerlIO.pod Table.pod
   src/docs/2.0/api/mod_perl-2.0/Apache Log.pod Reload.pod
RequestRec.pod ServerUtil.pod SubProcess.pod
compat.pod
  Log:
  drop the extra sub-dirs ModPerl-Registry and mod_perl-2.0, we can control
  what goes where programmatically if needed. In any case registry is a part
  of the core
  
  Revision  ChangesPath
  1.12  +13 -13modperl-docs/src/docs/2.0/api/config.cfg
  
  Index: config.cfg
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/config.cfg,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- config.cfg8 Nov 2002 04:10:36 -   1.11
  +++ config.cfg27 Jan 2003 04:05:12 -  1.12
  @@ -15,27 +15,27 @@
   
   group=> 'Apache::',
   chapters => [qw(
  -mod_perl-2.0/Apache/Log.pod
  -mod_perl-2.0/Apache/Reload.pod
  -mod_perl-2.0/Apache/RequestRec.pod
  -mod_perl-2.0/Apache/ServerUtil.pod
  -mod_perl-2.0/Apache/SubProcess.pod
  -mod_perl-2.0/Apache/compat.pod
  +Apache/Log.pod
  +Apache/Reload.pod
  +Apache/RequestRec.pod
  +Apache/ServerUtil.pod
  +Apache/SubProcess.pod
  +Apache/compat.pod
   )],
   
   group=> 'APR::',
   chapters => [qw(
  -mod_perl-2.0/APR/PerlIO.pod
  -mod_perl-2.0/APR/Table.pod
  +APR/PerlIO.pod
  +APR/Table.pod
   )],
   
   group=> 'ModPerl::',
   chapters => [qw(
  -ModPerl-Registry/ModPerl/PerlRun.pod
  -ModPerl-Registry/ModPerl/Registry.pod
  -ModPerl-Registry/ModPerl/RegistryBB.pod
  -ModPerl-Registry/ModPerl/RegistryCooker.pod
  -ModPerl-Registry/ModPerl/RegistryLoader.pod
  +ModPerl/PerlRun.pod
  +ModPerl/Registry.pod
  +ModPerl/RegistryBB.pod
  +ModPerl/RegistryCooker.pod
  +ModPerl/RegistryLoader.pod
   )],
   
   
  
  
  
  1.1  modperl-docs/src/docs/2.0/api/APR/PerlIO.pod
  
  Index: PerlIO.pod
  ===
  =head1 NAME
  
  APR:PerlIO -- An APR Perl IO layer
  
  =head1 SYNOPSIS
  
use APR::PerlIO ();

sub handler {
my $r = shift;

open my $fh, ">:APR", $filename, $r or die $!;
# work with $fh as normal $fh
close $fh;

return Apache::OK;
}
  
  =head1 DESCRIPTION
  
  C implements a Perl IO layer using APR's file
  manipulation as its internals.
  
  Why do you want to use this? Normally you shouldn't, probably it won't
  be faster than Perl's default layer. It's only useful when you need to
  manipulate a filehandle opened at the APR side, while using Perl.
  
  Normally you won't call open() with APR layer attribute, but some
  mod_perl functions will return a filehandle which is internally hooked
  to APR. But you can use APR Perl IO directly if you want.
  
  =head1 METHODS
  
  Perl Interface:
  
  =over
  
  =item open()
  
  To use APR Perl IO to open a file the four arguments open() should be
  used. For example:
  
open my $fh, ">:APR", $filename, $r or die $!;
  
  where:
  
  the second argument is the mode to open the file, constructed from two
  sections separated by the C<:> character: the first section is the
  mode to open the file under (E, E, etc) and the second section
  must be a string I.
  
  the fourth argument can be a C or
  C object.
  
  the rest of the arguments are the same as described by the I
  manpage.
  
  =item seek()
  
seek($fh, $offset, $whence);
  
  If C<$offset> is zero, C works normally.
  
  However if C<$offset> is non-zero and Perl has been compiled with with
  large files support (C<-Duselargefiles>), whereas APR wasn't, th

cvs commit: modperl-docs/src/docs/2.0/api/Apache - New directory

2003-01-27 Thread stas
stas2003/01/26 19:53:57

  modperl-docs/src/docs/2.0/api/Apache - New directory

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/api/APR - New directory

2003-01-27 Thread stas
stas2003/01/26 19:53:48

  modperl-docs/src/docs/2.0/api/APR - New directory

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/api/ModPerl - New directory

2003-01-27 Thread stas
stas2003/01/26 19:53:39

  modperl-docs/src/docs/2.0/api/ModPerl - New directory

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/general/testing testing.pod

2003-01-22 Thread stas
stas2003/01/21 22:59:42

  Modified:src/docs/general/testing testing.pod
  Log:
  document the new under_construction skip shortcut
  
  Revision  ChangesPath
  1.8   +10 -0 modperl-docs/src/docs/general/testing/testing.pod
  
  Index: testing.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/general/testing/testing.pod,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- testing.pod   22 Jan 2003 06:54:50 -  1.7
  +++ testing.pod   22 Jan 2003 06:59:42 -  1.8
  @@ -1903,6 +1903,16 @@
   
 plan tests => 2, have_threads;
   
  +=item * under_construction()
  +
  +this is just a shortcut to skip the test while printing:
  +
  +  "skipped: this test is under construction";
  +
  +For example:
  +
  +  plan tests => 2, under_construction;
  +
   =item * have_lwp()
   
   Tests whether the Perl module LWP is installed.
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/general/testing testing.pod

2003-01-22 Thread stas
stas2003/01/21 22:54:50

  Modified:src/docs/general/testing testing.pod
  Log:
  document the new skip test shortcut: have_threads
  
  Revision  ChangesPath
  1.7   +7 -0  modperl-docs/src/docs/general/testing/testing.pod
  
  Index: testing.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/general/testing/testing.pod,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- testing.pod   20 Jan 2003 23:25:03 -  1.6
  +++ testing.pod   22 Jan 2003 06:54:50 -  1.7
  @@ -1896,6 +1896,13 @@
   
   tests whether C is available.
   
  +=item * have_threads()
  +
  +have_threads checks whether whether threads are supported by both
  +Apache and Perl.
  +
  +  plan tests => 2, have_threads;
  +
   =item * have_lwp()
   
   Tests whether the Perl module LWP is installed.
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/products products.html

2003-01-21 Thread stas
stas2003/01/21 14:32:01

  Modified:src/products products.html
  Log:
  add Loggerithim
  
  Revision  ChangesPath
  1.19  +7 -0  modperl-docs/src/products/products.html
  
  Index: products.html
  ===
  RCS file: /home/cvs/modperl-docs/src/products/products.html,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- products.html 26 Nov 2002 16:35:40 -  1.18
  +++ products.html 21 Jan 2003 22:32:01 -  1.19
  @@ -180,6 +180,13 @@
   
   
   
  +http://loggerithim.sourceforge.net";>Loggerithim is
  +monitoring package for Linux and Solaris (with early support for OS X
  +and Win32).  It allows you to collect metrics from your hosts and
  +analyze them with graphs and whatnot.  You can also set thresholds for
  +proactively spotting problems.  Modules can be written to supplement
  +the stock data collection.
  +
   http://dnszone.org/";>DnsZone is a fully functional
   application for Apache/mod_perl.  It implements a web based interface
   for managing zones with a nameserver running BIND.
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/general/testing testing.pod

2003-01-20 Thread stas
stas2003/01/20 15:25:03

  Modified:src/docs/general/testing testing.pod
  Log:
  Document the new config feature to bypass auto-conf (NoAutoConfig)
  
  Revision  ChangesPath
  1.6   +25 -0 modperl-docs/src/docs/general/testing/testing.pod
  
  Index: testing.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/general/testing/testing.pod,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- testing.pod   16 Jan 2003 02:43:35 -  1.5
  +++ testing.pod   20 Jan 2003 23:25:03 -  1.6
  @@ -2413,6 +2413,8 @@
   
   =back
   
  +=head3 Forcing Configuration Sections into the Top Level
  +
   If some directives are supposed to go to the base configuration,
   i.e. not to be automatically wrapped into CLocationE> block,
   you should use a special CBaseE>..C/BaseE> block:
  @@ -2438,6 +2440,29 @@
   configuration and we want to keep the configuration sections in tests
   to a minimum and let Perl do the rest of the job for us.
   
  +=head3 Bypassing Auto-Configuration
  +
  +In more complicated cases, usually when virtual hosts containers are
  +involved, the auto-configuration might stand in a way and you will
  +simply want to bypass it. If that's the case, put the configuration
  +inside the CNoAutoConfigE>..C/NoAutoConfigE>
  +container. For example:
  +
  +  
  +  
  +  PerlPreConnectionHandler TestPreConnection::note
  +  
  +  
  +  SetHandler modperl
  +  PerlResponseHandler TestPreConnection::note::response
  +  
  +  
  +  
  +
  +Notice, that the internal sections will be still parsed, tokens
  +C<@var@> will be substituted and C sections will be
  +rewritten with an automatically assigned port number and
  +C.
   
   =head3 Virtual Hosts
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/general/os/win32 faq.pod

2003-01-20 Thread stas
stas2003/01/19 16:20:04

  Modified:src/docs/general/os/win32 faq.pod
  Log:
  an attempt to make the list of other references to be less confusing
  
  Revision  ChangesPath
  1.6   +55 -19modperl-docs/src/docs/general/os/win32/faq.pod
  
  Index: faq.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/general/os/win32/faq.pod,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- faq.pod   19 Jan 2003 23:59:57 -  1.5
  +++ faq.pod   20 Jan 2003 00:20:04 -  1.6
  @@ -7,13 +7,62 @@
   This document discusses some questions that arise often
   with mod_perl on Win32.
   
  +=head1 Resolving Problems
  +
   If you don't find a solution to your problem here, make sure to check
  -the general troubleshooting documents, where non-platform specific
  -problems are discussed. In particular, see the discussion of 
  -L,
  -L, and
  -a L.
  +the other troubleshooting documents according to the used mod_perl
  +version as explained in the following sections.
  +
  +=head2 Problems with mod_perl 1.0
  +
  +If you have troubles with mod_perl 1.0, please refer to the following
  +documents:
  +
  +=over
  +
  +=item *
  +
  +L
  +
  +=item *
  +
  +L
  +
  +=item *
  +
  +L
  +
  +=back
  +
  +If the solution is still not found, see the L.
  +
  +=head2 Problems with mod_perl 2.0
  +
  +=over
  +
  +=item *
  +
  +L
  +
  +=item *
  +
  +L
  +
  +=item *
  +
  +L
  +
  +=item *
  +
  +L.
  +
  +=back
  +
  +If the solution is still not found, see the L.
   
   =head1 Obtaining mod_perl
   
  @@ -209,19 +258,6 @@
   I package available in the ActiveState repository
   will not work under mod_perl. Note that I
   has not yet been ported to mod_perl 2.0.
  -
  -=head1 See Also
  -
  -The discussion of 
  -L,
  -L, and
  -a L.
  -Help is also available through the archives of and subscribing to
  -the L; you will
  -probably find the
  -L
  -useful reading beforehand.
   
   =head1 Maintainers
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/troubleshooting troubleshooting.pod

2003-01-19 Thread stas
stas2003/01/19 15:03:45

  Modified:src/docs/2.0/user/troubleshooting troubleshooting.pod
  Log:
  add a segfault item resolution when DBI is used
  
  Revision  ChangesPath
  1.6   +2 -2  
modperl-docs/src/docs/2.0/user/troubleshooting/troubleshooting.pod
  
  Index: troubleshooting.pod
  ===
  RCS file: 
/home/cvs/modperl-docs/src/docs/2.0/user/troubleshooting/troubleshooting.pod,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- troubleshooting.pod   19 Jan 2003 21:26:36 -  1.5
  +++ troubleshooting.pod   19 Jan 2003 23:03:45 -  1.6
  @@ -21,9 +21,9 @@
   =head1 Configuration and Startup
   
   
  +=head2 Segmentation Fault when Using DBI
   
  -
  -
  +Update DBI to at least version 1.31.
   
   =head1 Shutdown and Restart
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/install install.pod

2003-01-18 Thread stas
stas2003/01/17 17:35:55

  Modified:src/docs/2.0/user/install install.pod
  Log:
  fix the link
  
  Revision  ChangesPath
  1.35  +1 -1  modperl-docs/src/docs/2.0/user/install/install.pod
  
  Index: install.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/install/install.pod,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- install.pod   18 Jan 2003 01:34:29 -  1.34
  +++ install.pod   18 Jan 2003 01:35:55 -  1.35
  @@ -163,7 +163,7 @@
 % ./Configure -des
   
   If you L, run:
  +support|docs::2.0::user::install::install/Prerequisites>, run:
   
 % ./Configure -des -Dusethreads
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/install install.pod

2003-01-18 Thread stas
stas2003/01/17 17:34:29

  Modified:src/docs/2.0/user/install install.pod
  Log:
  mention a problem with threads stability on FreeBSD
  
  Revision  ChangesPath
  1.34  +3 -2  modperl-docs/src/docs/2.0/user/install/install.pod
  
  Index: install.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/install/install.pod,v
  retrieving revision 1.33
  retrieving revision 1.34
  diff -u -r1.33 -r1.34
  --- install.pod   18 Jan 2003 00:47:20 -  1.33
  +++ install.pod   18 Jan 2003 01:34:29 -  1.34
  @@ -45,8 +45,9 @@
 use5005threads='define';
   
   you must rebuild Perl without threads enabled or with
  -C<-Dusethreads>. Remember that threads support slows things down, so
  -don't enable it unless you really need it.
  +C<-Dusethreads>. Remember that threads-support slows things down and
  +on some platforms it's unstable (e.g., FreeBSD), so don't enable it
  +unless you really need it.
   
   =item threaded MPMs
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/install install.pod

2003-01-18 Thread stas
stas2003/01/17 16:47:20

  Modified:src/docs/2.0/user/install install.pod
  Log:
  clarify the config process of perl (threads vs. non-threads)
  
  Revision  ChangesPath
  1.33  +9 -1  modperl-docs/src/docs/2.0/user/install/install.pod
  
  Index: install.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/install/install.pod,v
  retrieving revision 1.32
  retrieving revision 1.33
  diff -u -r1.32 -r1.33
  --- install.pod   17 Dec 2002 07:22:42 -  1.32
  +++ install.pod   18 Jan 2003 00:47:20 -  1.33
  @@ -159,13 +159,21 @@
   =item Perl
   
 % cd perl-5.8.x
  +  % ./Configure -des
  +
  +If you L, run:
  +
 % ./Configure -des -Dusethreads
  -  % make && make test && make install
   
   If you want to debug mod_perl segmentation faults, add the
   following I<./Configure> options:
   
 -Doptimize='-g' -Dusedevel
  +
  +Now build it:
  +
  +  % make && make test && make install
   
   
   =item Apache
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/tmpl/custom/html tail

2003-01-17 Thread stas
stas2003/01/16 16:30:57

  Modified:tmpl/custom/html tail
  Log:
  apparently people want to send comments about our site, give them an
  address to send these to.
  
  Revision  ChangesPath
  1.22  +3 -0  modperl-docs/tmpl/custom/html/tail
  
  Index: tail
  ===
  RCS file: /home/cvs/modperl-docs/tmpl/custom/html/tail,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- tail  29 Jul 2002 08:19:18 -  1.21
  +++ tail  17 Jan 2003 00:30:57 -  1.22
  @@ -7,6 +7,9 @@
   
   Last modified [% doc.last_modified %]
   [%- INCLUDE changes_link -%]
  +Have comments? Please send them to 
  +the 
  +modperl-docs mailing list.
   Use of the Camel for Perl is a trademark of
   http://www.ora.com";>O'Reilly & Associates, 
   and is used by permission.
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/general/testing testing.pod

2003-01-16 Thread stas
stas2003/01/15 18:43:35

  Modified:src/docs/general/testing testing.pod
  Log:
  bring the doc in sync with the recent change in the autogenerated code for
  the client side
  
  Revision  ChangesPath
  1.5   +14 -4 modperl-docs/src/docs/general/testing/testing.pod
  
  Index: testing.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/general/testing/testing.pod,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- testing.pod   13 Dec 2002 10:46:32 -  1.4
  +++ testing.pod   16 Jan 2003 02:43:35 -  1.5
  @@ -1161,11 +1161,21 @@
   won't attempt to change it. Then you can see the trace of the calls
   that generated this test, in case you want to figure out how the test
   was generated.  And finally the test loads the C
  -module, imports the C shortcut and prints the response of
  -the generated request using the C:
  +module, imports the C shortcut and prints the response's body if
  +it was successful. Otherwise it dies to flag the problem with the
  +server side. The latter is done because there is nothing on the client
  +side, that tells the testing framework that things went wrong. Without
  +it the test will be skipped, and that's not what we want.
   
  -  use Apache::TestRequest 'GET_BODY';
  -  print GET_BODY "/TestApache::write";
  +  use Apache::TestRequest 'GET';
  +  my $res = GET "/TestApache::write";
  +  if ($res->is_success) {
  +  print $res->content;
  +  }
  +  else {
  +  die "server side has failed (response code: ", $res->code, "),\n",
  +  "see t/logs/error_log for more details\n";
  +  }
   
   As you can see the request URI is autogenerated from the response test
   name:
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/compat compat.pod

2003-01-16 Thread stas
stas2003/01/15 17:06:44

  Modified:src/docs/2.0/user/compat compat.pod
  Log:
  document the issue with Environment Variables
  
  Revision  ChangesPath
  1.40  +11 -0 modperl-docs/src/docs/2.0/user/compat/compat.pod
  
  Index: compat.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/compat/compat.pod,v
  retrieving revision 1.39
  retrieving revision 1.40
  diff -u -r1.39 -r1.40
  --- compat.pod3 Jan 2003 04:33:28 -   1.39
  +++ compat.pod16 Jan 2003 01:06:43 -  1.40
  @@ -261,7 +261,18 @@
   needed.
   
   
  +=head1 Environment Variables
   
  +There are several thread-safety issues with setting environment
  +variables.
  +
  +Environment variables set during request time won't be seen by C
  +code. See the L
 for possible workarounds.
  +
  +Forked processes (including backticks) won't see CGI emulation
  +environment variables. (META: This will hopefully be resolved in the
  +future, it's documented in modperl_env.c:modperl_env_magic_set_all.)
   
   
   =head1 C Methods
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/1.0/guide troubleshooting.pod

2003-01-15 Thread stas
stas2003/01/15 15:54:03

  Modified:src/docs/1.0/guide troubleshooting.pod
  Log:
  add a solution for __floatdisf problem. solved by Paul Weiss
  <[EMAIL PROTECTED]>
  
  Revision  ChangesPath
  1.18  +35 -0 modperl-docs/src/docs/1.0/guide/troubleshooting.pod
  
  Index: troubleshooting.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/troubleshooting.pod,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- troubleshooting.pod   4 Dec 2002 02:57:07 -   1.17
  +++ troubleshooting.pod   15 Jan 2003 23:54:03 -  1.18
  @@ -149,6 +149,41 @@
   This can also happen when you try to run a non-mod_perl Apache server 
   using the configuration from a mod_perl server.
   
  +=head2 symbol __floatdisf: referenced symbol not found
  +
  +This problem is experienced by users on certain Solaris versions. When
  +the server is built with modules that use the C<__floatdisf> symbol it
  +can't be started. e.g.:
  +
  +  Cannot load /usr/local/apache/libexec/libproxy.so into server:
  +  ld.so.1: ../bin/httpd: fatal: relocation error: file
  +  /usr/local/apache/libexec/libproxy.so: symbol __floatdisf: referenced
  +  symbol not found
  +
  +The missing symbol is in I.  Use
  +
  +  % gcc -print-libgcc-file-name
  +
  +to see where that file is. Once found you have to relink the module
  +with that file. You can also look for it in the gcc tree, e.g. under
  +I.
  +
  +First, configure and install Apache. Next, relink I or
  +I, or whatever the module that reports the problem
  +with I.
  +
  +  % cd apache_1.3.27/src/modules
  +  % ld -G -o mod_proxy.so mod_proxy.lo /pathto/libgcc.a
  +
  +(adjust the I to point to the right file from the gcc output
  +stage.)
  +
  +You can now verify with C that I includes that
  +symbol.
  +
  +
  +
  +
   =head2 RegistryLoader: Translation of uri [...] to filename failed
   
 RegistryLoader: Translation of uri [/home/httpd/perl/test.pl] to filename 
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/porting porting.pod

2003-01-13 Thread stas
stas2003/01/12 20:52:37

  Modified:src/docs/2.0/devel/porting porting.pod
  Log:
  add a reference to
  http://httpd.apache.org/docs-2.0/developer/thread_safety.html
  
  Revision  ChangesPath
  1.4   +2 -0  modperl-docs/src/docs/2.0/devel/porting/porting.pod
  
  Index: porting.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/porting/porting.pod,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- porting.pod   4 Dec 2002 02:41:53 -   1.3
  +++ porting.pod   13 Jan 2003 04:52:37 -  1.4
  @@ -125,6 +125,8 @@
 /* threads specific code goes here */
 #endif
   
  +For now see: http://httpd.apache.org/docs-2.0/developer/thread_safety.html
  +
   
   =head1 PerlIO
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/handlers server.pod

2003-01-11 Thread stas
stas2003/01/10 21:43:40

  Modified:src/docs/2.0/user/handlers server.pod
  Log:
  update the logging example to gracefully handle the case when the log file
  is not open
  
  Revision  ChangesPath
  1.3   +8 -1  modperl-docs/src/docs/2.0/user/handlers/server.pod
  
  Index: server.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/handlers/server.pod,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- server.pod17 Nov 2002 05:28:40 -  1.2
  +++ server.pod11 Jan 2003 05:43:40 -  1.3
  @@ -90,7 +90,14 @@
 
 sub say {
 my($caller) = (caller(1))[3] =~ /([^:]+)$/;
  -  printf $log_fh "[%s] - %-11s: %s\n", scalar(localtime), $caller, $_[0];
  +  if (defined $log_fh) {
  +  printf $log_fh "[%s] - %-11s: %s\n", 
  +  scalar(localtime), $caller, $_[0];
  +  }
  +  else {
  +  # when the log file is not open
  +  warn __PACKAGE__ . " says: $_[0]\n";
  +  }
 }
 
 END {
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/about/contributors companies.pod

2003-01-11 Thread stas
stas2003/01/10 21:35:44

  Modified:src/about/contributors companies.pod
  Log:
  markup fix
  
  Revision  ChangesPath
  1.2   +1 -1  modperl-docs/src/about/contributors/companies.pod
  
  Index: companies.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/about/contributors/companies.pod,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- companies.pod 11 Jan 2003 05:31:04 -  1.1
  +++ companies.pod 11 Jan 2003 05:35:44 -  1.2
  @@ -8,7 +8,7 @@
   developers and/or allowing their employees to work on mod_perl as a
   part of their day job.
   
  -=head Companies
  +=head1 Companies
   
   =over
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/about config.cfg

2003-01-11 Thread stas
stas2003/01/10 21:31:04

  Modified:src/about config.cfg
  Added:   src/about/contributors companies.pod
  Log:
  add the initial doc listing companies supporting mod_perl developers
  
  Revision  ChangesPath
  1.1  modperl-docs/src/about/contributors/companies.pod
  
  Index: companies.pod
  ===
  =head1 NAME
  
  Companies sponsoring and supporting mod_perl developers
  
  =head1 Description
  
  Several companies have contributed to mod_perl by sponsoring mod_perl
  developers and/or allowing their employees to work on mod_perl as a
  part of their day job.
  
  =head Companies
  
  =over
  
  =item * Critical Path
  
  Critical Path (http://www.cp.net/) has sponsored Doug
  MacEachern. (XXX: when?)
  
  =item * Covalent Technologies
  
  Covalent Technologies (http://www.covalent.net/) has sponsored Doug
  MacEachern. (XXX: when/what?)
  
  =item * TicketMaster
  
  In 2002 TicketMaster (http://www.ticketmaster.com/) has sponsored Stas
  Bekman to work on the mod_perl documentation, the new perl.apache.org
  site and contributing to the mod_perl 2.0 development.
  
  =back
  
  
  =head1 Maintainer
  
  The maintainer is the person you should contact with updates,
  corrections and patches.
  
  =over
  
  =item *
  
  Stas Bekman Estas (at) stason.orgE
  
  =back
  
  =cut
  
  
  
  1.9   +1 -0  modperl-docs/src/about/config.cfg
  
  Index: config.cfg
  ===
  RCS file: /home/cvs/modperl-docs/src/about/config.cfg,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- config.cfg15 Oct 2002 05:58:47 -  1.8
  +++ config.cfg11 Jan 2003 05:31:04 -  1.9
  @@ -12,6 +12,7 @@
   group => 'Development',
   chapters => [qw(
   contributors/people.html
  +contributors/companies.pod
   contributors/other.pod
   history.pod
   )],
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/download index_top.html

2003-01-11 Thread stas
stas2003/01/10 21:04:20

  Modified:src/download index_top.html
  Log:
  bump up version
  
  Revision  ChangesPath
  1.10  +1 -1  modperl-docs/src/download/index_top.html
  
  Index: index_top.html
  ===
  RCS file: /home/cvs/modperl-docs/src/download/index_top.html,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- index_top.html16 Oct 2002 13:20:08 -  1.9
  +++ index_top.html11 Jan 2003 05:04:19 -  1.10
  @@ -14,7 +14,7 @@
   
   
   
  -mod_perl 2.0 (in development): Version 1.99_07 - September 25, 
2002
  +mod_perl 2.0 (in development): Version 1.99_08 - Jan 10, 2003
   http://perl.apache.org/dist/mod_perl-2.0-current.tar.gz";>Download |
   http://perl.apache.org/dist/mod_perl-2.0-current";>Browse |
   http://perl.apache.org/dist/mod_perl-2.0-current/Changes";>Changes |
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/1.0/api/Apache SizeLimit.pod

2003-01-11 Thread stas
stas2003/01/10 18:34:32

  Modified:src/docs/1.0/api/Apache SizeLimit.pod
  Log:
  use the direct link to the Sharing Memory section
  Submitted by: Perrin Harkins <[EMAIL PROTECTED]>
  
  Revision  ChangesPath
  1.4   +2 -5  modperl-docs/src/docs/1.0/api/Apache/SizeLimit.pod
  
  Index: SizeLimit.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/api/Apache/SizeLimit.pod,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- SizeLimit.pod 12 May 2002 05:41:21 -  1.3
  +++ SizeLimit.pod 11 Jan 2003 02:34:32 -  1.4
  @@ -80,11 +80,8 @@
   In addition to simply checking the total size of a process, this
   module can factor in how much of the memory used by the process is
   actually being shared by copy-on-write.  If you don't understand how
  -memory is shared in this way, take a look at the L.
  -
  -
  -META: change link when site is live.
  +memory is shared in this way, take a look at the L section.
   
   You can take advantage of the shared memory information by setting a
   minimum shared size and/or a maximum unshared size.  Experience on one
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/handlers http.pod

2003-01-10 Thread stas
stas2003/01/09 20:26:57

  Modified:src/docs/2.0/user/config config.pod
   src/docs/2.0/user/handlers http.pod
  Log:
  use PerlResponseHandler rather than backcompat PerlHandler
  
  Revision  ChangesPath
  1.32  +1 -1  modperl-docs/src/docs/2.0/user/config/config.pod
  
  Index: config.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/config/config.pod,v
  retrieving revision 1.31
  retrieving revision 1.32
  diff -u -r1.31 -r1.32
  --- config.pod15 Dec 2002 17:32:04 -  1.31
  +++ config.pod10 Jan 2003 04:26:57 -  1.32
  @@ -533,7 +533,7 @@
 
   PerlSetEnv TEST hi
   SetHandler perl-script
  -PerlHandler ModPerl::Registry
  +PerlResponseHandler ModPerl::Registry
   Options +ExecCGI
 
   
  
  
  
  1.10  +4 -4  modperl-docs/src/docs/2.0/user/handlers/http.pod
  
  Index: http.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/handlers/http.pod,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- http.pod  5 Dec 2002 07:40:51 -   1.9
  +++ http.pod  10 Jan 2003 04:26:57 -  1.10
  @@ -310,7 +310,7 @@
 
 Apache::method_register($r->pool, METHOD);
 $r->handler("perl-script");
  -  $r->push_handlers(PerlHandler => \&send_email_handler);
  +  $r->push_handlers(PerlResponseHandler => \&send_email_handler);
 
 return Apache::OK;
 }
  @@ -485,7 +485,7 @@
 PerlSetVar ReloadAll Off
 PerlSetVar ReloadModules "MyApache::*"
 SetHandler perl-script
  -  PerlHandler ModPerl::Registry
  +  PerlResponseHandler ModPerl::Registry
 Options +ExecCGI
 
   
  @@ -904,7 +904,7 @@
 $r->handler($exts{$ext}->[HANDLER]);
 
 if (defined $exts{$ext}->[CALLBACK]) {
  -  $r->set_handlers(PerlHandler => $exts{$ext}->[CALLBACK]);
  +  $r->set_handlers(PerlResponseHandler => $exts{$ext}->[CALLBACK]);
 }
 
 return Apache::OK;
  @@ -951,7 +951,7 @@
   and the callback if needed:
   
 if (defined $exts{$ext}->[CALLBACK]) {
  -  $r->set_handlers(PerlHandler => $exts{$ext}->[CALLBACK]);
  +  $r->set_handlers(PerlResponseHandler => $exts{$ext}->[CALLBACK]);
 }
   
   In this simple example the callback functions don't do much but
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/compat compat.pod

2003-01-03 Thread stas
stas2003/01/02 20:33:28

  Modified:src/docs/2.0/user/compat compat.pod
  Log:
  add Apache::PerlRun to the title, for clueless users
  
  Revision  ChangesPath
  1.39  +5 -3  modperl-docs/src/docs/2.0/user/compat/compat.pod
  
  Index: compat.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/compat/compat.pod,v
  retrieving revision 1.38
  retrieving revision 1.39
  diff -u -r1.38 -r1.39
  --- compat.pod28 Dec 2002 07:39:28 -  1.38
  +++ compat.pod3 Jan 2003 04:33:28 -   1.39
  @@ -154,7 +154,7 @@
   directory I<5.8.0/i686-linux-thread-multi> in C<@INC>.
   
   
  -=head1 The C Family
  +=head1 C, C and Friends
   
   C, C and other modules from the
   registry family now live in the C namespace to avoid
  @@ -511,12 +511,14 @@
   =head2 C<$r-Elog_reason>
   
   C<$r-Elog_reason> is not available in mod_perl 2.0 API. Use the
  -other standard logging functions provided by the 
C>
  +other standard logging functions provided by the
  +C>
   module. For example:
   
 $r->log_error("it works!");
   
  -See the C> manpage.
  +See the C>
  +manpage.
   
   
   =head2 C<$r-Eregister_cleanup>
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/outstanding/stats graph.jpg input.data netcraft.html pseudo-graph.jpg securityspace.html

2003-01-02 Thread stas
stas2003/01/01 16:49:04

  Modified:src/outstanding/stats graph.jpg input.data netcraft.html
pseudo-graph.jpg securityspace.html
  Log:
  Dec 2002 stats update
  
  Revision  ChangesPath
  1.11  +146 -152  modperl-docs/src/outstanding/stats/graph.jpg
  
<>
  
  
  1.11  +1 -0  modperl-docs/src/outstanding/stats/input.data
  
  Index: input.data
  ===
  RCS file: /home/cvs/modperl-docs/src/outstanding/stats/input.data,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- input.data1 Dec 2002 15:04:30 -   1.10
  +++ input.data2 Jan 2003 00:49:04 -   1.11
  @@ -1,4 +1,5 @@
   # this file must have the columns \t separated 
  +December 20024082690 461309
   November 20023943776 462402
   October 2002 3753202 434418
   September 2002   3882275 438194
  
  
  
  1.11  +1 -0  modperl-docs/src/outstanding/stats/netcraft.html
  
  Index: netcraft.html
  ===
  RCS file: /home/cvs/modperl-docs/src/outstanding/stats/netcraft.html,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- netcraft.html 1 Dec 2002 15:04:30 -   1.10
  +++ netcraft.html 2 Jan 2003 00:49:04 -   1.11
  @@ -31,6 +31,7 @@
   
   
   SurveyHostnamesUnique IP Addresses
  + December 2002  4082690461309
November 2002  3943776462402
October 2002   3753202434418
September 2002 3882275438194
  
  
  
  1.11  +45 -55modperl-docs/src/outstanding/stats/pseudo-graph.jpg
  
<>
  
  
  1.12  +2 -2  modperl-docs/src/outstanding/stats/securityspace.html
  
  Index: securityspace.html
  ===
  RCS file: /home/cvs/modperl-docs/src/outstanding/stats/securityspace.html,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- securityspace.html1 Dec 2002 15:04:30 -   1.11
  +++ securityspace.html2 Jan 2003 00:49:04 -   1.12
  @@ -7,12 +7,12 @@
   
   
SecuritySpace provides an http://www.securityspace.com/s_survey/data/man.200211/apachemods.html?mod=cGVybA==";>Apache
  
+href="http://www.securityspace.com/s_survey/data/man.200212/apachemods.html?mod=cGVybA==";>Apache
   Module Report on mod_perl comprising statistics and a graph based
   on the data collected by http://www.securityspace.com/";>www.securityspace.com. They
   also feature http://www.securityspace.com/s_survey/data/man.200211/apachemods.html";>a
  
+href="http://www.securityspace.com/s_survey/data/man.200212/apachemods.html";>a
   comparison between all the Apache modules they survey.  
   
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src 404.html

2002-12-31 Thread stas
stas2002/12/30 20:16:26

  Modified:src  404.html
  Log:
  suggest using searching to find the info at the broken URL
  
  Revision  ChangesPath
  1.4   +2 -3  modperl-docs/src/404.html
  
  Index: 404.html
  ===
  RCS file: /home/cvs/modperl-docs/src/404.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- 404.html  29 Jun 2002 19:19:40 -  1.3
  +++ 404.html  31 Dec 2002 04:16:26 -  1.4
  @@ -12,9 +12,8 @@
   under / -->
   
   
  -The object you were looking for is not at this address anymore.
  -There's been a little bit of reshuffling in the documentation
  -hierarchy, therefore please use the main menu to find your way around.
  +The object you were looking for can't be found at this URL. Please use 
  +the main menu and the search box on your left to find your way around.
   
   
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/debug/code .debug-modperl-init .debug-modperl-register

2002-12-31 Thread stas
stas2002/12/30 20:07:37

  Modified:src/docs/2.0/devel/debug c.pod
   src/docs/2.0/devel/debug/code .debug-modperl-init
.debug-modperl-register
  Log:
  shared lib is now called mod_perl.so and not libmodperl.so, fix the debug
  scripts
  
  Revision  ChangesPath
  1.3   +3 -3  modperl-docs/src/docs/2.0/devel/debug/c.pod
  
  Index: c.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/debug/c.pod,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- c.pod 10 Dec 2002 02:49:10 -  1.2
  +++ c.pod 31 Dec 2002 04:07:37 -  1.3
  @@ -84,7 +84,7 @@
 b ap_run_pre_config
 run -d `pwd`/t -f `pwd`/t/conf/httpd.conf \
 -DONE_PROCESS -DAPACHE2 -DPERL_USEITHREADS
  -  sharedlibrary modperl
  +  sharedlibrary mod_perl
 b modperl_hook_init
 # start: modperl_hook_init
 continue
  @@ -145,8 +145,8 @@
   
   Also notice that you don't have to type the full path of the library
   when trying to load them, even a partial name will suffice. In our
  -commands file example we have used C instead of
  -saying C.
  +commands file example we have used C instead of
  +saying C.
   
   If you want to set breakpoints and step through the code in the Perl
   and APR core libraries you should load their appropriate libraries:
  
  
  
  1.2   +1 -1  
modperl-docs/src/docs/2.0/devel/debug/code/.debug-modperl-init
  
  Index: .debug-modperl-init
  ===
  RCS file: 
/home/cvs/modperl-docs/src/docs/2.0/devel/debug/code/.debug-modperl-init,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- .debug-modperl-init   9 Dec 2002 16:29:57 -   1.1
  +++ .debug-modperl-init   31 Dec 2002 04:07:37 -  1.2
  @@ -22,7 +22,7 @@
   end
   
   define modperl_init
  -sharedlibrary modperl
  +sharedlibrary mod_perl
   b modperl_hook_init
   continue
   end
  
  
  
  1.2   +1 -1  
modperl-docs/src/docs/2.0/devel/debug/code/.debug-modperl-register
  
  Index: .debug-modperl-register
  ===
  RCS file: 
/home/cvs/modperl-docs/src/docs/2.0/devel/debug/code/.debug-modperl-register,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- .debug-modperl-register   9 Dec 2002 16:29:57 -   1.1
  +++ .debug-modperl-register   31 Dec 2002 04:07:37 -  1.2
  @@ -65,7 +65,7 @@
   b ap_add_module
   continue
   
  -sharedlibrary modperl
  +sharedlibrary mod_perl
   b modperl_register_hooks
   continue
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/core explained.pod

2002-12-30 Thread stas
stas2002/12/29 16:24:47

  Modified:src/docs/2.0/devel/core explained.pod
  Log:
  what happens when a function args/return types can't be mapped
  
  Revision  ChangesPath
  1.2   +11 -1 modperl-docs/src/docs/2.0/devel/core/explained.pod
  
  Index: explained.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/core/explained.pod,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- explained.pod 9 Dec 2002 16:29:57 -   1.1
  +++ explained.pod 30 Dec 2002 00:24:47 -  1.2
  @@ -302,9 +302,19 @@
 % make xs_generate
   
   and verify that the autogenerated XS code under the directory
  -I<./WrapXS> is correct. Otherwise build the project normally:
  +I<./WrapXS> is correct. Notice that for functions, whose arguments or
  +return types can't be resolved, the XS glue won't be generated and a
  +warning will be printed. If that's the case add the missing type's
  +typemap to the types map file as explained in L and run the XS generation
  +stage again.
  +
  +You can also build the project normally:
   
  % perl Makefile.PL ...
  +
  +which runs the XS generation stage.
   
   =head2 XS generation process
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl RegistryCooker.pod RegistryLoader.pod

2002-12-29 Thread stas
stas2002/12/29 02:09:10

  Modified:src/docs/2.0/api/ModPerl-Registry/ModPerl RegistryCooker.pod
RegistryLoader.pod
  Log:
  update the registry docs, to sync with the recent code changes
  
  Revision  ChangesPath
  1.5   +13 -0 
modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl/RegistryCooker.pod
  
  Index: RegistryCooker.pod
  ===
  RCS file: 
/home/cvs/modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl/RegistryCooker.pod,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- RegistryCooker.pod28 Dec 2002 07:39:28 -  1.4
  +++ RegistryCooker.pod29 Dec 2002 10:09:10 -  1.5
  @@ -80,6 +80,19 @@
   
   =item * namespace_from()
   
  +If C is used and the script is called from the
  +virtual host, by default the virtual host name is prepended to the uri
  +when package name for the compiled script is created. Sometimes this
  +behavior is undesirable, e.g., when the same (physical) script is
  +accessed using the same path_info but different virtual hosts. In that
  +case you can make the script compiled only once for all vhosts, by
  +specifying:
  +
  +  $ModPerl::RegistryCooker::NameWithVirtualHost = 0;
  +
  +The drawback is that it affects the global environment and all other
  +scripts will be compiled ignoring virtual hosts.
  +
   default: namespace_from()
   
   =item * is_cached()
  
  
  
  1.3   +41 -11
modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl/RegistryLoader.pod
  
  Index: RegistryLoader.pod
  ===
  RCS file: 
/home/cvs/modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl/RegistryLoader.pod,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- RegistryLoader.pod28 Dec 2002 07:39:28 -  1.2
  +++ RegistryLoader.pod29 Dec 2002 10:09:10 -  1.3
  @@ -2,7 +2,7 @@
   
   ModPerl::RegistryLoader - Compile ModPerl::RegistryCooker scripts at server 
startup
   
  -=head1 SYNOPSIS
  +=head1 Synopsis
   
 # in startup.pl
 use ModPerl::RegistryLoader ();
  @@ -14,7 +14,8 @@
 );
   
 $rlbb->handler($uri, $filename);
  -
  +  
  +  ###
 # uri => filename mapping using a helper function
 sub trans {
 my $uri = shift; 
  @@ -26,9 +27,12 @@
 trans   => \&trans,
 );
 $rl->handler($uri);
  +  
  +  ###
  +  $rlbb->handler($uri, $filename, $virtual_hostname);
   
   
  -=head1 DESCRIPTION
  +=head1 Description
   
   This modules allows compilation of scripts, running under packages
   derived from C, at server startup.  The
  @@ -37,7 +41,11 @@
   the compiled copy with the parent and saving the overhead of script's
   compilation on the first request in every httpd instance.
   
  -=head1 METHODS
  +This module is of course useless for those running the
  +C> handler, because the scripts get recompiled on
  +each request under this handler.
  +
  +=head1 Methods
   
   =over
   
  @@ -76,10 +84,10 @@
   
   =item handler()
   
  -  $rl->handler($uri, [$filename]);
  +  $rl->handler($uri, [$filename, [$virtual_hostname]]);
   
   The handler() method takes argument of C and optionally of
  -C.
  +C and of C.
   
   URI to filename translation normally doesn't happen until HTTP request
   time, so we're forced to roll our own translation. If the filename is
  @@ -143,16 +151,38 @@
 }
 }
   
  +If C<$virtual_hostname> argument is passed it'll be used in the
  +creation of the package name the script will be compiled into for
  +those registry handlers that use I method.  See
  +also the notes on C<$ModPerl::RegistryCooker::NameWithVirtualHost> in
  +the C> documentation.
  +
  +Also
  +explained in the C> documentation, this
  +only has an effect at run time if
  +C<$ModPerl::RegistryCooker::NameWithVirtualHost> is set to true,
  +otherwise the C<$virtual_hostname> argument is ignored.
  +
   =back
   
   
  -=head1 AUTHORS
  +=head1 Implementation Notes
   
  -Doug MacEachern
  +C performs a very simple job, at run time it
  +loads and sub-classes the module passed via the I attribute
  +and overrides some of its functions, to emulate the run-time
  +environment. This allows to preload the same script into different
  +registry environments.
   
  -Stas Bekman
  +=head1 Authors
   
  -=head1 SEE ALSO
  +The original C implemented by Doug MacEachern.
   
  -ModPerl::RegistryCooker(3), Apache(3), mod_perl(3)
  +Stas Bekman did the porting to the new registry framework based on
  +C.
  +
  +=head1 SEE ALSO
   
  +C>, C>,
  +C>, C>, Apache(3),
  +mod_perl(3)
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/compat compat.pod

2002-12-28 Thread stas
stas2002/12/27 23:39:28

  Modified:src/docs/2.0/api/ModPerl-Registry/ModPerl RegistryCooker.pod
RegistryLoader.pod
   src/docs/2.0/user/compat compat.pod
  Log:
  more registry docs
  
  Revision  ChangesPath
  1.4   +34 -4 
modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl/RegistryCooker.pod
  
  Index: RegistryCooker.pod
  ===
  RCS file: 
/home/cvs/modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl/RegistryCooker.pod,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- RegistryCooker.pod27 Dec 2002 07:05:22 -  1.3
  +++ RegistryCooker.pod28 Dec 2002 07:39:28 -  1.4
  @@ -33,14 +33,28 @@
   
   Here are the current overridable methods:
   
  +META: these are all documented in RegistryCooker.pm, though not using
  +pod. please help to port these to pod and move the descriptions here.
  +
   =over
   
   =item * new()
   
  +create the class's object, bless it and return it
  +
  +  my $obj = $class->new($r);
  +
  +C<$class> -- the registry class, usually C<__PACKAGE__> can be used.
  +
  +C<$r> -- C> object.
  +
   default: new()
   
   =item * init()
   
  +initializes the data object's fields: C, C,
  +C. Called from the new().
  +
   default: init()
   
   =item * default_handler()
  @@ -128,16 +142,32 @@
   
   =back
   
  -Special Predefined functions
  +
  +
  +
  +=head2 Special Predefined Functions
  +
  +The following functions are implemented as constants.
   
   =over
   
   =item * NOP()
   
  -META: compelete
  +Use when the function shouldn't do anything.
  +
  +=item * TRUE()
  +
  +Use when a function should always return a true value.
  +
  +=item * FALSE()
  +
  +Use when a function should always return a false value.
   
   =back
   
  +
  +
  +
   =head1 Sub-classing Techniques
   
   To override the default C methods, first,
  @@ -199,8 +229,8 @@
 return (stat $self->[FILENAME])[1];
 }
   
  -META: when $r->finfo will be ported it'll be more effecient. (stat
  -$r->finfo)[1]
  +META: when $r-Efinfo will be ported it'll be more effecient. 
  +(stat $r-Efinfo)[1]
   
   
   =head1 Authors
  
  
  
  1.2   +5 -1  
modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl/RegistryLoader.pod
  
  Index: RegistryLoader.pod
  ===
  RCS file: 
/home/cvs/modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl/RegistryLoader.pod,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- RegistryLoader.pod13 Nov 2001 04:36:21 -  1.1
  +++ RegistryLoader.pod28 Dec 2002 07:39:28 -  1.2
  @@ -46,11 +46,15 @@
   When creating a new C object, one has to
   specify which of the C derived modules to
   use. For example if a script is going to run under
  -C the object is initialized as:
  +C the object is initialized as:
   
 my $rlbb = ModPerl::RegistryLoader->new(
 package => 'ModPerl::RegistryBB',
 );
  +
  +If the package is not specified C is assumed:
  +
  +  my $rlbb = ModPerl::RegistryLoader->new();
   
   To turn the debugging on, set the I attribute to a true value:
   
  
  
  
  1.38  +11 -0 modperl-docs/src/docs/2.0/user/compat/compat.pod
  
  Index: compat.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/compat/compat.pod,v
  retrieving revision 1.37
  retrieving revision 1.38
  diff -u -r1.37 -r1.38
  --- compat.pod15 Dec 2002 15:27:51 -  1.37
  +++ compat.pod28 Dec 2002 07:39:28 -  1.38
  @@ -183,7 +183,18 @@
   
   META: complete
   
  +META: document that for now ModPerl::Registry doesn't chdir() into the
  +script's dir like Apache::Registry does, because chdir() affects the
  +whole process under threads.
   
  +
  +=head2 C
  +
  +In mod_perl 1.0 it was only possible to preload scripts as
  +C handlers. In 2.0 the loader can use any of the
  +registry classes to preload into. The old API works as before, but new
  +options can be passed. See the I> manpage
  +for more information.
   
   
   =head1 C
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl Registry.pod RegistryBB.pod RegistryCooker.pod

2002-12-27 Thread stas
stas2002/12/26 23:05:22

  Modified:src/docs/2.0/api/ModPerl-Registry/ModPerl Registry.pod
RegistryBB.pod RegistryCooker.pod
  Log:
  registry docs, work in progress
  
  Revision  ChangesPath
  1.3   +5 -1  
modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl/Registry.pod
  
  Index: Registry.pod
  ===
  RCS file: 
/home/cvs/modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl/Registry.pod,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Registry.pod  19 May 2002 09:41:39 -  1.2
  +++ Registry.pod  27 Dec 2002 07:05:21 -  1.3
  @@ -11,7 +11,7 @@
 SetHandler perl-script
 PerlResponseHandler ModPerl::Registry
 #PerlOptions +ParseHeaders
  -  #PerlOptions +GlobalRequest
  +  #PerlOptions -GlobalRequest
 Options +ExecCGI
 
   
  @@ -35,6 +35,10 @@
 $r->print("mod_perl rules!");
   
   XXX: STOPPED here
  +
  +META: document that for now we don't chdir() into the script's dir,
  +because it affects the whole process under threads.
  +
   
   This module emulates the CGI environment, allowing programmers to
   write scripts that run under CGI or mod_perl without change.  Existing
  
  
  
  1.3   +1 -1  
modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl/RegistryBB.pod
  
  Index: RegistryBB.pod
  ===
  RCS file: 
/home/cvs/modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl/RegistryBB.pod,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- RegistryBB.pod19 May 2002 09:41:39 -  1.2
  +++ RegistryBB.pod27 Dec 2002 07:05:22 -  1.3
  @@ -11,7 +11,7 @@
 SetHandler perl-script
 PerlResponseHandler ModPerl::RegistryBB
 #PerlOptions +ParseHeaders
  -  #PerlOptions +GlobalRequest
  +  #PerlOptions -GlobalRequest
 Options +ExecCGI
 
   
  
  
  
  1.3   +197 -0
modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl/RegistryCooker.pod
  
  Index: RegistryCooker.pod
  ===
  RCS file: 
/home/cvs/modperl-docs/src/docs/2.0/api/ModPerl-Registry/ModPerl/RegistryCooker.pod,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- RegistryCooker.pod19 May 2002 09:41:39 -  1.2
  +++ RegistryCooker.pod27 Dec 2002 07:05:22 -  1.3
  @@ -4,7 +4,204 @@
   
   =head1 Synopsis
   
  +  # shouldn't be used as-is but sub-classed first
  +  # see ModPerl::Registry for an example
  +
   =head1 Description
  +
  +C is used to create flexible and overridable
  +registry modules which emulate mod_cgi for Perl scripts. The concepts
  +are discussed in the manpage of the following modules:
  +C>, C> and
  +C>.
  +
  +C has two purposes:
  +
  +=over
  +
  +=item *
  +
  +Provide ingredients that can be used by registry sub-classes
  +
  +=item *
  +
  +Provide a default behavior, which can be overriden in sub-classed
  +
  +META: in the future this functionality may move into a separate class.
  +
  +=back
  +
  +Here are the current overridable methods:
  +
  +=over
  +
  +=item * new()
  +
  +default: new()
  +
  +=item * init()
  +
  +default: init()
  +
  +=item * default_handler()
  +
  +default:  default_handler()
  +
  +=item * run()
  +
  +default: run()
  +
  +=item * can_compile()
  +
  +default: can_compile()
  +
  +=item * make_namespace()
  +
  +default: make_namespace()
  +
  +=item * namespace_root()
  +
  +default: namespace_root()
  +
  +
  +=item * namespace_from()
  +
  +default: namespace_from()
  +
  +=item * is_cached()
  +
  +default: is_cached()
  +
  +=item * should_compile()
  +
  +default: should_compile()
  +
  +=item * flush_namespace()
  +
  +default: flush_namespace()
  +
  +
  +=item * cache_table()
  +
  +default: cache_table()
  +
  +=item * cache_it()
  +
  +default: cache_it()
  +
  +=item * read_script()
  +
  +default: read_script()
  +
  +=item * rewrite_shebang()
  +
  +default: rewrite_shebang()
  +
  +=item * set_script_name()
  +
  +default: set_script_name()
  +
  +=item * chdir_file()
  +
  +default: chdir_file()
  +
  +=item * get_mark_line()
  +
  +default: get_mark_line()
  +
  +=item * compile()
  +
  +default: compile()
  +
  +
  +=item * error_check()
  +
  +default: error_check()
  +
  +=item * strip_end_data_segment()
  +
  +default: strip_end_data_segment()
  +
  +=item * convert_script_to_compiled_handler()
  +
  +default: convert_script_to_compiled_handler()
  +
  +=back
  +
  +Special Predefined functions
  +
  +=over
  +
  +=item * NOP()
  +
  +META: compelete
  +
  +=back
  +
  +=head1 Sub-classing Techniques
  +
  +To override the default C methods, first,
  +sub-class C or one of its existing
  +sub-classes, using C. Second, overr

cvs commit: modperl-docs/src/docs/2.0/user/intro overview.pod

2002-12-23 Thread stas
stas2002/12/23 15:31:22

  Modified:src/docs/2.0/user/design design.pod
   src/docs/2.0/user/intro overview.pod
  Log:
  trying to bring the design doc up-to-date
  
  Revision  ChangesPath
  1.11  +54 -76modperl-docs/src/docs/2.0/user/design/design.pod
  
  Index: design.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/design/design.pod,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- design.pod15 Dec 2002 17:36:38 -  1.10
  +++ design.pod23 Dec 2002 23:31:22 -  1.11
  @@ -4,7 +4,12 @@
   
   =head1 Description
   
  -Notes on the design and goals of mod_perl-2.0
  +Notes on the design and goals of mod_perl-2.0.
  +
  +We try to keep this doc in sync with the development, so some items
  +discussed here were already implemented, while others are only
  +planned. If you find some inconsistencies in this document please let
  +the list know.
   
   =head1 Introduction
   
  @@ -395,52 +400,32 @@
   
   =head1 Filter Hooks
   
  -mod_perl will provide two interfaces to filtering, a direct mapping to
  -buckets and bucket brigades and a simpler, stream-oriented interface.
  -
  -Example of the stream oriented interface:
  -
  -  file:httpd.conf
  -  ---
  -  PerlOutputFilterHandler Apache::ReverseFilter
  -
  -  file:Apache/ReverseFilter.pm
  -  
  -  package Apache::ReverseFilter;
  -  
  -  use strict;
  -  
  -  sub handler {
  -  my $filter = shift;
  -  
  -  while ($filter->read(my $buffer, 1024)) {
  -  $filter->write(scalar reverse $buffer);
  -  }
  -  
  -  return Apache::OK;
  -  }
  -  1;
  +mod_perl 2.0 provides two interfaces to filtering, a direct mapping to
  +buckets and bucket brigades and a simpler, stream-oriented
  +interface. This is discussed in the L.
   
   =head1 Directive Handlers
   
   mod_perl 1.0 provides a mechanism for Perl modules to implement
  -first-class directive handlers, but requires an xs file to be
  -generated and compiled.  The 2.0 version will provide the same
  -functionality, but will not require the generated xs module.
  +first-class directive handlers, but requires an XS file to be
  +generated and compiled.  The 2.0 version provides the same
  +functionality, but does not require the generated XS module
  +(i.e. everything is implemented in pure Perl).
   
   =head1 EPerlE Configuration Sections
   
  -The ability to write configuration in Perl will carry over from 1.0,
  -but will likely be implemented much different internally.  The mapping
  -of a Perl symbol table should fit cleanly into the new
  -I API, unlike the hoop jumping required in 1.0.
  +The ability to write configuration in Perl carries over from 1.0, but
  +but implemented much different internally.  The mapping of a Perl
  +symbol table fits cleanly into the new I API, unlike
  +the hoop jumping required in mod_perl 1.0.
   
   =head1 Protocol Module Support
   
  -Protocol module support is provided out-of-the-box, as the hooks
  -and API are covered by the generated code blankets.  Any functionality
  -for assisting protocol modules should be folded back into Apache if
  -possible.
  +L support is
  +provided out-of-the-box, as the hooks and API are covered by the
  +generated code blankets.  Any functionality for assisting protocol
  +modules should be folded back into Apache if possible.
   
   =head1 mod_perl MPM
   
  @@ -472,18 +457,19 @@
   unpacked inside the mod_perl tree and built static without
   modification to the mod_perl Makefiles.
   
  -For platforms such as Win32, the build files will be generated similar
  -to how unix-flavor Is are.
  +For platforms such as Win32, the build files are generated similar to
  +how unix-flavor Is are.
   
   =head1 Test Framework
   
  -Similar to 1.0, mod_perl-2.0 will provide a 'make test' target to
  -exercise as many areas of the API and module features as possible.
  +Similar to 1.0, mod_perl-2.0 provides a 'make test' target to exercise
  +as many areas of the API and module features as possible.
   
   The test framework in 1.0, like several other areas of mod_perl, was
  -cobbled together over the years.  The goal of 2.0 is to provide a test
  -framework that will be usable not only for mod_perl, but for
  -third-party C modules and Apache itself.
  +cobbled together over the years.  mod_perl 2.0 provides a test
  +framework that is usable not only for mod_perl, but for third-party
  +C modules and Apache itself. See
  +C>.
   
   =head1 CGI Emulation
   
  @@ -494,31 +480,35 @@
   For example, the C<%ENV> environment variable table, C blocks,
   C<@INC> include paths, etc.
   
  -CGI emulation will be supported in 2.0, but done so in a way that it
  -is encapsulated in its own handler.  Rather that 1.0 which uses the
  +CGI emulation is suppor

cvs commit: modperl-docs/src/docs/1.0/guide snippets.pod

2002-12-21 Thread stas
stas2002/12/20 18:04:35

  Modified:src/docs/1.0/guide snippets.pod
  Log:
  a corrected version of the backup script
  Submitted by: Miroslav Madzarevic, [EMAIL PROTECTED]
  Reviewed by:  stas
  
  Revision  ChangesPath
  1.14  +12 -6 modperl-docs/src/docs/1.0/guide/snippets.pod
  
  Index: snippets.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/snippets.pod,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- snippets.pod  20 Dec 2002 06:13:29 -  1.13
  +++ snippets.pod  21 Dec 2002 02:04:35 -  1.14
  @@ -1492,22 +1492,28 @@
   
   Here is another version using C:
   
  -  #!/usr/bin/perl -w
  +  #!/usr/bin/perl
  +  # written by Miroslav Madzarevic, [EMAIL PROTECTED]
 use strict;
 
  +  umask 0177;
  +  
 use File::Backup qw|backup|;
 
 backup(
  - 'from'  => "/home/mire/www",
  - 'to'=> "/opt/backup/box/some_dir",
  + 'from'  => "",
  + 'to'=> "/opt/backup/mysql/backup",
'torootname'=> "example_backup_",
'keep'  => 4,
  - 'tar'   => "/bin/tar",
  + 'tar'   => "/usr/bin/mysqldump",
'compress'  => "/usr/bin/bzip2",
  - 'tarflags'  => "cvf",
  + 'tarflags'  => "example -uroot -proot_pass -a >",
'compressflags' => "",
  - 'tarsuffix' => '.tar',
  + 'tarsuffix' => '.sql',
 );
  +
  +
  +
   
   Now make the script executable and arrange the crontab entry to run
   the backup script nightly.  Note that the disk space used by the
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/1.0/guide snippets.pod Changes.pod

2002-12-20 Thread stas
stas2002/12/19 22:13:29

  Modified:src/docs/1.0/guide snippets.pod Changes.pod
  Log:
  Added a short version of the mysql back script
  Submitted by: "mire" <[EMAIL PROTECTED]>
  Reviewed by:  stas
  
  Revision  ChangesPath
  1.13  +19 -0 modperl-docs/src/docs/1.0/guide/snippets.pod
  
  Index: snippets.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/snippets.pod,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- snippets.pod  8 Nov 2002 06:34:47 -   1.12
  +++ snippets.pod  20 Dec 2002 06:13:29 -  1.13
  @@ -1490,6 +1490,25 @@
   system.  List the names of the databases you want to backup using
   the C array.
   
  +Here is another version using C:
  +
  +  #!/usr/bin/perl -w
  +  use strict;
  +  
  +  use File::Backup qw|backup|;
  +  
  +  backup(
  + 'from'  => "/home/mire/www",
  + 'to'=> "/opt/backup/box/some_dir",
  + 'torootname'=> "example_backup_",
  + 'keep'  => 4,
  + 'tar'   => "/bin/tar",
  + 'compress'  => "/usr/bin/bzip2",
  + 'tarflags'  => "cvf",
  + 'compressflags' => "",
  + 'tarsuffix' => '.tar',
  +  );
  +
   Now make the script executable and arrange the crontab entry to run
   the backup script nightly.  Note that the disk space used by the
   backups will grow without bound and you should remove the old backups.
  
  
  
  1.36  +3 -0  modperl-docs/src/docs/1.0/guide/Changes.pod
  
  Index: Changes.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/Changes.pod,v
  retrieving revision 1.35
  retrieving revision 1.36
  diff -u -r1.35 -r1.36
  --- Changes.pod   8 Nov 2002 06:34:47 -   1.35
  +++ Changes.pod   20 Dec 2002 06:13:29 -  1.36
  @@ -26,6 +26,9 @@
o Added some Apache::Cookie login page example with internal
  redirects. [Alan Bailward, ]
   
  + o Added a short version of the mysql back script ["mire"
  +   <[EMAIL PROTECTED]>]
  +
   * performance.pod
   
o Note about browser not rendering immediately even under $|=1.
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/install install.pod

2002-12-17 Thread stas
stas2002/12/16 23:22:42

  Modified:src/docs/2.0/user/install install.pod
  Log:
  explain why 5.6.1 is not enforced, even though we know that 5.6.0 is
  buggy.
  
  Revision  ChangesPath
  1.32  +4 -1  modperl-docs/src/docs/2.0/user/install/install.pod
  
  Index: install.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/install/install.pod,v
  retrieving revision 1.31
  retrieving revision 1.32
  diff -u -r1.31 -r1.32
  --- install.pod   27 Oct 2002 09:24:47 -  1.31
  +++ install.pod   17 Dec 2002 07:22:42 -  1.32
  @@ -33,7 +33,10 @@
   =item prefork MPM
   
   Requires at least Perl version 5.6.0. But we strongly suggest to use
  -at least version 5.6.1, since 5.6.0 is quite buggy.
  +at least version 5.6.1, since 5.6.0 is quite buggy. The only reason we
  +support 5.6.0 is for development reasons (so the build can be tested
  +on systems having only 5.6.0) and those users who want to give it a
  +try, without first having the hassle of updating their perl version.
   
   You don't need to have threads-support enabled in Perl. If you do have
   it, it B be I and not I<5005threads>! If you have:
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/overview overview.pod

2002-12-15 Thread stas
stas2002/12/15 09:36:38

  Modified:src/docs/1.0/os/win32 multithread.pod
   src/docs/2.0/user config.cfg
   src/docs/2.0/user/design design.pod
  Added:   src/docs/2.0/user/intro overview.pod
  Removed: src/docs/2.0/user/overview overview.pod
  Log:
  move the overview chapter into the intro section, adjust links
  
  Revision  ChangesPath
  1.3   +1 -1  modperl-docs/src/docs/1.0/os/win32/multithread.pod
  
  Index: multithread.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/os/win32/multithread.pod,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- multithread.pod   30 May 2002 19:37:50 -  1.2
  +++ multithread.pod   15 Dec 2002 17:36:38 -  1.3
  @@ -21,7 +21,7 @@
   This situation changes with Apache/mod_perl 2.0, which is based on a
   multi-process/multi-thread approach using a native Win32 threads
   implementation See the L for more details,
  +overview|docs::2.0::user::intro::overview> for more details,
   and the discussion of L
   on getting modperl-2 for Win32 in particular.
   
  
  
  
  1.19  +1 -1  modperl-docs/src/docs/2.0/user/config.cfg
  
  Index: config.cfg
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/config.cfg,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- config.cfg15 Dec 2002 17:32:04 -  1.18
  +++ config.cfg15 Dec 2002 17:36:38 -  1.19
  @@ -11,7 +11,7 @@
   group=> 'Introduction',
   chapters => [qw(
   intro/start_fast.pod
  -overview/overview.pod
  +intro/overview.pod
   design/design.pod
   )],
   
  
  
  
  1.10  +1 -1  modperl-docs/src/docs/2.0/user/design/design.pod
  
  Index: design.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/design/design.pod,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- design.pod16 Jun 2002 12:43:38 -  1.9
  +++ design.pod15 Dec 2002 17:36:38 -  1.10
  @@ -17,7 +17,7 @@
   being implemented as a complete re-write from scratch.
   
   For a more detailed introduction and functionality overview, see
  -L.
  +L.
   
   =head1 Interpreter Management
   
  
  
  
  1.1  modperl-docs/src/docs/2.0/user/intro/overview.pod
  
  Index: overview.pod
  ===
  =head1 NAME
  
  Overview of mod_perl 2.0
  
  =head1 Description
  
  This chapter presents the new features of Apache 2.0, Perl 5.6.0 -
  5.8.0 and their influence on mod_perl 2.0. The new MPM models from Apache
  2.0 are discussed. This chapter should give you a general idea about
  what mod_perl 2.0 is and how it differs from mod_perl 1.0.
  
  
  
  =head1 Version Naming Conventions
  
  In order to keep things simple, here and in the rest of the
  documentation we refer to mod_perl 1.x series as mod_perl 1.0 and to
  2.0.x series as mod_perl 2.0. Similarly we call Apache 1.3.x series as
  Apache 1.3 and 2.0.x as Apache 2.0. There is also Apache 2.1, which is
  a development track towards Apache 2.2.
  
  =head1 Why mod_perl, The Next Generation
  
  mod_perl was introduced in early 1996, both Perl and Apache have
  changed a great deal since that time. mod_perl has adjusted to both
  along the way over the past 4 and a half years or so using the same
  code base.  Over this course of time, the mod_perl sources have become
  more and more difficult to maintain, in large part to provide
  compatibility between the many different flavors of Apache and Perl.
  And, compatibility across these versions and flavors is a more
  difficult goal for mod_perl to reach that a typical Apache or Perl
  module, since mod_perl reaches a bit deeper into the corners of Apache
  and Perl internals than most.  Discussions of the idea to rewrite
  mod_perl as version 2.0 started in 1998, but never made it much
  further than an idea.  When Apache 2.0 development was underway it
  became clear that a rewrite of mod_perl would be required to adjust to
  the new Apache architecture and API.
  
  Of the many changes happening in Apache 2.0, the one which has the
  most significant impact on mod_perl is the introduction of threads to
  the overall design.  Threads have been a part of Apache on the win32
  side since the Apache port was introduced.  The mod_perl port to win32
  happened in version 1.00b1, released in June of 1997.  This port
  enabled mod_perl to compile and run in a threaded windows environment,
  with one major caveat: only one concurrent mod_perl request could be
  handled at any given time.  This was due to the fact that Perl did not
  introduce thread-safe interpreters until vers

cvs commit: modperl-docs/src/docs/2.0/user/intro start_fast.pod

2002-12-15 Thread stas
stas2002/12/15 09:32:04

  Modified:src/docs/2.0 TODO
   src/docs/2.0/devel/core apache_integration.pod
   src/docs/2.0/user config.cfg
   src/docs/2.0/user/coding coding.pod
   src/docs/2.0/user/config config.pod
   src/docs/2.0/user/intro start_fast.pod
  Log:
  a bunch of docco fixes and improvements
  
  Revision  ChangesPath
  1.4   +231 -1modperl-docs/src/docs/2.0/TODO
  
  Index: TODO
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/TODO,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- TODO  4 Dec 2002 02:58:26 -   1.3
  +++ TODO  15 Dec 2002 17:32:04 -  1.4
  @@ -52,9 +52,239 @@
   If you create an apr object and register your own cleanup, you still
   have that object until your registered cleanup is finished.
   
  +---
  +
  +Need to integrate the following example, removed from overview.pod, in
  +protocols.pod:
  +
  +
  +=head2 Apache::CommandServer
  +
  +Our first protocol handler example took advange of Apache's server
  +framework, but did not tap into any other modules.  The next example
  +is based on the example in the "TCP Servers with IO::Socket" section
  +of the I manpage.  Of course, we don't need C
  +since Apache takes care of those details for us.  The rest of that
  +example can still be used to illustrate implementing a simple text
  +protocol.  In this case, one where a command is sent by the client to
  +be executed on the server side, with results sent back to the client.
  +
  +The C handler will support four commands:
  +C, C, C and C.  These are probably not commands
  +which can be exploited, but should we add such commands, we'll want to
  +limit access based on ip address/hostname, authentication and
  +authorization.  Protocol handlers need to take care of these tasks
  +themselves, since we bypass the HTTP protocol handler.
  +
  +As with all C, we are passed an
  +C object as the first argument.  Again, we will be
  +directly accessing the client socket via the I method.
  +The I subroutine is called to check if access by this client
  +should be allowed.  This routine makes up for what we lost with the
  +core HTTP protocol handler bypassed.  First we call the
  +C I method, which returns a I
  +object, just like that which is passed at request time to
  +C and returned by the subrequest API methods,
  +I and I.  However, this "fake request" does
  +not run handlers for any of the phases, it simply returns an object
  +which we can use to do that ourselves.  The C method
  +is passed the "location" for this request, it will look up the
  +CLocationE> section that matches the given name and merge it
  +with the default server configuration.  For example, should we only
  +wish to allow access to this server from certain locations:
  +
  +  
  +  deny from all
  +  allow from 10.*
  +  
  +
  +The I method only looks up and merges the
  +configuration, we still need to apply it.  This is done in I
  +loop, iterating over three methods: I,
  +I and I.  These methods will call
  +directly into the Apache functions that invoke module handlers for
  +these phases and will return an integer status code, such as C,
  +C or C.  If I returns something
  +other than C or C, that status will be propagated up to
  +the handler routine and then back up to Apache.  Otherwise, the access
  +check passed and the loop will break unless I
  +returns true.  This would be false given the previous configuration
  +example, but would be true in the presense of a I directive,
  +such as:
  +
  +  
  +  deny from all
  +  allow from 10.*
  +  require user dougm
  +  
  +
  +Given this configuration, I will return true.  The
  +I method is then called, which will return false if we have not
  +yet authenticated.  A I utility is called to read the username
  +and password, which are then injected into the I table
  +using the I method.  The I field
  +in this table is set to a base64 encoded value of the
  +username:password pair, exactly the same format a browser would send
  +for I.  Next time through the loop
  +I is called, which will in turn invoke any
  +authentication handlers, such as I.  When I calls
  +the I API function (as all Basic auth modules
  +do), it will get back the username and password we injected.  If we
  +fail authentication a B<401> status code is returned which we
  +propagate up.  Otherwise, authorization handlers are run via
  +I.  Authorization handlers normally need the I
  +field of the I for its checks and that field was filled
  +in when I called I.
  +
  +Provided login is a success, a welcome message is printed and main
  +request loop entered.  Inside the loop the I function returns
  +just one line of data, with newline characters stripped.  If the
  +string sent by t

cvs commit: modperl-docs/src/docs/2.0/user/overview overview.pod

2002-12-15 Thread stas
stas2002/12/15 09:31:19

  Modified:src/docs/2.0/user/overview overview.pod
  Removed: src/docs/2.0/user/intro what_is_new.pod
  Log:
  - folding what_is_new.pod into overview.pod
  - cleaning up old wannabe overview notes
  
  Revision  ChangesPath
  1.12  +465 -937  modperl-docs/src/docs/2.0/user/overview/overview.pod
  
  Index: overview.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/overview/overview.pod,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- overview.pod  9 Oct 2002 08:46:05 -   1.11
  +++ overview.pod  15 Dec 2002 17:31:18 -  1.12
  @@ -4,11 +4,22 @@
   
   =head1 Description
   
  -This chapter gives you a general idea about what mod_perl 2.0 is and
  -how it differs from mod_perl 1.0. Also the new MPM models from Apache
  -2.0 are discussed
  +This chapter presents the new features of Apache 2.0, Perl 5.6.0 -
  +5.8.0 and their influence on mod_perl 2.0. The new MPM models from Apache
  +2.0 are discussed. This chapter should give you a general idea about
  +what mod_perl 2.0 is and how it differs from mod_perl 1.0.
   
  -=head1 Introduction
  +
  +
  +=head1 Version Naming Conventions
  +
  +In order to keep things simple, here and in the rest of the
  +documentation we refer to mod_perl 1.x series as mod_perl 1.0 and to
  +2.0.x series as mod_perl 2.0. Similarly we call Apache 1.3.x series as
  +Apache 1.3 and 2.0.x as Apache 2.0. There is also Apache 2.1, which is
  +a development track towards Apache 2.2.
  +
  +=head1 Why mod_perl, The Next Generation
   
   mod_perl was introduced in early 1996, both Perl and Apache have
   changed a great deal since that time. mod_perl has adjusted to both
  @@ -44,65 +55,111 @@
   It just so happens that the release of Perl 5.6.0 was nearly at the
   same time as the first alpha version of Apache 2.0.  The development
   of mod_perl 2.0 was underway before those releases, but as both Perl
  -5.6.x and Apache 2.0 are reaching stability, mod_perl-2.0 becomes more 
  -of a reality.  In addition to the adjustments for threads and Apache
  -2.0 API changes, this rewrite of mod_perl is an opportunity to clean
  -up the source tree.  This includes both removing the old backward
  -compatibility bandaids and building a smarter, stronger and faster
  -implementation based on lessons learned over the 4.5 years since
  -mod_perl was introduced.
  +5.6.0 and Apache 2.0 were reaching stability, mod_perl 2.0 was
  +becoming more of a reality.  In addition to the adjustments for
  +threads and Apache 2.0 API changes, this rewrite of mod_perl is an
  +opportunity to clean up the source tree.  This includes both removing
  +the old backward compatibility bandaids and building a smarter,
  +stronger and faster implementation based on lessons learned over the
  +4.5 years since mod_perl was introduced.
  +
  +The new version includes a mechanism for an automatic building of the
  +Perl interface to Apache API, which allowed us to easily adjust
  +mod_perl 2.0 to ever changing Apache 2.0 API, during its development
  +period. Another important feature is the
  +C> framework, which
  +was originally developed for mod_perl 2.0, but then was adopted by
  +Apache 2.0 developers to test the core server features and third party
  +modules. Moreover the tests written using the
  +C> framework could be
  +run with Apache 1.0 and 2.0, assuming that both supported the same
  +features.
  +
  +There are multiple other interesting changes that have already
  +happened to mod_perl in version 2.0 and more will be developed in the
  +future. Some of these are discussed in this chapter, others can be
  +found in the rest of the mod_perl 2.0 documentation.
  +
  +=head1 What's new in Apache 2.0
  +
  +Apache 2.0 has introduced numerous new features and enhancements. Here
  +are the most important new features:
  +
  +=over
   
  -This document assumes basic knowlege of mod_perl-1.0 features and will
  -focus only the differences mod_perl-2.0 will bring.
  +=item * I (APR)
   
  -Note 1: The Apache and mod_perl APIs mentioned in this document are
  -both in an "alpha" state and subject to change.
  +Apache 1.3 has been ported to a very large number of platforms
  +including various flavors of unix, win32, os/2, the list goes on.
  +However, in 1.3 there was no clear-cut, pre-designed portability layer
  +for third-party modules to take advantage of.  APR provides this API
  +layer in a very clean way.  APR assists a great deal with mod_perl
  +portability.  Combined with the portablity of Perl, mod_perl 2.0 needs
  +only to implement a portable build system, the rest comes "for free".
  +A Perl interface is provided for certain areas of APR, such as the
  +shared memory abstraction, but the majority of APR is used by mod_perl
  +"under the covers".
   
  -Note 2: Some of the mo

cvs commit: modperl-docs/src/docs/2.0/user/compat compat.pod

2002-12-15 Thread stas
stas2002/12/15 07:27:51

  Modified:src/docs/2.0/user/compat compat.pod
  Log:
  document the back compat issues with $r->set_byterange and
  $r->each_byterange
  
  Revision  ChangesPath
  1.37  +15 -0 modperl-docs/src/docs/2.0/user/compat/compat.pod
  
  Index: compat.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/compat/compat.pod,v
  retrieving revision 1.36
  retrieving revision 1.37
  diff -u -r1.36 -r1.37
  --- compat.pod6 Dec 2002 16:24:32 -   1.36
  +++ compat.pod15 Dec 2002 15:27:51 -  1.37
  @@ -575,8 +575,23 @@
   C<$r-Esoft_timeout> and C<$r-Ekill_timeout> aren't needed
   in mod_perl 2.0.
   
  +=head2 C<$r-Eset_byterange>
   
  +See the next item.
   
  +=head2 C<$r-Eeach_byterange>
  +
  +The functions C<$r-Eset_byterange> and C<$r-Eeach_byterange>
  +aren't in the Apache 2.0 API, and therefore don't exist in mod_perl
  +2.0. The byterange serving functionality is now implemented in the
  +ap_byterange_filter, which is a part of the core http module, meaning
  +that it's automatically taking care of serving the requested ranges
  +off the normal complete response. There is no need to configure
  +it. It's executed only if the appropriate request headers are
  +set. These headers aren't listed here, since there are several
  +combinations of them, including the older ones which are still
  +supported. For a complete info on these see
  +I.
   
   
   =head1 Apache::File
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/config custom.pod

2002-12-13 Thread stas
stas2002/12/13 09:50:29

  Modified:src/docs/2.0/user/config custom.pod
  Log:
  the custom configuration directives doc is almost complete
  
  Revision  ChangesPath
  1.3   +310 -117  modperl-docs/src/docs/2.0/user/config/custom.pod
  
  Index: custom.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/config/custom.pod,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- custom.pod12 Dec 2002 10:17:27 -  1.2
  +++ custom.pod13 Dec 2002 17:50:29 -  1.3
  @@ -7,8 +7,6 @@
   This chapter explains how to create custom Apache configuration
   directives in Perl.
   
  -WARNING: This doc is under construction
  -
   =head1 Incentives
   
   mod_perl provides several ways to pass custom configuration
  @@ -167,16 +165,17 @@
   the defaults described next.
   
   These are the attributes that can be used to define the directives
  -behavior:
  +behavior: I>, I>,
  +I>, I> and
  +I>. They are discussed in the following sections.
   
  -=over
   
  -=item * name
  +=head3 C
   
   This is the only required attribute. And it declares the name of the
   new directive as it'll be used in I.
   
  -=item * func
  +=head3 C
   
   The I attribute expects a reference to a function or a function
   name. This function is called by httpd every time it encounters the
  @@ -198,13 +197,14 @@
   as a name of a subroutine and it anticipates that it exists in that
   package.
   
  -=item * req_override
  +=head3 C
   
   The I<> attribute defines the valid scope in which this directive can
   appear. There are L which map onto the
   corresponding Apache macros. These constants should be imported from
  -the C package.
  +the C>
  +package.
   
   For example, to use the C constant, which allows directives to
   be defined anywhere, first, it needs to be imported:
  @@ -224,31 +224,33 @@
   forbid it from ever being used in I<.htaccess> files:
   
   This attribute is optional. If not supplied, the default value of
  -C is used.
  +C> is used.
   
  -=item * args_how
  +=head3 C
   
   Directives can receive zero, one or many arguments. In order to help
   Apache validate that the number of arguments is valid, the I
   attribute should be set to the desired value. Similar to the
  -I attribute, the C package provides
  -special constants which map to the corresponding Apache macros.  There
  -are L to
  -choose from.
  +I> attribute, the
  +C>
  +package provides special constants which map to the corresponding
  +Apache macros.  There are L to choose from.
   
   In our example, the directive C accepts one or more
  -arguments, therefore we have the C constant:
  +arguments, therefore we have the
  +C> constant:
   
  args_how => Apache::ITERATE,
   
   This attribute is optional. If not supplied, the default value of
  -C is used.
  +C> is used.
   
   META: the default may change to use a constant corresponding to the
   I prototype.
   
   
  -=item * errmsg
  +=head3 C
   
   The I attribute provides a short but succinct usage statement
   that summarizes the arguments that the directive takes. It's used by
  @@ -261,23 +263,22 @@
  errmsg => 'MyParameter Entry1 [Entry2 ... [EntryN]]',
   
   This attribute is optional. If not supplied, the default value of will
  -be a string based on the directive's I and I
  -attributes.
  +be a string based on the directive's I> and
  +I> attributes.
   
  -=back
   
   =head2 Directive Scope Definition Constants
   
  -The I attribute specifies the configuration scope in
  -which it's valid to use a given configuration directive. This
  -attribute's value can be any of or a combination of the following
  -constants:
  +The I> attribute specifies the
  +configuration scope in which it's valid to use a given configuration
  +directive. This attribute's value can be any of or a combination of
  +the following constants:
   
   (these constants are declared in I.)
   
   =head3 C
   
  -The directive cannot be overriden by any of the C
  +The directive cannot be overridden by any of the C
   options.
   
   =head3 C
  @@ -331,7 +332,14 @@
   Force directive to execute a command which would modify the
   configuration (like including another file, or C).
   
  -META: details???
  +Normally, Apache first parses the configuration tree and then executes
  +the directives it has encountered (e.g., C). But there are
  +directives that must be executed during the initial parsing, either
  +because they affect the configuration tree (e.g., C may load
  +extra configuration) or because they tell Apache about new directives
  +(e.g., C or C, may load a module, which
  +installs handlers for new directives). These directives must have the
  +C turned on.
   
   =head3 C
   
  @@ -342,11 +350,12 @@
   
   =head2 Direct

cvs commit: modperl-docs/src/docs/general/testing testing.pod

2002-12-13 Thread stas
stas2002/12/13 02:46:32

  Modified:src/docs/general/testing testing.pod
  Log:
  spel
  
  Revision  ChangesPath
  1.4   +2 -2  modperl-docs/src/docs/general/testing/testing.pod
  
  Index: testing.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/general/testing/testing.pod,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- testing.pod   13 Dec 2002 10:46:20 -  1.3
  +++ testing.pod   13 Dec 2002 10:46:32 -  1.4
  @@ -2452,7 +2452,7 @@
   
 % t/TEST -conf
   
  -Check the autogenerated I and you will find what
  +Check the auto-generated I and you will find what
   port was assigned. Of course it can change when more tests which
   require a special virtual host are used.
   
  @@ -2533,7 +2533,7 @@
   some perl code as a content is created.
   
   
  -=head3 Controling the Configuration Order
  +=head3 Controlling the Configuration Order
   
   Sometimes it's important in which order the configuration section of
   each response package is inserted. C controls the
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/general/testing testing.pod

2002-12-13 Thread stas
stas2002/12/13 02:46:20

  Modified:src/docs/general/testing testing.pod
  Log:
  Document the following configuration issues:
- Virtual Hosts
- Running Pre-Configuration Code
- Controlling the Configuration Order (a new feature!)
  
  Revision  ChangesPath
  1.3   +155 -3modperl-docs/src/docs/general/testing/testing.pod
  
  Index: testing.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/general/testing/testing.pod,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- testing.pod   2 Dec 2002 16:16:18 -   1.2
  +++ testing.pod   13 Dec 2002 10:46:20 -  1.3
  @@ -2429,11 +2429,163 @@
   to a minimum and let Perl do the rest of the job for us.
   
   
  +=head3 Virtual Hosts
  +
  +C automatically assigns an unused port for the virtual
  +host configuration. Just make sure that you use the package name in
  +the place where you usually specify a I value. For
  +example for the following package:
  +
  +  #file:MyApacheTest/Foo.pm
  +  #
  +  package MyApacheTest::Foo;
  +  ...
  +  1;
  +  __END__
  +  
  +  
  +  
  +  
  +  
  +
  +After running:
  +
  +  % t/TEST -conf
  +
  +Check the autogenerated I and you will find what
  +port was assigned. Of course it can change when more tests which
  +require a special virtual host are used.
  +
  +Now in the request script, you can figure out what port that virtual
  +host was assigned, using the package name. For example:
  +
  +  #file:test_foo.t
  +  #---
  +  use Apache::TestRequest;
  +  
  +  my $module = "MyApacheTest::Foo;";
  +  my $config   = Apache::Test::config();
  +  Apache::TestRequest::module($module);
  +  my $hostport = Apache::TestRequest::hostport($config);
  +  
  +  print GET_BODY "http://$hostport/test_foo";;
  +
  +=head3 Running Pre-Configuration Code
  +
  +Sometimes you need to setup things for the test. This usually includes
  +creating directories and files, and populating the latter with some
  +data, which will be used at request time. Instead of performing that
  +operation in the client script every time a test is run, it's usually
  +better to do it once when the server is configured. If you wish to run
  +such a code, all you have to do is to add a special subroutine
  +C in the response package (assuming that that
  +response package exists). When server is configured (C)
  +it scans all the response packages for that subroutine and if found
  +runs it.
  +
  +C accepts two arguments: the package name of
  +the file this subroutine is defined in and the C
  +configuration object.
  +
  +Here is an example of a package that uses such a subroutine:
  +
  +  package TestDirective::perlmodule;
  +  
  +  use strict;
  +  use warnings FATAL => 'all';
  +  
  +  use Apache::Test ();
  +  
  +  use Apache::RequestRec ();
  +  use Apache::RequestIO ();
  +  use File::Spec::Functions qw(catfile);
  +  
  +  use Apache::Const -compile => 'OK';
  +  
  +  sub handler {
  +  my $r = shift;
  +  
  +  $r->content_type('text/plain');
  +  $r->puts($ApacheTest::PerlModuleTest::MAGIC || '');
  +  
  +  Apache::OK;
  +  }
  +  
  +  sub APACHE_TEST_CONFIGURE {
  +  my ($class, $self) = @_;
  +  
  +  my $vars = $self->{vars};
  +  my $target_dir = catfile $vars->{documentroot}, 'testdirective';
  +  
  +  my $magic = __PACKAGE__;
  +  my $content = <writefile($file, $content, 1);
  +  }
  +  1;
  +
  +In this example's function a directory is created. Then a file with
  +some perl code as a content is created.
  +
  +
  +=head3 Controling the Configuration Order
  +
  +Sometimes it's important in which order the configuration section of
  +each response package is inserted. C controls the
  +insertion order using a special token C. To
  +decide on the configuration insertion order, C scans all
  +response packages and tries to match the following pattern:
  +
  +  /APACHE_TEST_CONFIG_ORDER\s+([+-]?\d+)/
  +
  +So you can assign any integer number (positive or negative). If the
  +match fails, it's assumed that the token's value is 0. Next a simple
  +numerical search is performed and those configuration sections with
  +lower token value are inserted first.
  +
  +It's not specified how sections with the same token value are
  +ordered. This usually depends on the order the files were read from
  +the disk, which may vary from machine to machine and shouldn't be
  +relied upon.
  +
  +As already mentioned by default all configuration sections have a
  +token whose value is 0, meaning that their ordering is
  +unimportant. Now if you want to make sure that some section is
  +inserted first, assign to it a negative number, e.g.:
  +
  +  # APACHE_TEST_CONFIG_ORDER -150
  +

cvs commit: modperl-docs/src/docs/2.0/user/config custom.pod

2002-12-12 Thread stas
stas2002/12/12 02:17:27

  Modified:src/docs/2.0/user/config custom.pod
  Log:
  got the big example working (core fixes were pending), now need to add
  explainations
  
  Revision  ChangesPath
  1.2   +316 -0modperl-docs/src/docs/2.0/user/config/custom.pod
  
  Index: custom.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/config/custom.pod,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- custom.pod9 Dec 2002 16:47:06 -   1.1
  +++ custom.pod12 Dec 2002 10:17:27 -  1.2
  @@ -728,6 +728,322 @@
 NotifyErrorEmail email_address
   
   
  +=head1 Examples
  +
  +=head2 Merging at Work
  +
  +In the following example we are going to demonstrate in details how
  +merging works, by showing various merging technique.
  +
  +
  +
  +  package MyApache::CustomDirectives;
  +  
  +  use strict;
  +  use warnings FATAL => 'all', NONFATAL => 'redefine';
  +  
  +  use Apache::CmdParms ();
  +  use Apache::Module ();
  +  use Apache::ServerUtil ();
  +  
  +  use Apache::Const -compile => qw(OK);
  +  
  +  our @APACHE_MODULE_COMMANDS = (
  +  { name => 'MyPlus' },
  +  { name => 'MyList' },
  +  { name => 'MyAppend' },
  +  { name => 'MyOverride' },
  +  );
  +  
  +  sub MyPlus { set_val('MyPlus', @_) }
  +  sub MyAppend   { set_val('MyAppend',   @_) }
  +  sub MyOverride { set_val('MyOverride', @_) }
  +  sub MyList { push_val('MyList',@_) }
  +  
  +  sub DIR_MERGE{ merge(@_) }
  +  sub SERVER_MERGE { merge(@_) }
  +  
  +  sub set_val {
  +  my($key, $self, $parms, $arg) = @_;
  +  $self->{$key} = $arg;
  +  unless ($parms->path) {
  +  my $srv_cfg = Apache::Module->get_config($self, $parms->server);
  +  $srv_cfg->{$key} = $arg;
  +  }
  +  }
  +  
  +  sub push_val {
  +  my($key, $self, $parms, $arg) = @_;
  +  push @{ $self->{$key} }, $arg;
  +  unless ($parms->path) {
  +  my $srv_cfg = Apache::Module->get_config($self, $parms->server);
  +  push @{ $srv_cfg->{$key} }, $arg;
  +  }
  +  }
  +  
  +  sub merge {
  +  my($base, $add) = @_;
  +  
  +  my %mrg = ();
  +  for my $key (keys %$base, %$add) {
  +  next if exists $mrg{$key};
  +  if ($key eq 'MyPlus') {
  +  $mrg{$key} = ($base->{$key}||0) + ($add->{$key}||0);
  +  }
  +  elsif ($key eq 'MyList') {
  +  push @{ $mrg{$key} },
  +  @{ $base->{$key}||[] }, @{ $add->{$key}||[] };
  +  }
  +  elsif ($key eq 'MyAppend') {
  +  $mrg{$key} = join " ", grep defined, $base->{$key}, 
$add->{$key};
  +  }
  +  else {
  +  # override mode
  +  $mrg{$key} = $base->{$key} if exists $base->{$key};
  +  $mrg{$key} = $add->{$key}  if exists $add->{$key};
  +  }
  +  }
  +  
  +  return bless \%mrg, ref($base);
  +  }
  +  
  +  
  +  1;
  +  __END__
  +
  +
  +  PerlLoadModule MyApache::CustomDirectives
  +  MyPlus 5
  +  MyList "MainServer"
  +  MyAppend   "MainServer"
  +  MyOverride "MainServer"
  +  Listen 8081
  +  
  +  MyPlus 2
  +  MyList "VHost"
  +  MyAppend   "VHost"
  +  MyOverride "VHost"
  +  
  +  MyPlus 3
  +  MyList "Dir"
  +  MyAppend   "Dir"
  +  MyOverride "Dir"
  +  SetHandler modperl
  +  PerlResponseHandler MyApache::CustomDirectivesTest
  +  
  +  
  +  MyPlus 1
  +  MyList "SubDir"
  +  MyAppend   "SubDir"
  +  MyOverride "SubDir"
  +  
  +  
  +  
  +  SetHandler modperl
  +  PerlResponseHandler MyApache::CustomDirectivesTest
  +  
  +
  +  package MyApache::CustomDirectivesTest;
  +  
  +  use strict;
  +  use warnings FATAL => 'all', NONFATAL => 'redefine';
  +  
  +  use Apache::RequestRec ();
  +  use Apache::RequestIO ();
  +  use Apache::Server ();
  +  use Apache::ServerUtil ();
  +  use Apache::Module ();
  +  
  +  use Apache::Const -compile => qw(OK);
  +  
  +  sub get_config {
  +  Apache::Module->get_config('MyApache::CustomDirectives', @_);
  +  }
  +  
  +  sub handler {
  +  my($r) = @_;
  +  my %secs = ();
  +  
  +  $r->content_type('text/plain');
  +  
  +  my $s = $r->server;
  +  my $dir_cfg = get_config($s, $r->per_dir_config);
  +  my $srv_cfg = get_config($s);
  +  
  +  if ($s->is_virtual) {
  +

cvs commit: modperl-docs/src/docs/2.0/devel/debug c.pod

2002-12-10 Thread stas
stas2002/12/09 18:49:10

  Modified:src/docs/2.0/devel/debug c.pod
  Log:
  now that we have Devel::CoreDump, should use it instead of developing a
  new package
  
  Revision  ChangesPath
  1.2   +4 -6  modperl-docs/src/docs/2.0/devel/debug/c.pod
  
  Index: c.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/debug/c.pod,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- c.pod 9 Dec 2002 16:29:57 -   1.1
  +++ c.pod 10 Dec 2002 02:49:10 -  1.2
  @@ -247,15 +247,10 @@
   =back
   
   
  -=head1 Obtaining Core Files
  +=head1 Analyzing Dumped Core Files
   
   META: need to review (unfinished)
   
  -=head2 ...
  -
  -
  -=head1 Analyzing Dumped Core Files
  -
   When your application dies with the I error (which
   generates a C signal) and optionally generates a I file
   you can use C or a similar debugger to find out what caused the
  @@ -316,6 +311,9 @@
   Now the software is ready for a proper debug.
   
   =head2 Creating a Faulty Package
  +
  +META: no longer need to create the package, use C
  +from CPAN. Need to adjust the rest of the document to use it.
   
   Next stage is to create a package that aborts abnormally with the
   I error. We will write faulty code on purpose,
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/core mpms.pod

2002-12-09 Thread stas
stas2002/12/09 08:56:45

  Modified:src/docs/2.0/devel config.cfg
  Added:   src/docs/2.0/devel/core mpms.pod
  Log:
  another start for a new doc: should eventually cover the mod_perl mpms
  specific
  
  Revision  ChangesPath
  1.16  +1 -0  modperl-docs/src/docs/2.0/devel/config.cfg
  
  Index: config.cfg
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/config.cfg,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- config.cfg9 Dec 2002 16:42:55 -   1.15
  +++ config.cfg9 Dec 2002 16:56:44 -   1.16
  @@ -12,6 +12,7 @@
   chapters => [qw(
   core/explained.pod
   core/apache_integration.pod
  +core/mpms.pod
   core/coding_style.pod
   )],
   
  
  
  
  1.1  modperl-docs/src/docs/2.0/devel/core/mpms.pod
  
  Index: mpms.pod
  ===
  =head1 NAME
  
  MPMs - Multi-Processing Model Modules
  
  =head1 Description
  
  Discover what are the available MPMs and how they work with mod_perl.
  
  META: This doc is under construction. Owners are wanted.
  
  =head1 MPMs Overview
  
  =head1 The Worker MPM
  
  META: incomplete
  
  You can test whether running under threaded env via: C
  
#ifdef USE_ITHREADS
/* whatever */
#endif
  
  When the server is running under the threaded mpm
  Cthreaded_mpm> is set to true.
  
  Caveats:
  
  All per-server data is shared between threads, regardless of locking,
  changing the value of something like ap_document_root changes it for
  all threads.  Not just the current process/request, the way it was in
  1.3.  So we can't really support modification of things like
  ap_document_root at request time, unless the mpm is prefork.  we could
  support modification of modperl per-server data by using
  r-Erequest_config in the same way push_handlers et al is
  implemented.  But it is not possible to use this approach for anything
  outside of modperl (ap_document_root for example).
  
  =head1 The Prefork MPM
  
  META: incomplete
  
  =head1 Maintainers
  
  Maintainer is the person(s) you should contact with updates,
  corrections and patches.
  
  =over
  
  =item *
  
  Stas Bekman Estas (at) stason.orgE
  
  =back
  
  
  =head1 Authors
  
  =over
  
  =item *
  
  Stas Bekman Estas (at) stason.orgE
  
  =back
  
  Only the major authors are listed above. For contributors see the
  Changes file.
  
  =cut
  
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/help help.pod

2002-12-09 Thread stas
stas2002/12/09 08:47:41

  Modified:src/docs/2.0/user/handlers filters.pod
   src/docs/2.0/user/help help.pod
  Log:
  fix link
  
  Revision  ChangesPath
  1.10  +2 -0  modperl-docs/src/docs/2.0/user/handlers/filters.pod
  
  Index: filters.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/handlers/filters.pod,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- filters.pod   24 Nov 2002 12:11:21 -  1.9
  +++ filters.pod   9 Dec 2002 16:47:41 -   1.10
  @@ -1079,6 +1079,8 @@
   
   ]
   
  +
  +
   =head1 Maintainers
   
   Maintainer is the person(s) you should contact with updates,
  
  
  
  1.16  +2 -2  modperl-docs/src/docs/2.0/user/help/help.pod
  
  Index: help.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/help/help.pod,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- help.pod  2 Dec 2002 13:16:56 -   1.15
  +++ help.pod  9 Dec 2002 16:47:41 -   1.16
  @@ -84,8 +84,8 @@
   
   If during C or the use of mod_perl you get a segmentation
   fault you should send to the list a stack backtrace. This
  -L
  -explains how to extract this backtrace.
  +L explains how to
  +extract this backtrace.
   
   Of course to generate a useful backtrace you need to have mod_perl
   with debugging symbols in it (and probably perl and/or httpd too).
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user config.cfg

2002-12-09 Thread stas
stas2002/12/09 08:47:07

  Modified:src/docs/2.0/user config.cfg
  Added:   src/docs/2.0/user/config custom.pod
  Log:
  a new doc: Apache Server Configuration Customization in Perl
  
  Revision  ChangesPath
  1.1  modperl-docs/src/docs/2.0/user/config/custom.pod
  
  Index: custom.pod
  ===
  =head1 NAME
  
  Apache Server Configuration Customization in Perl
  
  =head1 Description
  
  This chapter explains how to create custom Apache configuration
  directives in Perl.
  
  WARNING: This doc is under construction
  
  =head1 Incentives
  
  mod_perl provides several ways to pass custom configuration
  information to the modules.
  
  The simplest way to pass custom information from the configuration
  file to the Perl module is to use the
  C> and
  C>
  directives. For example:
  
PerlSetVar Secret "Matrix is us"
  
  and in the mod_perl code this value can be retrieved as:
  
my $secret = $r->dir_config("Secret");
  
  Another alternative is to add custom configuration directives. There
  are several reasons for choosing this approach:
  
  =over
  
  =item *
  
  When the expected value is not a simple argument, but must be supplied
  using a certain syntax, Apache can verify at startup time that this
  syntax is valid and abort the server start up if the syntax is
  invalid.
  
  =item *
  
  Custom configuration directives are faster because their values are
  parsed at the startup time, whereas C and C
  values are parsed at the request time.
  
  =item *
  
  It's possible that some other modules have accidentally chosen to use
  the same key names but for absolutely different needs. So the two now
  can't be used together. Of course this collision can be avoided if a
  unique to your module prefix is used in the key names. For example:
  
  PerlSetVar ApacheFooSecret "Matrix is us"
  
  =back
  
  Finally, modules can be configured in pure Perl using
  CPerlE
  Sections|docs::2.0::user::config::config/C_E_lt_PerlE_gt___Sections>>
  or L, by simply modifying 
  the global variables in the module's package. This approach could be
  undesirable because it requires a use of globals, which we all try to
  reduce. A bigger problem with this approach is that you can't have
  different settings for different sections of the site (since there is
  only one version of a global variable), something that the previous
  two approaches easily achieve.
  
  =head1 Creating and Using Custom Configuration Directives
  
  In mod_perl 2.0, adding new configuration directives is a piece of
  cake, because it requires no XS code and I, needed in
  case of mod_perl 1.0. In mod_perl 2.0, custom directives are
  implemented in pure Perl.
  
  Here is a very basic module that declares two new configuration
  directives: C, which accepts one or more arguments, and
  C which accepts a single argument.
  
#file:MyApache/MyParameters.pm
#-
package MyApache::MyParameters;

use strict;
use warnings FATAL => 'all';

use Apache::Test;
use Apache::TestUtil;

use Apache::Const -compile => qw(OR_ALL ITERATE);

use Apache::CmdParms ();
use Apache::Module ();

our @APACHE_MODULE_COMMANDS = (
{
 name => 'MyParameter',
 func => __PACKAGE__ . '::MyParameter',
 req_override => Apache::OR_ALL,
 args_how => Apache::ITERATE,
 errmsg   => 'MyParameter Entry1 [Entry2 ... [EntryN]]',
},
{
 name => 'MyOtherParameter',
},
);

sub MyParameter {
my($self, $parms, @args) = @_;
$self->{MyParameter} = [EMAIL PROTECTED];
}
1;
  
  And here is how to use it in I:
  
# first load the module so Apache will recognize the new directives
PerlLoadModule MyApache::MyParameters

MyParameter one two three
MyOtherParameter Foo

  MyParameter eleven twenty
  MyOtherParameter Bar

  
  The following sections discuss this and more advanced modules in
  detail.
  
  A minimal configuration module is comprised of two groups of elements:
  
  =over
  
  =item * A global array C<@APACHE_MODULE_COMMANDS> for declaring the
  new directives and their behavior.
  
  =item * A subroutine per each new directive, which is called when the
  directive is seen
  
  =back
  
  
  
  =head2 C<@APACHE_MODULE_COMMANDS>
  
  C<@APACHE_MODULE_COMMANDS> is a global array of hash references. Each
  hash represents a separate new configuration directive. In our example
  we had:
  
our @APACHE_MODULE_COMMANDS = (
{
 name => 'MyParameter',
 func => __PACKAGE__ . '::MyParameter',

cvs commit: modperl-docs/src/docs/2.0/devel Changes.pod config.cfg

2002-12-09 Thread stas
stas2002/12/09 08:42:55

  Modified:src/docs/2.0/devel Changes.pod config.cfg
  Log:
  time to start a performance group
  
  Revision  ChangesPath
  1.4   +6 -0  modperl-docs/src/docs/2.0/devel/Changes.pod
  
  Index: Changes.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/Changes.pod,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- Changes.pod   9 Dec 2002 16:29:57 -   1.3
  +++ Changes.pod   9 Dec 2002 16:42:55 -   1.4
  @@ -11,6 +11,12 @@
   
   =head1 ???
   
  +* Started the following docs:
  +
  +  o mod_perl internals: Apache 2.0 Integration
  +
  +  o Which Coding Technique is Faster
  +
   * Reshuffled the dir/file structure to make more sense, as new docs
 are getting added.
   
  
  
  
  1.15  +6 -2  modperl-docs/src/docs/2.0/devel/config.cfg
  
  Index: config.cfg
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/config.cfg,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- config.cfg9 Dec 2002 16:39:33 -   1.14
  +++ config.cfg9 Dec 2002 16:42:55 -   1.15
  @@ -13,13 +13,17 @@
   core/explained.pod
   core/apache_integration.pod
   core/coding_style.pod
  -performance/size_matters.pod
  -performance/speed_matters.pod
   )],
   
   group=> '3rd party modules Development with mod_perl 2.0',
   chapters => [qw(
   porting/porting.pod
  +)],
  +
  +group=> 'Core Performance Issues',
  +chapters => [qw(
  +performance/size_matters.pod
  +performance/speed_matters.pod
   )],
   
   group=> 'Debugging',
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/performance speed_matters.pod

2002-12-09 Thread stas
stas2002/12/09 08:39:34

  Modified:src/docs/2.0/devel config.cfg
   src/docs/2.0/devel/core apache_integration.pod
  Added:   src/docs/2.0/devel/performance speed_matters.pod
  Log:
  Throw in a beginning of: Which Coding Technique is Faster
  Owners are wanted!
  
  Revision  ChangesPath
  1.14  +1 -0  modperl-docs/src/docs/2.0/devel/config.cfg
  
  Index: config.cfg
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/config.cfg,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- config.cfg9 Dec 2002 16:31:12 -   1.13
  +++ config.cfg9 Dec 2002 16:39:33 -   1.14
  @@ -14,6 +14,7 @@
   core/apache_integration.pod
   core/coding_style.pod
   performance/size_matters.pod
  +performance/speed_matters.pod
   )],
   
   group=> '3rd party modules Development with mod_perl 2.0',
  
  
  
  1.2   +1 -1  
modperl-docs/src/docs/2.0/devel/core/apache_integration.pod
  
  Index: apache_integration.pod
  ===
  RCS file: 
/home/cvs/modperl-docs/src/docs/2.0/devel/core/apache_integration.pod,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- apache_integration.pod9 Dec 2002 16:29:57 -   1.1
  +++ apache_integration.pod9 Dec 2002 16:39:34 -   1.2
  @@ -1,6 +1,6 @@
   =head1 NAME
   
  -mod_perl internals: Apache 2.0 integration
  +mod_perl internals: Apache 2.0 Integration
   
   =head1 Description
   
  
  
  
  1.1  
modperl-docs/src/docs/2.0/devel/performance/speed_matters.pod
  
  Index: speed_matters.pod
  ===
  =head1 NAME
  
  Which Coding Technique is Faster
  
  =head1 Description
  
  This document tries to show more efficient coding styles by
  benchmarking various styles.
  
  WARNING: This doc is under construction
  
  META: for now these are just unprocessed snippets from the mailing
  list. Please help me to make these into useful essays.
  
  =head1 backticks vs XS
  
  META: unprocessed yet.
  
  compare the difference of calling an
  xsub that does _nothing_ vs. a backticked program that does _nothing_.
  
/* file:test.c */
int main(int argc, char **argv, char **env)
{
return 1;
}
  
/* file:TickTest.xs */
#include "EXTERN.h"
#include "perl.h"
#include "XSUB.h"

MODULE = TickTest   PACKAGE = TickTest  

void
foo()

CODE:
  
# file:test.pl
use blib;
use TickTest ();

use Benchmark;

timethese(100_000, {
backtick => sub { `./test` },
xs => sub { TickTest::foo() },
});
  
  Results:
  
Benchmark: timing 10 iterations of backtick, xs...
  backtick: 292 wallclock secs (18.68 usr 43.93 sys + 142.43 cusr 84.00 
csys = 289.04 CPU) @ 1597.19/s (n=10)
xs: -1 wallclock secs ( 0.25 usr +  0.00 sys =  0.25 CPU) @ 
40.00/s (n=10)
(warning: too few iterations for a reliable count)
  
  
  =head1 sv_catpvn vs. fprintf
  
  META: unprocessed yet.
  
  and what i'm trying to say is that if both the xs code and external
  program are doing the same thing, xs will be heaps faster than backticking
  a program.  your xsub and external program are not doing the same thing.
  
  i'm guessing part of the difference in your code is due to fprintf having
  a pre-allocated buffer, whereas the SV's SvPVX has not been pre-allocated
  and gets realloc-ed each time you call sv_catpv.  have a look at the code
  below, fprintf is faster than sv_catpvn, but if the SvPVX is preallocated,
  sv_catpvn becomes faster than fprintf:
  
timethese(1_000, {
fprintf   => sub { TickTest::fprintf() },
svcat => sub { TickTest::svcat() },
svcat_pre => sub { TickTest::svcat_pre() },
});

Benchmark: timing 1000 iterations of fprintf, svcat, svcat_pre...
   fprintf:  9 wallclock secs ( 8.72 usr +  0.00 sys =  8.72 CPU) @ 
114.68/s (n=1000)
 svcat: 13 wallclock secs (12.82 usr +  0.00 sys = 12.82 CPU) @ 78.00/s 
(n=1000)
 svcat_pre:  2 wallclock secs ( 2.75 usr +  0.00 sys =  2.75 CPU) @ 
363.64/s (n=1000)

#include "EXTERN.h"
#include "perl.h"
#include "XSUB.h"

static FILE *devnull;

MODULE = TickTest   PACKAGE = TickTest  

BOOT:
devnull = fopen("/dev/null", "w");

void
fprintf()

CODE:
{
int i;
    char buffer[8292];

for (i=0; istas (at) stason.orgE
  
  =head1 Authors
  
  =over
  
  =item *
  
  Stas Bekman Estas (at) stason.org

cvs commit: modperl-docs/src/docs/2.0/devel config.cfg

2002-12-09 Thread stas
stas2002/12/09 08:31:12

  Modified:src/docs/2.0/devel config.cfg
  Log:
  a new doc: mod_perl internals: Apache 2.0 Integration (by mistake
  committed earlier)
  
  Revision  ChangesPath
  1.13  +1 -0  modperl-docs/src/docs/2.0/devel/config.cfg
  
  Index: config.cfg
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/config.cfg,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- config.cfg9 Dec 2002 16:29:57 -   1.12
  +++ config.cfg9 Dec 2002 16:31:12 -   1.13
  @@ -11,6 +11,7 @@
   group=> 'mod_perl 2.0 Core Development',
   chapters => [qw(
   core/explained.pod
  +core/apache_integration.pod
   core/coding_style.pod
   performance/size_matters.pod
   )],
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/performance size_matters.pod

2002-12-09 Thread stas
stas2002/12/09 08:29:58

  Modified:src/docs/2.0/devel Changes.pod config.cfg
  Added:   src/docs/2.0/devel/core apache_integration.pod
coding_style.pod explained.pod
   src/docs/2.0/devel/debug c.pod perl.pod
   src/docs/2.0/devel/debug/code .debug-modperl-init
.debug-modperl-register .debug-modperl-xs
   src/docs/2.0/devel/performance size_matters.pod
  Removed: src/docs/2.0/devel/core_explained core_explained.pod
   src/docs/2.0/devel/debug_c debug_c.pod
   src/docs/2.0/devel/debug_c/code .debug-modperl-init
.debug-modperl-register .debug-modperl-xs
   src/docs/2.0/devel/debug_perl debug_perl.pod
   src/docs/2.0/devel/modperl_style modperl_style.pod
   src/docs/2.0/devel/perf_sizeof perf_sizeof.pod
  Log:
  as the number of documents here grows, we need a better grouping. so this
  commit just changes some dir/file names, no content change.
  
  Revision  ChangesPath
  1.3   +5 -0  modperl-docs/src/docs/2.0/devel/Changes.pod
  
  Index: Changes.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/Changes.pod,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Changes.pod   31 Jul 2002 14:16:48 -  1.2
  +++ Changes.pod   9 Dec 2002 16:29:57 -   1.3
  @@ -9,6 +9,11 @@
   
   The most recent changes are listed first.
   
  +=head1 ???
  +
  +* Reshuffled the dir/file structure to make more sense, as new docs
  +  are getting added.
  +
   =head1 Wed Mar 20 21:20:20 SGT 2002
   
   * docs::general::testing::testing:
  
  
  
  1.12  +11 -6 modperl-docs/src/docs/2.0/devel/config.cfg
  
  Index: config.cfg
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/config.cfg,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- config.cfg13 Aug 2002 11:46:21 -  1.11
  +++ config.cfg9 Dec 2002 16:29:57 -   1.12
  @@ -10,16 +10,21 @@
   
   group=> 'mod_perl 2.0 Core Development',
   chapters => [qw(
  -core_explained/core_explained.pod
  -modperl_style/modperl_style.pod
  -perf_sizeof/perf_sizeof.pod
  +core/explained.pod
  +core/coding_style.pod
  +performance/size_matters.pod
   )],
   
   group=> '3rd party modules Development with mod_perl 2.0',
   chapters => [qw(
   porting/porting.pod
  -debug_perl/debug_perl.pod
  -debug_c/debug_c.pod
  +)],
  +
  +group=> 'Debugging',
  +chapters => [qw(
  +porting/porting.pod
  +debug/perl.pod
  +debug/c.pod
   )],
   
   group=> 'Help',
  @@ -30,7 +35,7 @@
   changes => 'Changes.pod',
   
   copy_glob => [qw(
  -debug_c/code
  +debug/code
   )],
   
   
  
  
  
  1.1  
modperl-docs/src/docs/2.0/devel/core/apache_integration.pod
  
  Index: apache_integration.pod
  ===
  =head1 NAME
  
  mod_perl internals: Apache 2.0 integration
  
  =head1 Description
  
  This document should help to understand the initialization, request
  processing and shutdown process of the mod_perl module. This knowledge
  is essential for a less-painful debugging experience. It should also
  help to know where a new code should be added when a new feature is
  added.
  
  Make sure to read also: L.
  
  =head1 Startup
  
  Apache starts itself and immediately restart itself. The following
  sections discuss what happens to mod_perl during this period.
  
  =head2 The Link Between mod_perl and httpd
  
  I defines a special structure:
  
module AP_MODULE_DECLARE_DATA perl_module = {
STANDARD20_MODULE_STUFF, 
modperl_config_dir_create, /* dir config creater */
modperl_config_dir_merge,  /* dir merger --- default is to override */
modperl_config_srv_create, /* server config */
modperl_config_srv_merge,  /* merge server config */
modperl_cmds,  /* table of config file commands   */
modperl_register_hooks,/* register hooks */
};
  
  Apache uses this structure to hook mod_perl in, and it specifies six
  custom callbacks which Apache will call at various stages that will be
  explained later.
  
  C is a standard macro defined in
  I. Currently its main use if for
  attaching Apache version magic numbers, so the previously compiled
  module won't be attempted to be used with newer Apache versions, whose
  API may have changed.
  
  C is a struct, that defines the mod_perl configuration
  directives and the callbacks to

cvs commit: modperl-docs/src/docs/2.0/devel/debug/code - New directory

2002-12-09 Thread stas
stas2002/12/09 08:28:28

  modperl-docs/src/docs/2.0/devel/debug/code - New directory

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/debug - New directory

2002-12-09 Thread stas
stas2002/12/09 08:28:23

  modperl-docs/src/docs/2.0/devel/debug - New directory

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/performance - New directory

2002-12-09 Thread stas
stas2002/12/09 08:28:14

  modperl-docs/src/docs/2.0/devel/performance - New directory

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/core - New directory

2002-12-09 Thread stas
stas2002/12/09 08:28:05

  modperl-docs/src/docs/2.0/devel/core - New directory

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/offsite articles.pod

2002-12-09 Thread stas
stas2002/12/09 08:12:18

  Modified:src/docs/offsite articles.pod
  Log:
  David E. Wheeler perl.com articles
  
  Revision  ChangesPath
  1.13  +3 -0  modperl-docs/src/docs/offsite/articles.pod
  
  Index: articles.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/offsite/articles.pod,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- articles.pod  9 Dec 2002 05:32:25 -   1.12
  +++ articles.pod  9 Dec 2002 16:12:18 -   1.13
  @@ -101,9 +101,12 @@
   =item *
   
   mod_perl articles at Perl.com
  +
   http://www.perl.com/pub/q/Article_Archive#mod_perl (better use search
   and you will find other mod_perl articles which weren't catalogued
   under mod_perl category)
  +
  +Articles by David E. Wheeler: http://www.oreillynet.com/pub/au/1059
   
   =item *
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/debug_c/code .debug-modperl-register

2002-12-09 Thread stas
stas2002/12/08 23:22:41

  Modified:src/docs/2.0/devel/debug_c/code .debug-modperl-register
  Log:
  correct the explanation
  
  Revision  ChangesPath
  1.2   +4 -3  
modperl-docs/src/docs/2.0/devel/debug_c/code/.debug-modperl-register
  
  Index: .debug-modperl-register
  ===
  RCS file: 
/home/cvs/modperl-docs/src/docs/2.0/devel/debug_c/code/.debug-modperl-register,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- .debug-modperl-register   9 Dec 2002 06:47:37 -   1.1
  +++ .debug-modperl-register   9 Dec 2002 07:22:41 -   1.2
  @@ -54,9 +54,10 @@
   # then continue.
   
   # Assuming that 'LoadModule perl_module' is the first LoadModule
  -# directive in httpd.conf, you need just one 'finish'. If it's not the
  -# first you need as many 'finish' commands as the number of
  -# 'LoadModule foo' before perl_module, plus one.
  +# directive in httpd.conf, you need just one 'continue' after
  +# 'ap_add_module'. If it's not the first one, you need to add as many
  +# 'continue' commands as the number of 'LoadModule foo' before
  +# perl_module, but before setting the 'ap_add_module' bp.
   #
   # If mod_perl is compiled statically, everything is already preloaded,
   # so you can set modperl_* the breakpoints right away
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/devel/debug_c/code .debug-modperl-register

2002-12-09 Thread stas
stas2002/12/08 22:47:37

  Modified:src/docs/2.0/devel/debug_c debug_c.pod
  Added:   src/docs/2.0/devel/debug_c/code .debug-modperl-register
  Log:
  add another startup script which allows to break at the very early
  entrance to mod_perl
  
  Revision  ChangesPath
  1.11  +13 -2 modperl-docs/src/docs/2.0/devel/debug_c/debug_c.pod
  
  Index: debug_c.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/devel/debug_c/debug_c.pod,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- debug_c.pod   21 Jun 2002 17:26:20 -  1.10
  +++ debug_c.pod   9 Dec 2002 06:47:37 -   1.11
  @@ -216,13 +216,24 @@
   =item * Debugging mod_perl Initialization
   
   The F startup script breaks at the
  -modperl_hook_init() function, which is useful for debugging code at
  +C function, which is useful for debugging code at
   the modperl's initialization phase.
   
  +=item * Debugging mod_perl's Hooks Registeration With httpd
  +
  +Similar to the previous startup script, the
  +F startup script breaks at the
  +C, which is the very first hook called in
  +the mod_perl land. Therefore use this one if you need to start
  +debugging at an even earlier entry point into mod_perl.
  +
  +Refer to the notes inside the script to adjust it for a specific
  +I file.
  +
   =item * Debugging mod_perl XS Extensions
   
   The F startup script breaks at the
  -mpxs_Apache__Filter_print() function implemented in
  +C function implemented in
   I. This is an example of debugging
   code in XS Extensions. For this particular example the complete test
   case is:
  
  
  
  1.1  
modperl-docs/src/docs/2.0/devel/debug_c/code/.debug-modperl-register
  
  Index: .debug-modperl-register
  ===
  # This gdb startup script allows to break at the very first invocation
  # of mod_perl initialization, just after it was loaded. When the
  # perl_module is loaded, and its pointer struct is added via
  # ap_add_module(), the first hook that will be called is
  # modperl_register_hooks().
  #
  # Invoke as:
  # gdb -command=.debug-modperl-register
  #
  # see ADJUST notes for things that may need to be adjusted
  
  define sharedap
  sharedlibrary apr
  sharedlibrary aprutil
  #sharedlibrary mod_ssl.so
  end
  
  define sharedperl
  sharedlibrary libperl
  end
  
  ### Run ###
  
  # ADJUST: the path to the httpd executable if needed
  file ~/httpd/prefork/bin/httpd
  handle SIGPIPE nostop
  handle SIGPIPE pass
  set auto-solib-add 0
  
  tbreak main
  
  # assuming that mod_dso is compiled in
  b load_module 
  
  
  # ADJUST: the httpd.conf file's path if needed
  # ADJUST: add -DPERL_USEITHREADS to debug threaded mpms
  run -d `pwd`/t -f `pwd`/t/conf/httpd.conf \
  -DONE_PROCESS -DNO_DETATCH -DAPACHE2
  
  # skip over 'tbreak main'
  continue
  
  # In order to set the breakpoint in mod_perl.so, we need to get to
  # the point where it's loaded.
  #
  # With static mod_perl, the bp can be set right away
  #
  
  # With DSO mod_perl, mod_dso's load_module() loads the mod_perl.so
  # object and it immediately calls ap_add_module(), which calls
  # modperl_register_hooks(). So if we want to bp at the latter, we need
  # to stop at load_module(), set the 'bp modperl_register_hooks' and
  # then continue.
  
  # Assuming that 'LoadModule perl_module' is the first LoadModule
  # directive in httpd.conf, you need just one 'finish'. If it's not the
  # first you need as many 'finish' commands as the number of
  # 'LoadModule foo' before perl_module, plus one.
  #
  # If mod_perl is compiled statically, everything is already preloaded,
  # so you can set modperl_* the breakpoints right away
  
  b ap_add_module
  continue
  
  sharedlibrary modperl
  b modperl_register_hooks
  continue
  
  #b modperl_hook_init
  #b modperl_config_srv_create
  #b modperl_startup
  #b modperl_init_vhost
  #b modperl_dir_config
  #b modperl_cmd_load_module
  #modperl_config_apply_PerlModule
  
  # ADJUST: uncomment if you need to step through the code in apr libs
  #sharedap
  
  # ADJUST: uncomment if you need to step through the code in perlib
  #sharedperl
  
  
  
  
  
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/offsite articles.pod

2002-12-09 Thread stas
stas2002/12/08 21:32:25

  Modified:src/docs/offsite articles.pod
  Log:
  correct the family name spelling
  
  Revision  ChangesPath
  1.12  +1 -1  modperl-docs/src/docs/offsite/articles.pod
  
  Index: articles.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/offsite/articles.pod,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- articles.pod  3 Dec 2002 14:24:08 -   1.11
  +++ articles.pod  9 Dec 2002 05:32:25 -   1.12
  @@ -192,7 +192,7 @@
   =item * 
   
   Several of Stas' mod_perl articles translated to Russian by Inga
  -Zaharova: http://www.providerz.ru/articles/perl/why_mod_perl.html
  +Zakharova: http://www.providerz.ru/articles/perl/why_mod_perl.html
   http://www.providerz.ru/articles/perl/mod_perl_in_30_minutes_1.html
   
   =item *
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/download docs.pod

2002-12-06 Thread stas
stas2002/12/06 09:01:51

  Modified:src/download docs.pod
  Log:
  no need for multiviews, was c-n-p
  
  Revision  ChangesPath
  1.10  +0 -1  modperl-docs/src/download/docs.pod
  
  Index: docs.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/download/docs.pod,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- docs.pod  4 Dec 2002 05:11:01 -   1.9
  +++ docs.pod  6 Dec 2002 17:01:51 -   1.10
  @@ -155,7 +155,6 @@
   
 Alias /modperl/ "/usr/local/modperl-docs/dst_html/"
 
  -  Options Indexes MultiViews
 AllowOverride None
 Order allow,deny
 Allow from all
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/compat compat.pod

2002-12-06 Thread stas
stas2002/12/06 08:24:32

  Modified:src/docs/2.0/user/compat compat.pod
  Log:
  fix markup
  
  Revision  ChangesPath
  1.36  +5 -2  modperl-docs/src/docs/2.0/user/compat/compat.pod
  
  Index: compat.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/compat/compat.pod,v
  retrieving revision 1.35
  retrieving revision 1.36
  diff -u -r1.35 -r1.36
  --- compat.pod6 Dec 2002 13:10:12 -   1.35
  +++ compat.pod6 Dec 2002 16:24:32 -   1.36
  @@ -334,15 +334,18 @@
   
   =head1 C Methods and Variables
   
  -=head C<$Apache::Server::CWD>
  +=head2 C<$Apache::Server::CWD>
   
   C<$Apache::Server::CWD> is deprecated and exists only in
   C.
   
  -=head1 C<$Apache::Server::AddPerlVersion>
  +=head2 C<$Apache::Server::AddPerlVersion>
   
   C<$Apache::Server::AddPerlVersion> is deprecated and exists only in
   C.
  +
  +
  +
   
   =head1 Server Object Methods
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/compat compat.pod

2002-12-06 Thread stas
stas2002/12/06 05:10:12

  Modified:src/docs/2.0/user/compat compat.pod
  Log:
  document $Apache::Server::AddPerlVersion
  
  Revision  ChangesPath
  1.35  +3 -1  modperl-docs/src/docs/2.0/user/compat/compat.pod
  
  Index: compat.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/compat/compat.pod,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- compat.pod6 Dec 2002 12:42:29 -   1.34
  +++ compat.pod6 Dec 2002 13:10:12 -   1.35
  @@ -339,8 +339,10 @@
   C<$Apache::Server::CWD> is deprecated and exists only in
   C.
   
  +=head1 C<$Apache::Server::AddPerlVersion>
   
  -
  +C<$Apache::Server::AddPerlVersion> is deprecated and exists only in
  +C.
   
   =head1 Server Object Methods
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/compat compat.pod

2002-12-06 Thread stas
stas2002/12/06 04:42:30

  Modified:src/docs/2.0/user/compat compat.pod
  Log:
  document $Apache::Server::CWD
  
  Revision  ChangesPath
  1.34  +7 -1  modperl-docs/src/docs/2.0/user/compat/compat.pod
  
  Index: compat.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/compat/compat.pod,v
  retrieving revision 1.33
  retrieving revision 1.34
  diff -u -r1.33 -r1.34
  --- compat.pod5 Dec 2002 10:18:32 -   1.33
  +++ compat.pod6 Dec 2002 12:42:29 -   1.34
  @@ -332,6 +332,13 @@
   C> manpage.
   
   
  +=head1 C Methods and Variables
  +
  +=head C<$Apache::Server::CWD>
  +
  +C<$Apache::Server::CWD> is deprecated and exists only in
  +C.
  +
   
   
   
  @@ -350,7 +357,6 @@
   passed as the first argument to the callback function.
   
   See the C> manpage.
  -
   
   
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/config config.pod

2002-12-06 Thread stas
stas2002/12/05 23:45:36

  Modified:src/docs/2.0/user/config config.pod
  Log:
  document the default interpreter pool's settings
  
  Revision  ChangesPath
  1.30  +18 -2 modperl-docs/src/docs/2.0/user/config/config.pod
  
  Index: config.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/config/config.pod,v
  retrieving revision 1.29
  retrieving revision 1.30
  diff -u -r1.29 -r1.30
  --- config.pod4 Dec 2002 02:59:21 -   1.29
  +++ config.pod6 Dec 2002 07:45:36 -   1.30
  @@ -700,6 +700,8 @@
   
   The number of interpreters to clone at startup time.
   
  +Default value: 3
  +
   =head2 C
   
   If all running interpreters are in use, mod_perl will clone new
  @@ -708,22 +710,33 @@
   will block (via COND_WAIT()) until one becomes available (signaled via
   COND_SIGNAL()).
   
  +Default value: 5
  +
   =head2 C
   
   The minimum number of available interpreters this parameter will clone
   interpreters up to C, before a request comes in.
   
  +Default value: 3
  +
  +
   =head2 C
   
   mod_perl will throttle down the number of interpreters to this number
   as those in use become available.
   
  +Default value: 3
  +
  +
   =head2 C
   
   The maximum number of requests an interpreter should serve, the
   interpreter is destroyed when the number is reached and replaced with
   a fresh clone.
   
  +Default value: 2000
  +
  +
   =head2 C
   
   As mentioned, when a request in a threaded mpm is handled by mod_perl,
  @@ -769,6 +782,9 @@
   
 PerlInterpScope connection
   
  +Default value: C
  +
  +
   
   =head1 Debug Directives
   
  @@ -800,8 +816,8 @@
 s ( 64) perl sections
 t (128) benchmark-ish timings
   
  -When C is not specified, the tracing level will be set to the
  -value of the C<$ENV{MOD_PERL_TRACE}> environment variable.
  +When C is not specified, the tracing level will be set to
  +the value of the C<$ENV{MOD_PERL_TRACE}> environment variable.
   
   
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/compat compat.pod

2002-12-05 Thread stas
stas2002/12/05 02:18:32

  Modified:src/docs/2.0/user/compat compat.pod
  Log:
  use well defined L<> to the 2.0 packages, to avoid collision with 1.0
  packages of the same name, even though the 2.0 location is searched first
  
  Revision  ChangesPath
  1.33  +42 -20modperl-docs/src/docs/2.0/user/compat/compat.pod
  
  Index: compat.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/compat/compat.pod,v
  retrieving revision 1.32
  retrieving revision 1.33
  diff -u -r1.32 -r1.33
  --- compat.pod4 Dec 2002 02:41:53 -   1.32
  +++ compat.pod5 Dec 2002 10:18:32 -   1.33
  @@ -82,6 +82,15 @@
 PerlFreshRestart
 
   
  +=head2 Apache Configuration Customization
  +
  +mod_perl 2.0 has slightly changed the mechanism for L and now also makes it easy to 
  +access an Apache parsed configuration tree's values.
  +
  +META: add L<> to the config tree access when it'll be written.
  +
   
   
   
  @@ -183,15 +192,15 @@
   
   =over
   
  -=item C>
  +=item C>
   
   Apache constants
   
  -=item C>
  +=item C>
   
   Apache Portable Runtime constants
   
  -=item C>
  +=item C>
   
   mod_perl specific constants
   
  @@ -282,7 +291,9 @@
   C residing inside
   C.
   
  -See the C> manpage.
  +See the
  +C>
  +manpage.
   
   =head2 C
   
  @@ -290,7 +301,9 @@
   which is a function (not a method) and accepts a single optional
   argument: status, whose default is 0 (== do nothing).
   
  -See the C> manpage.
  +See the
  +C>
  +manpage.
   
   =head2 C
   
  @@ -315,7 +328,8 @@
   
 Apache->server->log_error
   
  -instead. See the C> manpage.
  +instead. See the
  +C> manpage.
   
   
   
  @@ -335,7 +349,7 @@
   where the last argument C<$data> is optional, and if supplied will be
   passed as the first argument to the callback function.
   
  -See the C> manpage.
  +See the C> manpage.
   
   
   
  @@ -352,15 +366,16 @@
   =head2 C<$r-Elookup_uri>
   
   C<$r-Elookup_file> and C<$r-Elookup_uri> didn't change their
  -functionality but moved into C>. Before using
  -them, add:
  +functionality but moved into
  +C>.
  +Before using them, add:
   
 use Apache::SubRequest;
   
   =head2 C<$r-Eget_remote_host>
   
   C<$r-Eget_remote_host> has been renamed and moved into the package
  -C>:
  +C>:
   
 use Apache::Connection;
 $r->connection->get_remote_host();
  @@ -413,7 +428,7 @@
   =back
   
   Instead you should use C's C and similar
  -methods to do the parsing for you. See the C>
  +methods to do the parsing for you. See the 
C>
   manpage.
   
   XXX: ...when Apache::Request will be ported to 2.0. For now you can
  @@ -474,12 +489,12 @@
   =head2 C<$r-Elog_reason>
   
   C<$r-Elog_reason> is not available in mod_perl 2.0 API. Use the
  -other standard logging functions provided by the C>
  +other standard logging functions provided by the 
C>
   module. For example:
   
 $r->log_error("it works!");
   
  -See the C> manpage.
  +See the C> manpage.
   
   
   =head2 C<$r-Eregister_cleanup>
  @@ -584,27 +599,33 @@
   
   =head2 C
   
  -This function now belongs to the module C>.
  +This function now belongs to the module
  +C>.
   
   =head2 C
   
  -This function now belongs to the module C>.
  +This function now belongs to the module
  +C>.
   
   =head2 C
   
  -This function now belongs to the module C>.
  +This function now belongs to the module
  +C>.
   
   =head2 C
   
  -This function now belongs to the module C>.
  +This function now belongs to the module
  +C>.
   
   =head2 C
   
  -This function now belongs to the module C>.
  +This function now belongs to the module
  +C>.
   
   =head2 C
   
  -This function now belongs to the module C>.
  +This function now belongs to the module
  +C>.
   
   
   
  @@ -619,7 +640,8 @@
   
   C has been replaced with
   C, which returns formatted strings of only
  -4 characters long. See the C> manpage.
  +4 characters long. See the
  +C> manpage.
   
   =head2 C
   
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user config.cfg

2002-12-05 Thread stas
stas2002/12/05 00:56:10

  Modified:src/docs/2.0/user config.cfg
  Log:
  link the new chapter
  
  Revision  ChangesPath
  1.16  +1 -0  modperl-docs/src/docs/2.0/user/config.cfg
  
  Index: config.cfg
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/config.cfg,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- config.cfg29 Nov 2002 04:15:52 -  1.15
  +++ config.cfg5 Dec 2002 08:56:10 -   1.16
  @@ -11,6 +11,7 @@
   group=> 'Introduction',
   chapters => [qw(
   intro/start_fast.pod
  +intro/what_is_new.pod
   overview/overview.pod
   design/design.pod
   )],
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/intro what_is_new.pod

2002-12-05 Thread stas
stas2002/12/05 00:55:49

  Added:   src/docs/2.0/user/intro what_is_new.pod
  Log:
  contribute a chapter from my tutorial: "what's new under the sun", which
  supersedes mostly the overview chapter that we have
  
  Revision  ChangesPath
  1.1  modperl-docs/src/docs/2.0/user/intro/what_is_new.pod
  
  Index: what_is_new.pod
  ===
  =head1 NAME
  
  What's new under the sun?
  
  =head1 Description
  
  This chapter presents the new features of Apache 2.0, Perl 5.6.0 -
  5.8.0 and their influence on mod_perl 2.0.
  
  =head1 Why mod_perl, the Next Generation
  
  Here and in the rest of this document we refer to mod_perl 1.x series
  as mod_perl 1.0 and, 2.0.x as mod_perl 2.0 to keep things
  simple. Similarly we call Apache 1.3.x series as Apache 1.3 and 2.0.x
  as Apache 2.0
  
  Since Doug MacEachern has introduced mod_perl 1.0 in 1996, he had to
  adjust source code to the many changes Apache and Perl went through,
  while staying compatible with the older versions, leading to a very
  complex source code, with hundreds of C<#ifdefs> and workarounds for
  various incompatibilities in older Perl and Apache versions. When
  Apache 2.0 development was underway, the new threads design was
  introduced, which couldn't be supported by the existing Perl version,
  since it required thread-safe Perl interpreters.
  
  Think of it as a conspiracy or just a lucky coincidence, on March 10,
  2002, the first Apache 2.0 alpha version was released. 13 days later,
  on March 23, 2002, Perl 5.6.0 has been released. And guess what, Perl
  5.6.0 was the first Perl version to support the internal
  thread-safeness across multiple interpreters.
  
  Since Perl 5.6.0 and Apache 2.0 were the very minimum requirements
  there was no need to support older version and it was a great idea to
  start mod_perl 2.0 code base from scratch, incorporating the lessons
  learned during the 5 years of mod_perl's existence.
  
  The new version includes a mechanism for an automatic building of the
  Perl interface to Apache API, which allowed us to easily adjust
  mod_perl 2.0 to ever changing Apache 2.0 API, during its development
  period. Another important feature is the C framework,
  which was originally developed for mod_perl 2.0, but then was adopted
  by Apache 2.0 developers to test the core server features and third
  party modules. Moreover the tests written using the C
  framework could be run with Apache 1.0 and 2.0, assuming that both
  supported the same features.
  
  There are multiple other interesting changes that have already
  happened to mod_perl in version 2.0 and more will be developed in the
  future. Some of these will be covered in this document and some you
  will discover on your own while reading mod_perl documentation.
  
  =head1 What's new in Apache 2.0
  
  Apache 2.0 has introduces numerous new features and enhancements. Here
  are the most important new features:
  
  =over
  
  =item * I (APR)
  
  The APR presents a standard API for server applications, covering file
  I/O, logging, shared memory, threads, managing child processes and
  many other functionalities needed for developing the Apache core and
  third party modules in a portable and effective way. One of the
  important effects is that it significantly simplifies the code that
  uses the APR making it much easier to review and understand the Apache
  code, increasing the number of revealed bugs and contributed patches.
  
  The APR uses the concept of memory pools, which significantly
  simplifies the memory management code and reduces the possibility of
  having memory leaks, which always haunt C programmers.
  
  =item * I/O Filtering
  
  Apache 2.0 allows multiple modules to filter both the request and the
  response. Now one module can pipe its output as an input to another
  module as if another module was receiving the data directly from the
  TCP stream. The same mechanism works with the generated response.
  
  With I/O filtering in place, things like SSL, data (de-)compression
  and other manipulations are done very easily.
  
  The I/O filtering is based on the concept of bucket brigades and
  implemented in the APR.
  
  
  =item * I (MPMs).
  
  In the previous Apache generation the same code base was trying to
  handle a management of incoming requests for different platforms,
  which lead to scalability problems on certain platforms, mainly on
  those which are different from Unix. This also lead to an undesired
  complexity of the code.
  
  Apache 2.0 introduces the concept of Multi Processing Model modules,
  whose main responsibility is to map the incoming requests to either
  threads, processes or a threads/processes hybrid. Now it's possible
  to write different processing modules specific to various platforms.
  For example the Apache 2.0 on Windows is much more efficient n

cvs commit: modperl-docs/src/docs/2.0/user/handlers http.pod

2002-12-05 Thread stas
stas2002/12/04 23:40:51

  Modified:src/docs/2.0/user/handlers http.pod
  Log:
  a minor clarification
  
  Revision  ChangesPath
  1.9   +11 -9 modperl-docs/src/docs/2.0/user/handlers/http.pod
  
  Index: http.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/handlers/http.pod,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- http.pod  5 Dec 2002 07:38:42 -   1.8
  +++ http.pod  5 Dec 2002 07:40:51 -   1.9
  @@ -562,9 +562,10 @@
 
   
   It's important to notice that C can be configured
  -for any subsection of the site, no matter whether it's served by
  -mod_perl or not. For example to run the handler from our example for
  -all requests to the server simply add to I:
  +for any subsection of the site, no matter whether it's served by a
  +mod_perl response handler or not. For example to run the handler from
  +our example for all requests to the server simply add to
  +I:
   
 
 PerlAccessHandler MyApache::BlockByIP
  @@ -682,9 +683,9 @@
   
   Just like C and other mod_perl handlers,
   C can be configured for any subsection of the site,
  -no matter whether it's served by mod_perl or not. For example to use
  -the authentication handler from the last example for any requests to
  -the site, simply use:
  +no matter whether it's served by a mod_perl response handler or
  +not. For example to use the authentication handler from the last
  +example for any requests to the site, simply use:
   
 
 PerlAuthenHandler MyApache::SecretLengthAuth
  @@ -1157,9 +1158,10 @@
 127.0.0.1 [Sat Aug 31 01:50:39 2002] "/users/eric/test.pl" 200 8
   
   It's important to notice that C can be configured for
  -any subsection of the site, no matter whether it's served by mod_perl
  -or not. For example to run the handler from our example for all
  -requests to the server simply add to I:
  +any subsection of the site, no matter whether it's served by a
  +mod_perl response handler or not. For example to run the handler from
  +our example for all requests to the server, simply add to
  +I:
   
 
 PerlLogHandler MyApache::LogPerUser
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/docs/2.0/user/handlers http.pod

2002-12-05 Thread stas
stas2002/12/04 23:38:42

  Modified:src/docs/2.0/user/handlers http.pod
  Log:
  add notes/examples that httpd handlers can be used without mod_perl
  response handler
  
  Revision  ChangesPath
  1.8   +43 -2 modperl-docs/src/docs/2.0/user/handlers/http.pod
  
  Index: http.pod
  ===
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/handlers/http.pod,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- http.pod  4 Dec 2002 03:00:33 -   1.7
  +++ http.pod  5 Dec 2002 07:38:42 -   1.8
  @@ -561,6 +561,14 @@
 Options +ExecCGI
 
   
  +It's important to notice that C can be configured
  +for any subsection of the site, no matter whether it's served by
  +mod_perl or not. For example to run the handler from our example for
  +all requests to the server simply add to I:
  +
  +  
  +  PerlAccessHandler MyApache::BlockByIP
  +  
   
   
   =head2 PerlAuthenHandler
  @@ -672,6 +680,19 @@
 Require valid-user
 
   
  +Just like C and other mod_perl handlers,
  +C can be configured for any subsection of the site,
  +no matter whether it's served by mod_perl or not. For example to use
  +the authentication handler from the last example for any requests to
  +the site, simply use:
  +
  +  
  +  PerlAuthenHandler MyApache::SecretLengthAuth
  +  AuthType Basic
  +  AuthName "The Gate"
  +  Require valid-user
  +  
  +
   
   
   =head2 PerlAuthzHandler
  @@ -773,9 +794,16 @@
 Require valid-user
 
   
  +And if you want to run the authentication and authorization for the
  +whole site, simply add:
   
  -
  -
  +  
  +  PerlAuthenHandler MyApache::SecretLengthAuth
  +  PerlAuthzHandler  MyApache::SecretResourceAuthz
  +  AuthType Basic
  +  AuthName "The Secret Gate"
  +  Require valid-user
  +  
   
   
   
  @@ -1127,6 +1155,19 @@
   and to I:
   
 127.0.0.1 [Sat Aug 31 01:50:39 2002] "/users/eric/test.pl" 200 8
  +
  +It's important to notice that C can be configured for
  +any subsection of the site, no matter whether it's served by mod_perl
  +or not. For example to run the handler from our example for all
  +requests to the server simply add to I:
  +
  +  
  +  PerlLogHandler MyApache::LogPerUser
  +  
  +
  +Since the C phase is of type
  +C>, all other
  +logging handlers will be called as well.
   
   
   =head2 PerlCleanupHandler
  
  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



cvs commit: modperl-docs/src/outstanding/success_stories www.inteligo.pl.pod www.inteligo.pl.txt www.redhat.com.pod www.redhat.com.txt config.cfg

2002-12-05 Thread stas
stas2002/12/04 18:37:54

  Modified:src/outstanding sites.html
   src/outstanding/success_stories config.cfg
  Added:   src/outstanding/success_stories www.inteligo.pl.pod
www.inteligo.pl.txt www.redhat.com.pod
www.redhat.com.txt
  Log:
  add the stories for www.redhat.com and www.inteligo.pl
  
  Revision  ChangesPath
  1.13  +14 -0 modperl-docs/src/outstanding/sites.html
  
  Index: sites.html
  ===
  RCS file: /home/cvs/modperl-docs/src/outstanding/sites.html,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- sites.html15 Jul 2002 18:09:20 -  1.12
  +++ sites.html5 Dec 2002 02:37:54 -   1.13
  @@ -102,6 +102,20 @@
   
   
   
  +Banking: http://www.inteligo.pl";>Inteligo, the
  +Polish internet bank, recently migrated its transactional web service
  +(the application used by the bank clients to make different kinds of
  +payment orders, check account balances etc) from complicated
  +Java-based solution to the mod_perl application. The application
  +implements web frontend to the business services implemented by the
  +main bank system and accessed via the bank middleware. It is worth
  +mentioning that the application constitute the main access channel for
  +the bank clients. Read the whole story.
  +
  +
  +
  +
   Technology news: http://home.wired.com/";>WIRED
   Digital uses mod_perl (on linux and solaris) for several
   applications.  It is used widely throughout Marcin.Kasperski EatE acn.waw.plE 
exclaimed:
  
  =over
  
  =item * 
  
  Date: 04 Dec 2002 22:52:29 +0100
  
  =item * 
  
  URL: http://www.inteligo.pl
  
  =back
  
I am more than happy being now able to add the new nice
reference. Please, patch my English where necessary...

Polish internet bank named Inteligo (http://www.inteligo.pl) recently
migrated its transactional web service (the application used by the
bank clients to make different kinds of payment orders, check account
balances etc) from complicated Java-based solution to the modperl
application. The application implements web frontend to the business
services implemented by the main bank system and accessed via the bank
middleware. It is worth mentioning that the application constitute the
main access channel for the bank clients.

After a few days of productional use the application is perceived to
be much faster and lighter than the one previously used.

Two words of warning: 
- inteligo 'informational' website (the pages visible under
  www.inteligo.pl) still use PHP and probably will continue to,
- don't treat this as easy 'perl is faster than Java' claim, there was
  a lot of design and programming work behind the new application...

Being a person who suggested using this technology and worked in a
core development team I can admit that modperl fulfilled myp
erformance expectations and allowed to develop complicated application
fairly quickly.

Thanks to all the people who developed this nice piece of software and
its documentation and to everyone who answered my and my colleagues
questions during the project.

  
  
  =cut
  
  
  
  
  1.1  
modperl-docs/src/outstanding/success_stories/www.inteligo.pl.txt
  
  Index: www.inteligo.pl.txt
  ===
  From: Marcin Kasperski  acn.waw.pl>
  Organization: Ogólnopolski Strajk Przeciwko Strajkom
  Date: 04 Dec 2002 22:52:29 +0100
  Subject: modperl usage in financial institutions
  URL: http://www.inteligo.pl
  
  I am more than happy being now able to add the new nice
  reference. Please, patch my English where necessary...
  
  Polish internet bank named Inteligo (http://www.inteligo.pl) recently
  migrated its transactional web service (the application used by the
  bank clients to make different kinds of payment orders, check account
  balances etc) from complicated Java-based solution to the modperl
  application. The application implements web frontend to the business
  services implemented by the main bank system and accessed via the bank
  middleware. It is worth mentioning that the application constitute the
  main access channel for the bank clients.
  
  After a few days of productional use the application is perceived to
  be much faster and lighter than the one previously used.
  
  Two words of warning: 
  - inteligo 'informational' website (the pages visible under
www.inteligo.pl) still use PHP and probably will continue to,
  - don't treat this as easy 'perl is faster than Java' claim, there was
a lot of design and programming work behind the new application...
  
  Being a person who suggested using this techno

<    3   4   5   6   7   8   9   10   11   12   >