== 2.0.5

- #427: Check Java properties when looking up RAILS_ENV
- #424: Rails Webpacker support
- #397: Avoid warnings under JRuby 9K

== 2.0.4

- fix: an instance variable name typo (@servlet_context_listeners)
- #383: add bundler monkey patch

== 2.0.3

- Remove test_files from gemspec to save 700k

== 2.0.2

- #380: exclude spec/integration/rakelib and dot-files being packed into .gem
- #379: 2.0.1 regression due forcing GEM_PATH = GEM_HOME

== 2.0.1

- #367: avoid duplicate .jar copies in WEB-INF/lib
- #364: support for compiling .rb files using jrubyc with options
- #362: limit rubyzip version to not match too far
- #363: [backport] support for running with (recent) rubyzip 1.2.0

== 2.0.0

- Initial release with 9k support

== 1.4.9

- Fixed a bug in detecting default PORT for executable WAR
- #332: Warbler not picking up new Bundler convention of 'exe' directory for executables

- Added the ability to set custom port for Jetty launcher with
  warbler.port or PORT env var

== 1.4.7

- #319: Adds capacity to use the jruby-jars gem version for JRuby 9k.

== 1.4.6
- #318: polish *scripts/rails* - require_relative should no longer be used
- #315: Removed custom Jetty launcher in favor of jetty-runner
- #316: Sprockets manifest name change
- #313: Update Jetty to 9.2.10
- #311: Don't clear the environment if a java executable is found
- #268: Compile's clearing of ENV vars makes it impossible to use custom compile vars

== 1.4.5
- #282: Wrong default GEM_HOME in generated META-INF/init.rb
- #305: warbler.rb: Document jar_extension, autodeploy_dir options
- #304: enable ENV['RACK_ENV'] to honor command line environment variable
- #296: Use a topological sort to order traits by requirements.
- #291: Include most current gem version in README
- #280: config.webserver = 'jetty' (by default)

== 1.4.4
- #271: LoadError while excute rake command with runnable .war archive
- #273: filtering support with `config.move_jars_to_webinf_lib`
- #270: don't swallow compiler errors with backticks
- #265: Compile feature only compiles application sources (not gems)
- #264: JBundler with compiled feature crashes with java.lang.ClassNotFoundException: org.jruby.Main
- #269: Argument list too long
- #236: Adds comment hinting at how to put a display name in web.xml.erb file.
- #275: for jruby-1.7.13 we do not want to force load bouncy-castle jars
- #276: unnecessary rubyzip dependency on "< 1.1"

== 1.4.3
- Fixed a bug w/ symlinks that was introduced around jruby-1.7.10
- #258: Bytecode version option for compiled class files
- #259: Update README.rdoc to not require warbler in Gemfile
- #260: Can't convert TrueClass into String
- #167: Excluding rb and class files when using compiled flag
- #254: Fixes #167 by excluding config.excludes from compiled files

== 1.4.2
- #241: jars from jruby.jar itself do not get copied over to WEB-INF/lib
- #199: javascript_include_tag and stylesheet_link_tag not generating digestions
- #247: better support for Rails 4 asset pipeline
- #169: Compile war not loading assets
- #243: Added the move_jars_to_webinf_lib method back in...
- #249: Warbler 1.4.1 fails to compile on Windows

== 1.4.1
- Support for JBundler
- #165: Problem with bundler git gems
- #239: Supresses a warning when using bundler
- #221: Adding WEB-INF to $LOAD_PATH for simple Rack-only apps
- #220: For Rack-only apps, WEB-INF should be added to $LOAD_PATH
- #218: Invoke jrubyc using system to ensure that STDERR from jrubyc is shown

== 1.4.0

- Support for Rails 4.x
- Improved runnable so `rails` command works w/o script dir
- #156: config.dirs seems to be ignored
- #159: Rails 4.0.0.rc1 fails under warbler with `silence` error
- #180: Problem with rubyzip 1.0.0
- #178: Status of config.threadsafe! in rails 4.
- #179: Jruby min and max runtimes defaults to 1 in rails 4.
- #182: Jar creation does not honor begin/realSize from contents' ByteList
- #177: allow specifying executable to run including other gems executables
- #173: WAR project also should respect `override_gem_home` option
- #168: The -S rails command is not compatible with Ruby 1.8
- #190 and #206: Add zip adapter to support for rubyzip 0.9 and 1.0
- #197: Extra characters at the end of web.xml file
- #202: Recompile the booster jar after changes for "unsafe" bytes
- #204: Reset RubyGems gemspec cache between tests
- #203: Test ordering issue when running with RubyGems 2.1.9

