You are viewing a plain text version of this content. The canonical link for it is here.
Posted to embperl-cvs@perl.apache.org by ri...@apache.org on 2005/05/06 09:15:36 UTC

cvs commit: embperl/test/html reqrec.htm varepvar.htm

richter     2005/05/06 00:15:36

  Modified:    .        Changes.pod Embperl.pm Makefile.PL TODO
               test/cmp Execute.htm epoerrdoc2.htm reqrec.htm varepvar.htm
               test/html reqrec.htm varepvar.htm
  Log:
     - Adapted to new mod_perl namespace. Embperl now works correctly
       with mod_perl version >= 2.0rc5 (older version are still supported)
       NOTE: For file uploads to work you also need to upgrade CGI.pm
     - Fixed problem with Execute when GlobalRequestRec option is not
       set in mod_perl config.
  
  Revision  Changes    Path
  1.272     +6 -2      embperl/Changes.pod
  
  Index: Changes.pod
  ===================================================================
  RCS file: /home/cvs/embperl/Changes.pod,v
  retrieving revision 1.271
  retrieving revision 1.272
  diff -u -r1.271 -r1.272
  --- Changes.pod	22 Mar 2005 08:06:38 -0000	1.271
  +++ Changes.pod	6 May 2005 07:15:36 -0000	1.272
  @@ -1,10 +1,14 @@
   =pod
   
  -=head2 2.0rc4
  +=head4 2.0.rc4
   
  +   - Adapted to new mod_perl namespace. Embperl now works correctly
  +     with mod_perl version >= 2.0rc5 (older version are still supported)
  +     NOTE: For file uploads to work you also need to upgrade CGI.pm 
  +   - Fixed problem with Execute when GlobalRequestRec option is not
  +     set in mod_perl config.
      - use gmtime_r instead of gmtime for time calculation to be thread safe
   
  -
   =head1 2.0rc3 14. March 2005
   
      - Handle warnings the same way under Embperl and Embperl::Object, so they
  
  
  
  1.199     +68 -18    embperl/Embperl.pm
  
  Index: Embperl.pm
  ===================================================================
  RCS file: /home/cvs/embperl/Embperl.pm,v
  retrieving revision 1.198
  retrieving revision 1.199
  diff -u -r1.198 -r1.199
  --- Embperl.pm	27 Feb 2005 20:22:00 -0000	1.198
  +++ Embperl.pm	6 May 2005 07:15:36 -0000	1.199
  @@ -36,10 +36,12 @@
       $VERSION
       $cwd 
       $req_rec
  +    $srv_rec
       $importno 
       %initparam
       $modperl
       $modperl2
  +    $modperlapi
       $req
       $app
       ) ;
  @@ -47,16 +49,16 @@
   
   @ISA = qw(Exporter DynaLoader);
   
  -$VERSION = '2.0rc3' ;
  +$VERSION = '2.0rc4' ;
   
   
   if ($modperl  = $ENV{MOD_PERL})
       {
       $modperl  =~ m#/(\d+)\.(\d+)# ;
       $modperl2 = 1 if ($1 == 2 || ($1 == 1 && $2 >= 99)) ;
  +    $modperlapi = $ENV{MOD_PERL_API_VERSION} || 1 ;
       }
   
  -
   if ($ENV{PERL_DL_NONLAZY}
   	&& substr($ENV{GATEWAY_INTERFACE} || '', 0, 8) ne 'CGI-Perl'
   	&& defined &DynaLoader::boot_DynaLoader)
  @@ -67,25 +69,38 @@
   
   if ($modperl2)
       {
  -    if (($modperl =~ /_(\d+)/) && $1 < 15)
  -	{
  -        require Apache::Server ;
  -	}
  +    if ($modperlapi >= 2) 
  +        {
  +        require Apache2::ServerRec ;
  +        require Apache2::ServerUtil ;
  +        require Apache2::RequestRec ;
  +        require Apache2::RequestUtil ;
  +        require Apache2::SubRequest ;
  +        $srv_rec = Apache2::ServerUtil -> server ;
  +        }
       else
  -	{
  -        require Apache::ServerRec ;
  -	}
  -    require Apache::ServerUtil ;
  -    require Apache::RequestRec ;
  -    require Apache::RequestUtil ;
  -    require Apache::SubRequest ;
  +        {
  +        if (($modperl =~ /_(\d+)/) && $1 < 15)
  +	    {
  +            require Apache::Server ;
  +	    }
  +        else
  +	    {
  +            require Apache::ServerRec ;
  +	    }
  +        require Apache::ServerUtil ;
  +        require Apache::RequestRec ;
  +        require Apache::RequestUtil ;
  +        require Apache::SubRequest ;
  +        $srv_rec = Apache -> server ;
  +        }
       }
   
   if (!defined(&Embperl::Init))
       {
       bootstrap Embperl $VERSION  ;
       Boot ($VERSION) ;
  -    Init ($modperl?Apache -> server:undef, \%initparam) ;
  +    Init ($srv_rec, \%initparam) ;
       }
   
   
  @@ -107,8 +122,19 @@
       # when called inside a Embperl Request, Execute the component only
       return Embperl::Req::ExecuteComponent ($_ep_param, @_) if ($req) ;
   
  -    local $req_rec = Apache -> request if ($Embperl::modperl) ;
  -
  +    local $req_rec ;
  +    if ($modperl)
  +        {
  +        if ($modperlapi < 2)
  +            {
  +            $req_rec = Apache -> request  ;
  +            }
  +        else
  +            {
  +            $req_rec = Apache2::RequestUtil -> request  ;
  +            }
  +        }
  +        
       my $rc ;
       if (!ref $_ep_param)
           {
  @@ -128,6 +154,15 @@
       {
       local $SIG{__WARN__} = \&Warn ;
       $req_rec = $_[0] ;
  +    if ($modperlapi < 2)
  +        {
  +        Apache -> request ($req_rec) ;
  +        }
  +    else
  +        {
  +        Apache2::RequestUtil -> request ($req_rec) ;
  +        }
  +    
       my $rc = Embperl::Req::ExecuteRequest ($_[0]) ;
       return $rc ;
       }
  @@ -164,6 +199,11 @@
           eval 'use Apache::Constants qw(&OPT_EXECCGI &DECLINED &OK &FORBIDDEN)' ;
           die "use Apache::Constants failed: $@" if ($@); 
           }
  +    elsif ($Embperl::modperlapi >= 2)
  +        { 
  +        eval 'use Apache2::Const qw(&OPT_EXECCGI &DECLINED &OK &FORBIDDEN)' ;
  +        die "use Apache2::Const failed: $@" if ($@); 
  +        }
       else
           { 
           eval 'use Apache::Const qw(&OPT_EXECCGI &DECLINED &OK &FORBIDDEN)' ;
  @@ -215,7 +255,17 @@
       my $dbgForm = $self -> config -> debug & Embperl::Constant::dbgForm ;
   
       # just let CGI.pm read the multipart form data, see cgi docu
  -    require Apache::compat if ($Embperl::modperl2) ; # Apache::compat is need for CGI.pm
  +    if ($Embperl::modperl2)
  +        {
  +        if ($Embperl::modperlapi < 2)
  +            {
  +            require Apache::compat  # Apache::compat is needed for CGI.pm
  +            }
  +        else
  +            {
  +            require Apache2::compat  # Apache::compat is needed for CGI.pm
  +            }
  +        }
       require CGI ;
   
       my $cgi = new CGI ;
  
  
  
  1.77      +30 -10    embperl/Makefile.PL
  
  Index: Makefile.PL
  ===================================================================
  RCS file: /home/cvs/embperl/Makefile.PL,v
  retrieving revision 1.76
  retrieving revision 1.77
  diff -u -r1.76 -r1.77
  --- Makefile.PL	14 Mar 2005 13:41:45 -0000	1.76
  +++ Makefile.PL	6 May 2005 07:15:36 -0000	1.77
  @@ -552,17 +552,29 @@
           print "Found mod_perl 2.0\n" ;
           }
       else
  -        {
  -        eval 'use Apache::MyConfig' ;
  +	{
  +        eval 'use Apache2::BuildConfig' ;
   
           if ($@ eq '')
               { 
  -            $apache_src = $Apache::MyConfig::Setup{Apache_Src} ; 
  -            }
  -        else
  +	    $mp2Apache2 = 1 ;
  +            $mp2cfg = Apache2::BuildConfig -> new ;
  +            $apache_src = $mp2cfg -> {MP_AP_PREFIX} || $mp2cfg -> {ap_includedir} ;
  +            print "Found mod_perl 2.0\n" ;
  +	    }
  +	else
               {
  -            $apache_src = '' ;
  -            }
  +            eval 'use Apache::MyConfig' ;
  +
  +            if ($@ eq '')
  +                { 
  +                $apache_src = $Apache::MyConfig::Setup{Apache_Src} ; 
  +                }
  +            else
  +                {
  +                $apache_src = '' ;
  +                }
  +	    }
           }
       }
   elsif ($apache_src ne '' && -X "$apache_src/bin/httpd")
  @@ -941,8 +953,16 @@
   
       if ($mp2cfg)
           {
  -        require Apache::Build ;
  -        $dynlib->{'OTHERLDFLAGS'} = Apache::Build->new->otherldflags  ;
  +	if ($mp2Apache2)
  +	    {
  +            require Apache2::Build ;
  +            $dynlib->{'OTHERLDFLAGS'} = Apache2::Build->new->otherldflags  ;
  +	    }
  +	else
  +	    {
  +            require Apache::Build ;
  +            $dynlib->{'OTHERLDFLAGS'} = Apache::Build->new->otherldflags  ;
  +	    }
           }
       else
           {
  
  
  
  1.136     +5 -0      embperl/TODO
  
  Index: TODO
  ===================================================================
  RCS file: /home/cvs/embperl/TODO,v
  retrieving revision 1.135
  retrieving revision 1.136
  diff -u -r1.135 -r1.136
  --- TODO	12 Mar 2005 13:46:07 -0000	1.135
  +++ TODO	6 May 2005 07:15:36 -0000	1.136
  @@ -15,6 +15,11 @@
   
   - Global $r is not available. [ abe 7.3.05]
   
  +- Date Header in Embper::Mail [ Robert 1.4.05]
  +
  +- content-type in Embperl::Mail [ abe 4.4.05]
  +
  +
   TODO for Embperl 2.1 and later
   
   - make Embperl run with threads and threaded Apache 2
  
  
  
  1.9       +2 -2      embperl/test/cmp/Execute.htm
  
  Index: Execute.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/cmp/Execute.htm,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- Execute.htm	27 Feb 2005 20:22:00 -0000	1.8
  +++ Execute.htm	6 May 2005 07:15:36 -0000	1.9
  @@ -121,10 +121,10 @@
   ^\$_\[0\] = Embperl::Req=HASH\(0x 
   $_[1] = &lt;undef&gt; <br> 
   
  -^\$rec_rec  = Apache(::RequestRec)?=SCALAR\(0x
  +^\$rec_rec  = Apache2?(::RequestRec)?=SCALAR\(0x
   ^\$\$rec_rec = -?\d+<br>
   
  -^Apache->request    = Apache(::RequestRec)?=SCALAR\(0x
  +^Apache->request    = Apache2?(::RequestRec)?=SCALAR\(0x
   ^\$\{Apache->request\} = -?\d+<br>
   
   ^\${Apache->request} = \$\$req_rec \?  yes  
  
  
  
  1.3       +1 -1      embperl/test/cmp/epoerrdoc2.htm
  
  Index: epoerrdoc2.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/cmp/epoerrdoc2.htm,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- epoerrdoc2.htm	14 Mar 2005 13:41:45 -0000	1.2
  +++ epoerrdoc2.htm	6 May 2005 07:15:36 -0000	1.3
  @@ -9,7 +9,7 @@
   
   
   main: 
  -^prev: Apache(?:::RequestRec)?=SCALAR\(0x
  +^prev: Apache2?(?:::RequestRec)?=SCALAR\(0x
   next: 
   ^There are (2|4) errormessages:
   
  
  
  
  1.8       +2 -2      embperl/test/cmp/reqrec.htm
  
  Index: reqrec.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/cmp/reqrec.htm,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- reqrec.htm	15 Jan 2005 20:17:27 -0000	1.7
  +++ reqrec.htm	6 May 2005 07:15:36 -0000	1.8
  @@ -8,10 +8,10 @@
   ^\$_\[0\] = Embperl::Req=HASH\(0x.*?\) <br> 
   $_[1] =  <br> 
   
  -^\$rec_rec  = Apache(::RequestRec)?=SCALAR\(0x.*?\)<br>
  +^\$rec_rec  = Apache2?(::RequestRec)?=SCALAR\(0x.*?\)<br>
   ^\$\$rec_rec = -?\d+<br>
   
  -^Apache->request    = Apache(::RequestRec)?=SCALAR\(0x.*?\)<br>
  +^Apache->request    = Apache2?(::RequestRec)?=SCALAR\(0x.*?\)<br>
   ^\$\{Apache->request\} = -?\d+<br>
   
   ${Apache->request} = $$req_rec ?  yes <br>
  
  
  
  1.5       +2 -2      embperl/test/cmp/varepvar.htm
  
  Index: varepvar.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/cmp/varepvar.htm,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- varepvar.htm	15 Jan 2005 20:17:27 -0000	1.4
  +++ varepvar.htm	6 May 2005 07:15:36 -0000	1.5
  @@ -8,10 +8,10 @@
   ^\$_\[0\] = Embperl::Req=HASH\(0x.*?\) <br> 
   $_[1] =  <br> 
   
  -^\$rec_rec  = Apache(::RequestRec)?=SCALAR\(0x.*?\)<br>
  +^\$rec_rec  = Apache2?(::RequestRec)?=SCALAR\(0x.*?\)<br>
   ^\$\$rec_rec = -?\d+<br>
   
  -^Apache->request    = Apache(::RequestRec)?=SCALAR\(0x.*?\)<br>
  +^Apache->request    = Apache2?(::RequestRec)?=SCALAR\(0x.*?\)<br>
   ^\$\{Apache->request\} = -?\d+<br>
   
   ${Apache->request} = $$req_rec ?  yes <br>
  
  
  
  1.4       +1 -1      embperl/test/html/reqrec.htm
  
  Index: reqrec.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/html/reqrec.htm,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- reqrec.htm	5 Oct 1999 06:03:46 -0000	1.3
  +++ reqrec.htm	6 May 2005 07:15:36 -0000	1.4
  @@ -11,7 +11,7 @@
   $rec_rec  = [+ $req_rec +]<br>
   $$rec_rec = [+ $$req_rec +]<br>
   
  -[- $ar = Apache->request -]
  +[- $ar = $Embperl::modperlapi < 2?Apache->request:Apache2::RequestUtil -> request -]
   
   Apache->request    = [+ $ar +]<br>
   ${Apache->request} = [+ $$ar +]<br>
  
  
  
  1.2       +1 -1      embperl/test/html/varepvar.htm
  
  Index: varepvar.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/html/varepvar.htm,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- varepvar.htm	3 Dec 2000 13:23:17 -0000	1.1
  +++ varepvar.htm	6 May 2005 07:15:36 -0000	1.2
  @@ -13,7 +13,7 @@
   $rec_rec  = [+ $req_rec +]<br>
   $$rec_rec = [+ $$req_rec +]<br>
   
  -[- $ar = eval { Apache->request } ; $@ = '' -]
  +[- $ar = $Embperl::modperlapi >= 2?eval { Apache2::RequestUtil->request }:eval { Apache->request } ; $@ = '' -]
   
   Apache->request    = [+ $ar +]<br>
   ${Apache->request} = [+ $$ar +]<br>
  
  
  

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