Permalink
Switch branches/tags
Commits on Feb 8, 2013
  1. Checking in changes prior to tagging of version 1.0017.

    miyagawa committed Feb 8, 2013
    Changelog diff is:
    
    diff --git a/Changes b/Changes
    index 084f1fd..db54eea 100644
    --- a/Changes
    +++ b/Changes
    @@ -1,5 +1,15 @@
     Go to http://github.com/plack/Plack/issues for the roadmap and known issues.
    
    +1.0017 Thu Feb  7 19:21:24 PST 2013
    +    [INCOMPATIBLE CHANGES]
    +        - Gives you warnings when you use one of Plack::App objects in `plackup -e` or
    +          in .psgi files but forgot to call ->to_app to make it a PSGI application (#369)
    +          Still automatically converts them for backward compatibility, but in the
    +          loading time inside Plack::Builder.
    +
    +    [BUG FIXES]
    +        - chdir to the CGI path when executing CGIBin (#338, #368)
    +
     1.0016 Thu Jan 31 13:21:14 PST 2013
         [SECURITY]
             - Fixed directory traversal bug in Plack::App::File on win32 environments
  2. Merge pull request #369 from plack/to_app_warn

    miyagawa committed Feb 8, 2013
    Give warnings in to_app() auto promotion
  3. Add warnings when ->to_app implicit promotion is done.

    miyagawa committed Feb 8, 2013
    Usually it's developer's mistake where they forgot ->to_app after
    Plack::App::Foo->new(). This patch gives warnings in such case in
    the development environment.
    
    This will probably give lots of warnings with the command line use
    such as:
    
      plackup -MPlack::App::File -e 'Plack::App::File->new'
    
    which i will work around with a separate commit.
Commits on Feb 4, 2013
  1. Merge #368 with fixes.

    miyagawa committed Feb 4, 2013
Commits on Feb 2, 2013
  1. Add test for CGI exec directory

    okura3 committed Feb 2, 2013
Commits on Feb 1, 2013
  1. s/below/above/

    miyagawa committed Feb 1, 2013
Commits on Jan 31, 2013
  1. Checking in changes prior to tagging of version 1.0016.

    miyagawa committed Jan 31, 2013
    Changelog diff is:
    
    diff --git a/Changes b/Changes
    index 3575293..084f1fd 100644
    --- a/Changes
    +++ b/Changes
    @@ -1,5 +1,23 @@
     Go to http://github.com/plack/Plack/issues for the roadmap and known issues.
    
    +1.0016 Thu Jan 31 13:21:14 PST 2013
    +    [SECURITY]
    +        - Fixed directory traversal bug in Plack::App::File on win32 environments
    +
    +    [INCOMPATIBLE CHANGES]
    +        - Updated Plack::Builder OO interface to be more natural. Still keeps backward
    +          compatible to the old ->mount() and ->to_app() interface.
    +
    +    [NEW FEATURES]
    +        - Static middleware 'path' callback now takes $env as a 2nd argument (avar)
    +        - Static middleware takes 'content_type' callback to determine custom MIME (pstadt)
    +
    +    [IMPROVEMENTS]
    +        - Fixed regexp warning for blead (doy)
    +        - Documentation update for AccessLog::Timed to suggest Runtime (ether)
    +        - Ignore vim swap files on restarter (nihen)
    +        - Major doucmentation overhaul on Apache2 startup files (rkitover, avar)
    +
     1.0015 Thu Jan 10 15:19:17 PST 2013
         [BUG FIXES]
             - Fixed Lint complaining about Latin-1 range characters stored internally with
  2. Merge pull request #357 from rkitover/master

    miyagawa committed Jan 31, 2013
    startup.pl instructions for mod_perl
  3. Merge pull request #359 from nihen/vim_swap

    miyagawa committed Jan 31, 2013
    ignore vim swap and temp files on restarter
  4. Merge pull request #361 from pstadt/middleware-static-contenttype

    miyagawa committed Jan 31, 2013
    Use alternatives instead of Plack::MIME
  5. Merge pull request #367 from plack/builder-interface

    miyagawa committed Jan 31, 2013
    New preferred Builder API
  6. Added sanity check in the OO API as well when wrap() and mount() are …

    miyagawa committed Jan 31, 2013
    …used at the same time
  7. New preferred Builder API that doesn't pass around apps in ->mount an…

    miyagawa committed Jan 31, 2013
    …d ->to_app.
    
    Also added ->wrap shortcut in case urlmap/mount isn't used.
Commits on Jan 29, 2013
  1. doc cleanup

    miyagawa committed Jan 29, 2013
  2. Merge pull request #366 from karenetheridge/topic/accesslogtimed_and_…

    miyagawa committed Jan 29, 2013
    …runtime
    
    Topic/accesslogtimed and runtime
Commits on Jan 19, 2013
  1. Added documentation

    miyagawa committed Jan 19, 2013
Commits on Jan 18, 2013
  1. cleanup POD doc

    miyagawa committed Jan 18, 2013
  2. Cleanup

    miyagawa committed Jan 18, 2013
    We don't add to AUTHORS via small patches. Dont' take it personally :)
  3. Merge pull request #364 from avar/add-ability-to-pass-env-to-static-m…

    miyagawa committed Jan 18, 2013
    …iddleware-v2
    
    Plack::Middleware::Static: add ability to pass $env to callbacks
Commits on Jan 17, 2013
  1. Plack::Middleware::Static: add ability to pass $env to callbacks

    avarbkng committed Jan 17, 2013
    Change the callback interface for static middleware to pass $env to
    the callbacks in addition to setting $_ and passing $_ as the first
    argument.
    
    Some middleware might want to look at other things in $env, or consult
    some object we previously stuck in $env instead of just looking at
    $env->{PATH_INFO}. This adds the ability to easily do that.
    
    Chat about an earlier version of this patch on #plack which instead of
    just adding $env to the arguments passed to the callaback. See
    #363.
    
        17:29:43 < miyagawa> avar: quite honestly i don't like the pattern you often come up with, that changes callback signature with other options
        17:33:20 < avar> miyagawa: How would you add that to the API while preserving compatibility? Add another option with a sub that has a different signature?
        17:36:55 < miyagawa> avar: yes, or in this case pass $env as a second arg
        17:37:08 < miyagawa> OR, you write a completely new middleware as a subclass
        17:37:35 < miyagawa> i don't know what you actually want to achieve
        17:37:39 < miyagawa> "some middleware might" isn't a use case
        17:38:35 < avar> If you think breaking "my $path = pop" is fine that's fine by me. I was going for something that wouldn't ever break existing stuff without explicitly declaring what you wanted.
        17:40:45 < miyagawa> this is not POE nobody would ever use pop
        17:41:08 < miyagawa> but then you can also use other option like you said
        17:41:48 < miyagawa> and again i don't see a use case
        17:42:36 < avar> I'm setting up a Plack::Request object early in another middleware that everything else has access to, also an object in $env you can log against.
        17:42:51 < avar> Not having to set that up again + being able to log with that object you pass around is handy
        17:48:30 < miyagawa> nobody would use $path = shift either because the interface is $_
        17:48:50 < miyagawa> but don't take that as a suggestion to completely change that
        17:49:22 < avar> Why is it passing $_ in addition to setting it in the first place?
        17:50:05 < miyagawa> i guess no app will break if you don't pass it
        17:50:31 < avar> well some might be doing: my ($path) = @_;
        17:50:51 < doy> which still wouldn't break
        17:51:28 < miyagawa> yeah.
        17:51:41 < miyagawa> the documentation says nothing about the argument anyway
        17:51:42 < miyagawa> BUT
        17:51:56 < miyagawa> i think your use case is pretty odd
        17:52:04 < doy> yeah, the documentation explicitly says "The callback should operate on $_ and return a true or false value."
        17:52:11 < miyagawa> and that it has to be handled separately than adding a new argument to "path:"
        17:52:41 < miyagawa> right
        17:53:04 < miyagawa> I think the easiest compromise would be to pass $path, $env to the callback :)
        17:54:41 < avar> Sure, works for me. For what it's worth I don't usually write APIs with odd semantics like this, I was just going for something that didn't break the documented or implicit API