== 1.3.8

- Numerous fixes related to -S option and local environment.
- #162: Close the URLClassLoader before deleting tempJARs
- #161: Comment out config.dirs to match default
- #158: Warbler looking in the wrong directory for bundler gem

== 1.3.7

- #154: Use #load in .rb shims
- #153: Runnable war error
- #152: Mirror fallback for winstone-jenkins?
- #150: Don't delete contents of symlinked folder.
- #148: Resolving issue when an alternate BUNDLE_PATH is used
- #144: No such file to load -- bundler/setup (with bundler 1.3.4)
- #141: Support running executables from Bundler gems and project-local scripts
- #136: java -jar rails.war -S rake db:migrate
- #125: Fix self executable jar/wars when the filename contains '#' symbols
- #122: When comparing zip file entries, ignore trailing slashes
- #118: warble pluginize does not work on rails 3.x
- #117: Allow compile feature to work in 1.9 mode
- #112: Reset ENV['GEM_HOME'], limit search to within .jar
- #105: Pick executables deterministically and warn when doing so
- #104: Default executable is system-dependent

== 1.3.6

- #100: fix winstone URL

== 1.3.5

- Add config.webserver to give choices for which lightweight Java
  webserver is used in an executable war.
- Add jenkins-ci.winstone and jetty as embeddable servers
- #76, #81: fix rubyzip "can't modify frozen string" issue

== 1.3.4

- #77, #78: Handle the case when multiple gems exists in a git path
  (Patrick Cheng)
- #66: On Windows, File#unlink does not delete the file like it does
  on POSIX (Greg Mefford)
- Check config/environment.rb in addition to production.rb for
  threadsafe (Joe Kutner)
- #37, #64: Fix issues with Bundler and recent Rubygems/Rails

== 1.3.3

- Note: 1.3.3 was YANKED due to #62
- Move all jars to WEB-INF/lib, and leave an empty jar in the original
  place
- Deal with private Kernel#gem method in recent RubyGems
- Deal with Gem::Specification#full_gem_path changes in RG 1.8.x
- GH #42: Tricks to allow Bundler to find git repo gems even when they
  are excluded form production

== 1.3.2

- Compatibility with rake 0.9.x, avoid deprecation warnings and deal
  with new FileList exclusion behavior
- Exclude config.bundle_without groups properly

== 1.3.1

- Pin rake version to ~> 0.8.7 for now. Rake 0.9.0 compatibility will
  follow in a future release.

== 1.3.0

- Warbler can now package regular Ruby projects as executable jar
  files. See the README.rdoc file for details.
- WARBLER-18: Heed BUNDLE_GEMFILE in environment
- WARBLER-17: Allow config.excludes to work for files in public/
- GH#3, #12, #17: Properly bundle when BUNDLE_PATH is set or
  --deployment flag is used
- JRUBY-5077, WARBLER-24: Gems from git repositories are now packaged
  correctly
- GH#20: Ruby 1.9.2 support
- GH#8: Clean up compiled .class files after building war
- GH#15: Simplify detection of thread-safe Rails

== 1.2.1

- Add --directoryListings=false to Winstone launch by default. In some
  cases (sinatra) Winstone's directory listing masks application
  content. (Fletcher Nichol)
- Build and add META-INF/init.rb file into the war file. This is
  recognized and loaded by JRuby-Rack 1.0.3 as a new way to do extra
  environment initialization before the web framework is loaded. See
  config.init_contents in Warbler::Config for details.

== 1.2.0

- Drop compatibility with earlier versions of Bundler -- Bundler has
  changed a lot in a short period of time, so I'm expecting the number
  of people depending on 0.8 or 0.9 to be small. Please use Warbler
  1.2.0 with applications that depend on Bundler 1.0 or higher.
