Plezi v0.3.2 Release Notes

  • 
    **feature**: magic routes.
    
    **feature**: re-write routes.
    
    **update**: new Web App templates save the process id (pid) to the tmp folder (architecture only).
    
    **fix**: 404 and 505 errors set content type correctly.
    
    ***
    
    Change log v.0.3.2
    
    **fix**: the SSL features fix depended on Thin being defined. this caused programs without Thin server to fail. this is now fixed.
    
    **fix**: using a single webrick server didn't trap the ^C so that it was impossible to exit the service. this is now fixed.
    
    **fix**: a comment in the code caused the documentation to be replaced with that comment (oops...). this is now fixed.
    
    ***
    
    Change log v.0.3.1
    
    **feature removed**: (Code Breaker), removed the `Plezi.default_content_type` feature. it's prone to issues.
    
    **patched**: utf-8 encoding enforcement now works. this might disrupt non-text web-apps (which should use `Plezi.default_encoding = 'binary'` or `Plezi.default_encoding = false`).
    
    **feature**: Enabled path rewrites to effect router - see the advanced features in the wiki home for how to apply this powerful feature. Notice that re-writing is done using the `env["PATH_INFO"]` or the `request.path_info=` method - the `request.path` method is a read only method.
    
    **fix**: a very rare issue was found in the 404.html and 500.html handlers which caused unformatted error messages (as if the 404.html or 500.html files didn't exist). this is now fixed.
    
    **fix**: the send_data method now sets the content-type that was set by the caller (was sending 'application/pdf' for a historic testing reason).
    
    **fix**: minor fixes to the app generator. `plezi new app` should now place the `en.yaml` file correctly (it was making a directory instead of writing the file... oops).
    
    ***
    
    Change log v.0.3.0
    
    This release breaks old code!
    
    Re-written the RackServer class and moved more logic to middleware (request re-encoding, static file serving, index file serving, 404 error handling and exception handling are now done through middleware).
    
    Proc safety feature is discarded for now - if you use `return` within a dynamic Ruby Proc, you WILL get an exception - just like Ruby intended you to.
    
    File services can now be set up only through the listen call and directory listing is off *(I'm thinking of writing my own middleware for that, as the Rack::Directory seems to break apart or maybe I don't understand how to use it).
    
    so, code that looked like this:
    
    

    listen