Commits on Jan 14, 2013
  1. fix blead warning

    doy committed Jan 14, 2013
Commits on Jan 10, 2013
  1. Checking in changes prior to tagging of version 1.0015.

    miyagawa committed Jan 10, 2013
    Changelog diff is:
    
    diff --git a/Changes b/Changes
    index 6d943a0..3575293 100644
    --- a/Changes
    +++ b/Changes
    @@ -1,5 +1,9 @@
     Go to http://github.com/plack/Plack/issues for the roadmap and known issues.
    
    +1.0015 Thu Jan 10 15:19:17 PST 2013
    +    [BUG FIXES]
    +        - Fixed Lint complaining about Latin-1 range characters stored internally with
    +          utf8 flag on (Mark Fowler)
             - HTTP::Message::PSGI::res_from_psgi now always returns empty string
               for an empty response body, so streamed responses are consistent with
               non-streamed (ether)
Commits on Jan 5, 2013
  1. Documentation update

    pstadt committed Jan 5, 2013
  2. provide tests for content_type callback for Plack::App::File and Plac…

    pstadt committed Jan 5, 2013
    …k::Middleware::Static.
    
    Using Plack::MIME with added mimetype and modify the returned mimetype to make sure it is not the Plack::MIME fallback which was called. This was done not to have a dependency to a different mimetype checker.
Commits on Jan 4, 2013
  1. add handling of content_type code reference in App/File (readable cha…

    pstadt committed Jan 4, 2013
    …nge)
    
    add attribute content_type to Middleware/Static which can be an callback