- Support for Bundler groups. The 'development' and 'test' groups are
  excluded by default.
- Add 'compiled' feature: With this feature added to config.features
  Warbler will pre-compile all Ruby files and will not ship the
  original Ruby source in your war file.
- warble.rb: Add config.bundle_without that controls Bundler groups to
  be skipped, like 'Bundler.settings.without'.
- warble.rb: Add config.compiled_ruby_files to specify which Ruby
  files to compile when using the "compiled" feature. Defaults to
  compiling all Ruby files.
- warble.rb: Add config.gem_excludes which allows exclusion of some
  gem files from the war. Default assumes no exclusions.
- Exclude 'tmp/war' directory so that people upgrading from 0.9 won't
  accidentally include it in their war file.

== 1.1.0

- Add concept of "features" -- small Rake tasks that run before the
  creation of the war file and make manipulations to the war file
  structure.
- Add 'gemjar' feature: Bundle all gems into a gems.jar to reduce the
  number of files in the archive (mostly useful for Google AppEngine).
  Usage: run "warble gemjar war" or set config.features = %w(gemjar) in
  warble.rb to use this feature.
- Add 'executable' feature: Bundle an embedded web server in the war
  file so that the entire application can be run as
  'java -jar myapp.war'.
  Usage: run "warble executable war" or set config.features = %w(executable)
  in warble.rb to use this feature.
  To see embedded webserver options, add '--help' to the 'java -jar'
  command line.
- No longer embed config.ru in web.xml as 'rackup' parameter by
  default. Instead, config.ru is included in the war file.
- Bump jruby-rack version requirement to 0.9.8.

== 1.0.3

- Tracking recent Bundler changes - handle locked Gemfiles differently
  than unlocked ones
- Handle file-based symlinks, and warn about inoperational directory
  symlinks under non-JRuby versions of Ruby.

== 1.0.2

- Add 'warble pluginize' task back. This task now just creates a
  vendor/plugins/warbler/tasks/warbler.rake file. There's no need to
  "vendor" all of Warbler into your application anymore.

== 1.0.1

- Fix careless bug where Warbler doesn't work with JRuby 1.4

== 1.0

- Warbler hits 1.0! There are enough structural changes in Warbler
  that I feel it's time to roll the major version over to 1.0.
- Add support for Bundler. Detect Gemfiles, make sure gems are
  included in the war file and rewrite .bundle/environment.rb inside
  the war file.
- Warbler now uses RubyZip to create the war file in-place, without
  copying files to a tmp/war staging area. When run in JRuby it uses a
  Java ZipOutputStream for a modest performance boost.
- Add config option to allow override of gem_home (Daniel Harrington).
- Stop bundling jruby-rack, as promised.
- WARBLER-3: don't add from Rails config.gems if they are frozen
- WARBLER-7: Add config.webinf_files option with more support for
  custom web.xml files

== 0.9.14

- So, jruby-rack is bundled for one more release. 1.0 will not contain
  any jar files, I promise!
- Upgraded jruby-rack to 0.9.5.
- Unbundled jruby-complete jar in favor of new jruby-jars gem, which
  can be upgraded separately.
- Skip gems which have no loaded_from attribute set
  (this happened with the Authlogic gem on Edge Rails)
  (thanks Laszlo Bacsi)

== 0.9.13

- RailsConf 2009 edition.
- Only bundled JRuby and JRuby-Rack upgrades. Bug fixes will have to come in 0.9.14.
- This should also be the last release with bundled JRuby and JRuby-Rack.
- Upgrade to JRuby 1.3.0RC1 and JRuby-Rack 0.9.4. The latter allows
  Rails 2.3 to work with Warbler.

== 0.9.12

