Roadmap for play 1.0.1

play 1.0.1 is a maintenance release of the play 1.0 branch. It fixes a lot of small bugs and provides a better binding for persistent JPA objects and auto-escaping of HTML and Javascript code in templates to avoid XSS security problems in your applications.

Should be released around 2010-01-31.

These bugs are already fixed

#502704   'val' cannot be used as the element name in the #list tag
#504783   Captcha not working in r784
#503601   NPE using Mail.send
#504276   Mail.buildMessage incompatible with 1.0 version from play!
#485907   Add #{get 'moreStyles' /} and #{get 'moreScripts' /} in the default main.html
#458973   Byte data type binding problem
#459454   Missing .amateras file in revision 642
#460097   Class cannot be resolved when deployed to google appengine
#460174   [patch] unneeded byte array allocation
#460177   [patch] infinite loop in Mail.send override
#460182   [patch] make sure connections get closed
#460185   [patch] fix possible NPE in Router.reverse
#460190   [patch] Properties class should throw exceptions on null streams
#460507   Null Pointer when uploading a file over 10KB
#460626   @javax.inject.Inject support
#460972   JPA object binding is not transparent enough
#461063   abstract tests show up in test runner
#461147   GAE module problems with SDK 1.2.6
#461207   framework id could be set up from command line
#461986   Cache prematurely disconnects in DEV mode
#463278   custom Oval checker ignored if the property already has other validation constraint
#463682   Patch for _get tag to be able to return default body content
#465033   eclipsify treats conf dir as a library
#465992   sha module is deprecated
#467916   "Test..." launch configuration missing a classpath
#467923   JPASupport.edit() doesn't handle fileds in super class
#468233   NPE when sending plain text email
#468262   python script does not understand framework ID - %prod.application.mode=prod
#470465   hardcoded PLAY_LANG cookie
#470561   'play war' should be able to set application.mode=prod
#472511   Fixtures providing null pointer when trying to load data
#473021   [patch] Wrong bookmark link in the test runner
#473069   Eclipsify command produces wrong .project file
#473963   String extensions are missing urlEncode
#474162   [Patch] New functions for libs/Mail.java and mvc/Mailer.java to set character-set and etc.
#474255   extending boolean binding for checkbox default value
#474279   CRUD controllers in netbeansified application
#474303   a bit of improve in JPASupport.setupAttachment()
#475237   Groovy bundle upgrade to 1.6.5 version
#475787   getting attribute list of tags
#476258   @Required validation on an array throws java.lang.NoSuchFieldException: length
#477537   a bug when download with ie
#478315   500.html can produce error
#478890   can not add domain attribute in cookie
#480068   Fixture loads hierachical model incorrectlly
#480559   "equals" validation returns true on null types
#480666   javax.persistence.NoResult exception occurs on sending not exist identifier
#481065   Testing Framework Feature Requests
#481073   Cannot use Fixtures.load(data.yml) in Bootstrap Job
#481304   JPASupport.edit() method problem
#481333   additional expression request for showing verbatim strings
#481663   Documentation Fixes - Tutorial Page 1
#483172   JPASupport.edit() handle FileAttachment incorrectly
#483174   Get FileAttachment with fileName in unicode throw exception
#484619   controller name is used in CRUD.create() success message
#485790   class instantiation in templates problem
#485825   Make flash to work correctly even without redirection
#485926   Setting response.status in controller is ignored
#485946   Tag 500 should write problematic lines with escapeHtml
#486257   Validation.getValidators() mistake
#487003   CRUD pagination don't have limit on number of page links
#487898   Update selenium
#488632   Feature Request: interceptions ordering mechanism
#488701   Exception while sorting by dynamic field
#489082   Internal Server Error (500) for request GET /favicon.ico
#489175   JPASupport.setupAttachment does not initialize FileAttachments
#489525   [patch] eclipsify - reference play source path
#490329   play war command bugs
#490400   Setting Cache-Control fails in Google appengine
#490503   ManyToMany relations with strange SQL statements
#490897   Cannot make sequent calls in functional test if JPA is involved
#490967   Feature request: TestRunner could display JUnit4 Tests which don't extend play test classes
#491081   Wrong binding of hours for Dates
#491634   Some names cannot be assigned to Controllers, e.g. Thread
#491966   FunctionalTest is missing file upload functionality
#492262   JPA binding problem on JPASupport inherited classes
#493643   Cannot specify attachments.path as abslute path
#493823   JPASupport.saveAndCascade() doesn't handle fileds in super class
#493861   JavaExtensions.since() doesn't account for non-plural values
#493984   Feature request: Logging should be configurable from application.conf
#494193   NullPointerException when trying to use crud.custom tag
#495093   Ability to override/ edit web.xml
#497067   private FileAttachment is not saved automatically
#497152   Something bad in email sending ?
#497849   [patch] ability to use log4j.xml
#498543   eclipsify bug when app name is test
#498779   Action error bad reporting
#499482   Match validation message format problem
#501038   Feature request: create custom tags in Java
#501146   Feature request: java security policy
#501658   Include uri-reference when calling controller methods
#501813   The command line script fails with a cryptic error if the java executable cannot be found
#502158   Router.reverse keeps parameters of routes that didn't match
#502942   ArrayOutOfBoundException in reverse routing
#502986   cannot have a space before colon in tag parameters
#504488   Play sends the HTTP Etag without double quotes
#504973   FastTags in production mode does not work
#505996   feature request: simpler loop construct
#506013   Idealize project has spelling mistake
#506087   Feature Request: smart response.setHeader() method