The entire TorqueBox team is proud to announce immediate availability of TorqueBox v2.0.0.beta2.
- Download TorqueBox 2.0.0.beta2 (ZIP)
- Browse HTML manual
- Browse JavaDocs
- Browse Gem RDocs
- Download PDF manual
- Download ePub manual
What is TorqueBox?
TorqueBox builds upon the JBoss AS Java application server, mixing in JRuby, to provide a scalable platform for Ruby applications, including support for Rails, Sinatra and other Rack-based frameworks.
In addition to supporting popular web frameworks, TorqueBox bridges many common Java facilities provided by JBoss, including scheduled jobs, caching, messaging, and services.
What's special about 2.0.0?
This is the second beta for our 2.0.0 release, which is a major upgrade over the 1.x you may already be familiar with. Notable inclusions in 2.0.0 include:
- JRuby 1.6.5.1 (with better Ruby 1.9 support)
- JBoss AS7 (faster boot time, smaller memory footprint)
- Multi-resource distributed XA transactions
- WebSockets/STOMP
If you've been following our incremental builds, this will mostly be just a label change for you.
You're in luck, VFS is gone!
We've fixed quite a few issues since beta1, but one large change is how
we handle file paths and how those file paths are exposed to ruby. Before
this change, paths given to ruby (via __FILE__, Dir.pwd, RAILS_ROOT, etc.)
were vfs: urls instead of regular paths. Now, any paths that pass into ruby
from TorqueBox will be regular platform-specific file paths.
What is VFS?
VFS stands for 'Virtual File System', and is used internally by AS7 to be able to transparently mount jars/wars and treat them as filesystems. At one time, TorqueBox needed to expose VFS to support archived ruby applications, but this is no longer the case since we now explode archived apps to a temporary folder instead of using them archived.
Why remove VFS?
Exposing VFS to ruby required us to do extensive monkeypatching to File, IO,
Dir, and various other classes to teach them to properly understand vfs:
urls, and has been a constant source of issues. Recent changes in the Rails
asset pipeline code exposed even more issues, causing us to reevaluate the
need for exposing VFS to ruby.
How will removing VFS affect me?
Well, hopefully you'll see less bugs. Seriously though, you shouldn't see any difference in your application, unless you have already had to work around VFS issues. In that case, you'll want to remove the workarounds. We still have to use VFS internally to communicate with AS7, so it is possible that there are places where vfs: urls are still bleeding through to ruby.
As part of this change, the torquebox-vfs gem has been retired. If you have
it listed in a Gemfile or manually require it in your code, you'll need to
remove those references.
If you see any issues, please let us know.
What's next?
We'd like everyone to give our beta2 release a whirl, report any issues you find in JIRA, and we hope to have another beta in a few weeks. We absolutely promise not to let Bob run this beta cycle, in order to keep it a reasonable length.
The final 2.0.0 really shouldn't be too far down the line, now.
Issues resolved since beta1
- [TORQUE-407] - 'rails console' Throws Error When Gemfile Includes 'torquebox'
- [TORQUE-510] - CLONE - [BackStage] Display HornetQ cluster configuration
- [TORQUE-511] - CLONE - [BackStage] Add Caches tab view to display infinispan statistics
- [TORQUE-600] - System calls can fail silently when executed from the app server
- [TORQUE-627] - Add profiler option to ruby section of deployment descriptor to allow profiling
- [TORQUE-628] - stomp-endpoint appears to ignore host:
- [TORQUE-635] - Using torque_box_cache Breaks Rake Tasks
- [TORQUE-639] - Publish and link to javadocs/rdocs
- [TORQUE-640] - Allow naming of knob file when deploying
- [TORQUE-642] - Error on stylesheet_link_tag & javascript_include_tag
- [TORQUE-644] - Add rails template behavior to torquebox command
- [TORQUE-645] - Update to AS 7.1.0.beta1b
- [TORQUE-647] - Cannot start Torquebox and deployment failed on Ubuntu, Jruby 1.6.5, RVM, RAils 3.1.3
- [TORQUE-652] - Can't use :torque_box_store in a non-torquebox environment
- [TORQUE-653] - injection analyzer takes forever when confronted with lots of files
- [TORQUE-655] - The TorqueBox config/initializers/session_store.rb created by the TorqueBox Rails template can cause problems when running an app outside of TorqueBox
- [TORQUE-657] - TorqueBox builds generate 2 different gemspecs for the torquebox-* gems
- [TORQUE-659] - Remove vfs from rubyland
- [TORQUE-661] - torquebox run --clustered Broken
- [TORQUE-663] - Add a torquebox archive ROOT subcommand to /bin/torquebox
- [TORQUE-666] - Parse exceptions that occur during injection analysis should be logged and ignored
- [TORQUE-667] - Quiet Injection Analyzer Warnings
- [TORQUE-668] - Applications Containing database.yml Entries With Both jdbcmysql and mysql Adapters Don't Boot
- [TORQUE-669] - rake torquebox:launchd:check aborted because TorqueBoxAgent.plist not installed
- [TORQUE-670] - Need ability to set the client_id on a MessageProcessor for durable topics.