- Allow framework auto-detection to be disabled. Set
  `Warbler.framework_detection = false' at the top of config/warble.rb
  or uncomment the line from a newly generated config.
- Add configuration option to set manifest file (thanks Tommy McGuire)
- Mitigate RubyGems 1.3 compatibility issue (thanks Jens Norrgrann)
- Add experimental `war:exploded` task. This allows you to deploy your
  application in an exploded mode, thus allowing continual development
  without re-warring and re-deploying. Feedback is appreciated if you
  try this feature; it may not work in all application servers and for
  applications other than Rails.
- Handle Rails gem dependencies better (thanks Laszlo Bacsi)
- Auto-detect Merb dependencies (Merb >= 1.0 only). Please give
  feedback if you try Warbler with a Merb 1.0 app.
- Ignore gem development dependencies
- Upgrade to JRuby 1.1.6 and JRuby-Rack 0.9.3

== 0.9.11

- Auto-detect Rails and Merb and configure appropriately
  - For Rails, set rails booter, determine max runtimes based on Rails.configuration.threadsafe!,
    add Rails gem, detect Rails version, set gems to be packaged based on
    Rails.configuration.gems if available
  - Rails gems only added if Rails application detected
  - For Merb, set merb booter automatically
- Auto-detect config.ru rackup script and pass it into config.webxml.rackup
- rails.env now commented by default in config/warble.rb and internally default
  the value to 'production'
- Default directories in config.dirs to only those that are found to be present
- Allow config.gems array to contain regexps and Gem::Dependency objects as well
 (assist from Jani Soila)
- Fix bug ensuring you can += and -= for config.gems
- Upgrade to JRuby 1.1.4 and JRuby-Rack 0.9.2
- add [] as a way to specify non-identifier keys, example: config.webxml['!@#$%^'] = 'haha'

== 0.9.10

- Upgraded to JRuby-Rack 0.9.1. Fixes JRUBY-2620, JRUBY-2594, JRUBY-2507.
- Now verified to work with Camping and Sinatra. See
  http://github.com/nicksieger/jruby-rack/tree/master/examples for examples
  of how to configure Warbler to package your Camping and Sinatra apps.
- Upgraded to JRuby 1.1.3.
- Log files are no longer packaged in the .war file.
- Fix #<Warbler::WebxmlOpenStruct ...> appearing in web.xml and document workarounds.
- Add config.autodeploy_dir that, when specified, will create the war there.

== 0.9.9

- Now shipping with JRuby-Rack 0.9!
- Upgrade to JRuby 1.1.1
- warble.rb and web.xml.erb have changed as a result of the change to JRuby-Rack -- we
  recommend comparing the new base copies with any existing configuration you have to
  make sure you pick up the differences.
- Config changes:
-- config.webxml.booter chooses what kind of application to use (:rails, :merb or plain :rack).
-- config.webxml.pool.* have been replaced by config.webxml.jruby.(min|max).runtimes
-- config.webxml.standalone and config.webxml.jruby_home no longer have any effect.

== 0.9.5

- Fix bug in plugin warbler.rake task file that would favor loading warbler from gems before the version
  installed as a plugin
- Upgrade to JRuby 1.1 final and Goldspike 1.6.1

== 0.9.4

- Update bundled JRuby to 1.1RC3 and Goldspike to 1.6.
- Fix inclusion of gems with platform-specific bits (e.g., Hpricot)

== 0.9.3

- Update bundled JRuby to 1.1RC2, and Goldspike to 1.5.
- The bundled JRuby and Goldspike now require JDK 5 or greater. If you wish to use JDK 1.4, use Warbler 0.9.2.

== 0.9.2

- Update bundled JRuby to version 1.0.3 and Goldspike 1.4.
- Add config.java_classes to allow you to copy loose Java classes into WEB-INF/classes.
- Make jar command a single command string so that jar creation doesn't fail (works around bug in JRuby 1.0.2)
- Use File.join to form staging directory, should produce the proper jar-command path in Windows

== 0.9.1

- Add rake >= 0.7.3 as a dependency in the gem specification.
- Add debug tasks: war:debug, war:debug:gems, war:debug:public, war:debug:app, war:debug:includes,
  war:debug:excludes, war:debug:java_libs gives you a breakdown of what Warbler expects to package.

== 0.9

- Birthday! Warbler is a gem to make a .war file out of a Rails project. The intent is to provide a
  minimal, flexible, ruby-like way to bundle up all of your application files for deployment to a
  Java application server.
- Bundled versions: goldspike-1.4-SNAPSHOT and jruby-complete-1.0.1
- Works as both a gem (rake application) or a plugin