Happy 2014
Prudence and Sincerity are now in beta. Please distribute the news widely!
FULLY DOCUMENTED
The Prudence Manual manual is now *finished*, which means that
everything that I consider necessary for using Prudence 2.0 is now
confirmed to be existing and working. Are there bugs? Probably, so
that's where you come in ... please help test and report bugs, even if they are documentation bugs.
Exciting teasers:
- Learn how to implement a super-scalable task farm in the cluster chapter
- MVC on Prudence: it's possible, and there are even working examples for using Jinja2 templates or StringTemplate
- See how to execute live code in the debugging chapter
- Load-balancing: fully explained with Nginx and Perlbal examples in the deployment chapter
What are you waiting for? Start with the Tutorial, and expand
your horizons from there. Or go ahead and print the 160-page (!) PDF.
JVM 8 NOW
The entire stack now supports JVM 8 via the current developer release of
OpenJDK, and will be using Nashorn by default (falling back to Rhino for
JVM 7 and earlier). Simple benchmarking has revealed significant
performance gains -- I will publish some information about it soon.
Please help testing by running the stack on JVM 8! Lots of effort has
been put into making sure everything works with Nashorn, from plugins to
the MongoDB API. The Three Crickets web site has also moved to using
JVM 8.
LOGGING
One major shift in this release is upgrading the logging plugin to use
Log4j 2.0. This upgrade represents a major reworking of Log4j, with
exciting performance improvements due to its use of the Disruptor
library, and it also includes no-SQL appenders. Log4j 2.0 is still in
beta, and in integrating it into Sincerity I've discovered and reported
quite a few bugs. For now, they are implemented with workarounds, so
everything should "just work" as long as you're using Sincerity.
For you, this means that you need to redo your logging configuration --
the scripts now all use a Sincerity.Log4j library, which makes
everything easier on your end.
PRUDENCE 2.0-beta1
Breaking change in how internal requests are handled: please use the
"application/internal" MIME type instead of "application/java". The
Prudence Manual explains this:
http://staging.threecrickets.com/prudence/manual/internal/#avoiding-serialization-for-internal-requests
- Prudence Manual is now complete, including downloadable example code
- Many enhancements to cluster APIs and configuration
- New InternalRepresentation class to replace ObjectRepresentation (and avoid serializability requirement)
- Enhancements to task APIs
- Fixes to scriptlet plugins
- Fixes to defrosting
- Upgrade Restlet to 2.2m6
SINCERITY 1.0-beta1
- Logging plugin: switch to Log4j 2.0, introduce Sincerity.Log4j library
- Remove unused Jars from distribution (decrease distribution size)
- "unpack" and "install" commands: make verification optional
- Nashorn fixes
SCRIPTURIAN 1.1.1
Known issues with Luaj, to be fixed in 1.1.2.
- Improved defroster API
- Nashorn fixes
- Fix NPE in Jython
- Upgrade Groovy, JRuby, Luaj and Quercus support
MONGODB JVM 2.1.2
MONGOVISION 1.1-beta1
DILIGENCE 1.0-dev12
- Nashorn fixes
- Various fixes