I'm still having plenty of session trouble. Maybe it's just related to the dev server.
I'm implementing a "remember me", but once a cookie is written (rather is returned in the request) a new cookie is never sent. Is there a way to force a cookie? No, Session::DynamicExpiry doesn't help. Also, and this is weird, when a cookie is supplied by the browser besides the Session plugins not sending a cookie, the cookie still gets setup but *after* the headers have already been sent. In Engine::HTTP I added the warn line below: if ( my $headers = delete $self->{_header_buf} ) { DEBUG && warn "write: Wrote headers and first chunk (" . length($headers . $buffer) . " bytes)\n"; $ret = $self->NEXT::write( $c, $headers . $buffer ); warn $headers, time, "\n"; sleep 2; # WARN DEBUG } Then in a test application I have: sub calculate_session_cookie_expires { my $c = shift; warn "in calculate_session_cookie_expires ", time, "\n"; sleep 1; return time + 10; } Then I see that calculate_session_cookie_expires is called after the headers have already been written: HTTP/1.0 200 OK Connection: close Date: Thu, 02 Aug 2007 19:09:53 GMT Content-Length: 15 Status: 200 1186081793 in calculate_session_cookie_expires 1186081795 Here's an entire test application: package Foo; use strict; use warnings; use Catalyst::Runtime; use Catalyst ( 'Session', 'Session::State::Cookie', 'Session::Store::FastMmap', 'Cache::FastMmap', # 'Session::DynamicExpiry', ); __PACKAGE__->config( name => 'Foo' ); __PACKAGE__->setup; sub default : Private { my ( $self, $c ) = @_; $c->res->body( 'setting session' ); $c->session->{bar} = time; # Trigger session write } sub calculate_session_cookie_expires { my $c = shift; warn "in calculate_session_cookie_expires ", time, "\n"; sleep 1; return time + 10; } 1; -- Bill Moseley [EMAIL PROTECTED] _______________________________________________ List: Catalyst@lists.rawmode.org Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst Searchable archive: http://www.mail-archive.com/catalyst@lists.rawmode.org/ Dev site: http://dev.catalyst.perl.org/