rackgem dependency of
torquebox-webwas loosened in preparation for Rack 2.0.
torquebox jarwas fixed to match based on a more natural
--exclude fooinstead of requiring a leading slash as in
--exclude /foo. The leading slash variant will continue to work as well.
👍 Long-running monitored daemon support was added. When running in a WildFly cluster, the daemons can optionally be singletons (one instance running per cluster). See the API docs for
TorqueBox::Daemonfor more details.
env.each_pairon the Rack environment hash would sometimes only iterate over some of the hash. This is fixed so that it will iterate over the entire hash as expected.
🐎 Our performance-optimized RackEnvironmentHash implemention had a method override that was incompatible with JRuby 220.127.116.11. This has been removed and JRuby versions >= 18.104.22.168 should work again.
java -jar my_torquebox_app.jar -S ...default gems (json, rake, etc) may not have been found or even bundled inside the jar file correctly. Now they are.
The WunderBoss version was bumped to 0.12.1, bringing in newer versions of Infinispan, Undertow, and several other of the underlying libraries. This also allows us to support running inside WildFly 10.0.0.Final.
✅ Integration tests are now run against WildFly 9.0.1.Final and WildFly 10.0.0.Final.
💎 Empty 304 responses sent from a Ruby application were ending up with a
Transfer-Encoding: chunkedheader added and could result in the request hanging for some clients. This was fixed with the WunderBoss upgrade that brought in a newer Undertow version.
Repeated executions of
torquebox warwill no longer cause the generated archive to continually grow in size. We were accidentally including the existing archive inside the new archive every time the command was run.
TorqueBox::Loggerclass now provides methods to instantiate new loggers and configure the underlying logging system.
Starting TorqueBox via rackup and specifying a port will no longer throw an error about converting a RubyString to int.
0️⃣ Executable wars and jars will default to the correct RACK_ENV / RAILS_ENV when created with the "-e" or "--envvar" options instead of always defaulting to development.
The 'torquebox' gem was missing gem dependencies on 'torquebox-caching' and 'torquebox-messaging'. This has been fixed.
Streaming of responses when not using chunked transfer-encoding is fixed. Previously, the response wouldn't be streamed and only get sent when the response was finished. This impacts Rail's response.stream, SSE, etc. Anything using chunked transfer-encoding worked fine and will continue to work fine.
📦 Bundler wasn't being packaged inside executable jars created with 'torquebox jar' if Bundler was installed in a non-standard $GEM_HOME. The logic now looks at Gem.path instead of Gem.default_path, and thus should respect $GEM_HOME.
Recent versions of Nokogiri will once again work when an app is packaged as a .war and deployed to WildFly.
Passing "--env foo" to the "torquebox war" command no longer results in "NoMethodError: undefined method `=' for nil:Nilclass". Previously, this error would happen anytime you used the "--env" flag unless you also used the "--envvar FOO=BAR" flag to set some environment variable earlier in the command.
🚚 Development moved to the 'master' branch instead of 'torqbox'
✅ The Rack Hijack API has been partially implemented. The only tested use of this is with the
tubesockgem for WebSocket support.
🖨 Print out the host and port that web is listening on when programmatically started with :auto_start set to true.
Wars generated with 'torquebox war' can now be run directly with
java -jar foo.war, just like jars.
📦 Scripts can now be run from inside packaged jar and war files using "-S". Ex:
java -jar my_rails_app.jar -S rake db:migrate
🌐 The gem previous known as 'torqbox' is now 'torquebox-web' 4.0.0.alpha1. The 'torquebox' gem pulls in the complete TorqueBox 4.0 stack.
The 'torqbox' command is now 'torquebox run'.
Switched from bundling wunderboss-rack.jar to pulling in wunderboss and other necessary jars via maven.
🚚 All the Rack components that used to exist in wunderboss were moved here, so the build was restructured to allow compiling java source files with maven dependencies without actually needing to use maven.
➕ Added --context-path option to 'torquebox' command to start web applications at a non-root context. In embedded mode this probably isn't all that useful outside of testing.
Listen for SIGTERM (in addition to SIGINT) to know when to gracefully stop.
v3.2.0September 16, 2016
v3.1.2April 08, 2015
v3.1.1June 25, 2014
v3.1.0March 24, 2014
v3.0.2January 30, 2014
- Bundled wunderboss-rack commit fc2378dfe02394fa406e1aba1ac2efe07305cadd that upgrades to Undertow 1.0.0.Beta30