warbler 2.0.5 → 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/{History.txt → CHANGELOG.md} +72 -43
- data/Gemfile +6 -10
- data/LICENSE.txt +4 -5
- data/Mavenfile +28 -11
- data/README.rdoc +74 -28
- data/Rakefile +19 -38
- data/ext/JarMain.java +106 -98
- data/ext/WarMain.java +59 -73
- data/lib/warbler/bundler_helper.rb +1 -8
- data/lib/warbler/config.rb +7 -9
- data/lib/warbler/gems.rb +3 -9
- data/lib/warbler/jar.rb +9 -13
- data/lib/warbler/task.rb +10 -7
- data/lib/warbler/templates/bundler.erb +0 -15
- data/lib/warbler/templates/jar.erb +2 -0
- data/lib/warbler/templates/rack.erb +2 -2
- data/lib/warbler/templates/war.erb +2 -5
- data/lib/warbler/traits/bundler.rb +2 -17
- data/lib/warbler/traits/gemspec.rb +6 -2
- data/lib/warbler/traits/jar.rb +5 -1
- data/lib/warbler/traits/jbundler.rb +3 -2
- data/lib/warbler/traits/nogemspec.rb +5 -1
- data/lib/warbler/traits/rack.rb +5 -1
- data/lib/warbler/traits/rails.rb +4 -0
- data/lib/warbler/traits/war.rb +30 -31
- data/lib/warbler/traits.rb +29 -5
- data/lib/warbler/version.rb +1 -1
- data/lib/warbler/web_server.rb +7 -5
- data/lib/warbler/zip_support.rb +1 -1
- data/lib/warbler_jar.jar +0 -0
- data/warble.rb +29 -6
- data/warbler.gemspec +19 -7
- data/web.xml.erb +0 -19
- metadata +121 -39
- data/lib/warbler/war.rb +0 -8
- data/pom.xml +0 -190
data/lib/warbler/traits/war.rb
CHANGED
|
@@ -21,6 +21,10 @@ module Warbler
|
|
|
21
21
|
Traits::Rails.detect? || Traits::Rack.detect?
|
|
22
22
|
end
|
|
23
23
|
|
|
24
|
+
def self.conflicts
|
|
25
|
+
[ Traits::Jar ]
|
|
26
|
+
end
|
|
27
|
+
|
|
24
28
|
def before_configure
|
|
25
29
|
config.gem_path = DEFAULT_GEM_PATH
|
|
26
30
|
config.pathmaps = default_pathmaps
|
|
@@ -176,41 +180,14 @@ module Warbler
|
|
|
176
180
|
|
|
177
181
|
def initialize(key = 'webxml')
|
|
178
182
|
@key = key
|
|
179
|
-
@table = Hash.new { |h, k|
|
|
183
|
+
@table = Hash.new { |h, k|
|
|
184
|
+
new_ostruct_member!(k)
|
|
185
|
+
h[k] = WebxmlOpenStruct.new(k)
|
|
186
|
+
}
|
|
180
187
|
|
|
181
188
|
@servlet_filter_async = nil # true/false
|
|
182
189
|
end
|
|
183
190
|
|
|
184
|
-
def [](key)
|
|
185
|
-
new_ostruct_member(key)
|
|
186
|
-
send(key)
|
|
187
|
-
end
|
|
188
|
-
|
|
189
|
-
def []=(key, value)
|
|
190
|
-
new_ostruct_member(key)
|
|
191
|
-
send("#{key}=", value)
|
|
192
|
-
end
|
|
193
|
-
|
|
194
|
-
def method_missing(mid, *args)
|
|
195
|
-
len = args.length
|
|
196
|
-
if mname = mid[/.*(?==\z)/m]
|
|
197
|
-
if len != 1
|
|
198
|
-
raise ArgumentError, "wrong number of arguments (#{len} for 1)", caller(1)
|
|
199
|
-
end
|
|
200
|
-
modifiable[new_ostruct_member(mname)] = args[0]
|
|
201
|
-
elsif len == 0
|
|
202
|
-
@table[mid]
|
|
203
|
-
else
|
|
204
|
-
err = NoMethodError.new "undefined method `#{mid}' for #{self}", mid, args
|
|
205
|
-
err.set_backtrace caller(1)
|
|
206
|
-
raise err
|
|
207
|
-
end
|
|
208
|
-
end
|
|
209
|
-
|
|
210
|
-
def respond_to_missing?(mid, include_private = false)
|
|
211
|
-
@table.key?(mid.to_s.chomp('=').to_sym) || super
|
|
212
|
-
end
|
|
213
|
-
|
|
214
191
|
def servlet_filter; @servlet_filter ||= 'org.jruby.rack.RackFilter' end
|
|
215
192
|
attr_writer :servlet_filter
|
|
216
193
|
|
|
@@ -259,6 +236,28 @@ module Warbler
|
|
|
259
236
|
def to_s
|
|
260
237
|
"No value for '#@key' found"
|
|
261
238
|
end
|
|
239
|
+
|
|
240
|
+
private
|
|
241
|
+
|
|
242
|
+
def method_missing(mid, *args)
|
|
243
|
+
len = args.length
|
|
244
|
+
if mname = mid[/.*(?==\z)/m]
|
|
245
|
+
if len != 1
|
|
246
|
+
raise ArgumentError, "wrong number of arguments (#{len} for 1)", caller(1)
|
|
247
|
+
end
|
|
248
|
+
self[mname] = args[0]
|
|
249
|
+
elsif len == 0
|
|
250
|
+
@table[mid]
|
|
251
|
+
else
|
|
252
|
+
err = NoMethodError.new "undefined method `#{mid}' for #{self}", mid, args
|
|
253
|
+
err.set_backtrace caller(1)
|
|
254
|
+
raise err
|
|
255
|
+
end
|
|
256
|
+
end
|
|
257
|
+
|
|
258
|
+
def respond_to_missing?(mid, include_private = false)
|
|
259
|
+
@table.key?(mid.to_s.chomp('=').to_sym) || super
|
|
260
|
+
end
|
|
262
261
|
end
|
|
263
262
|
end
|
|
264
263
|
end
|
data/lib/warbler/traits.rb
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
# See the file LICENSE.txt for details.
|
|
6
6
|
#++
|
|
7
7
|
|
|
8
|
+
require 'set'
|
|
8
9
|
require 'stringio'
|
|
9
10
|
require 'tsort'
|
|
10
11
|
|
|
@@ -15,10 +16,13 @@ module Warbler
|
|
|
15
16
|
# the kind of project and how it should be packed into the jar or
|
|
16
17
|
# war file.
|
|
17
18
|
module Traits
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
# @param forced_traits [Array<Class>, nil] array of Warbler::Trait types to force rather than auto-detecting them
|
|
20
|
+
def initialize(forced_traits)
|
|
21
|
+
@traits = if forced_traits.nil? || forced_traits.empty?
|
|
22
|
+
auto_detect_traits
|
|
23
|
+
else
|
|
24
|
+
validate_traits(forced_traits)
|
|
25
|
+
end
|
|
22
26
|
end
|
|
23
27
|
|
|
24
28
|
def auto_detect_traits
|
|
@@ -45,6 +49,18 @@ module Warbler
|
|
|
45
49
|
@trait_objects = nil
|
|
46
50
|
@traits.collect! {|t| t.name }
|
|
47
51
|
end
|
|
52
|
+
|
|
53
|
+
private
|
|
54
|
+
def validate_traits(requested_traits)
|
|
55
|
+
conflicts = Set.new
|
|
56
|
+
requested_traits.each do |trait|
|
|
57
|
+
trait.conflicts.each do |conflict|
|
|
58
|
+
conflicts += [trait, conflict] if requested_traits.include?(conflict)
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
raise "Some forced traits declare conflicts with each other: #{conflicts.to_a}" unless conflicts.empty?
|
|
62
|
+
TraitsDependencyArray.new(requested_traits).tsort
|
|
63
|
+
end
|
|
48
64
|
end
|
|
49
65
|
|
|
50
66
|
# Each trait class includes this module to receive shared functionality.
|
|
@@ -53,6 +69,14 @@ module Warbler
|
|
|
53
69
|
def requirements
|
|
54
70
|
[]
|
|
55
71
|
end
|
|
72
|
+
|
|
73
|
+
def conflicts
|
|
74
|
+
[]
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
def detect_any_conflicts?
|
|
78
|
+
conflicts.any? { |c| c.detect? }
|
|
79
|
+
end
|
|
56
80
|
end
|
|
57
81
|
|
|
58
82
|
def self.included(base)
|
|
@@ -108,7 +132,7 @@ module Warbler
|
|
|
108
132
|
|
|
109
133
|
alias tsort_each_node each
|
|
110
134
|
def tsort_each_child(node, &block)
|
|
111
|
-
node.requirements.each(&block)
|
|
135
|
+
node.requirements.select { |r| include?(r) }.each(&block)
|
|
112
136
|
end
|
|
113
137
|
end
|
|
114
138
|
|
data/lib/warbler/version.rb
CHANGED
data/lib/warbler/web_server.rb
CHANGED
|
@@ -20,7 +20,7 @@ module Warbler
|
|
|
20
20
|
FileUtils.mkdir_p File.dirname(cached_path) #:nocov:
|
|
21
21
|
require 'open-uri' #:nocov:
|
|
22
22
|
begin
|
|
23
|
-
open(download_url) do |stream| #:nocov:
|
|
23
|
+
URI.open(download_url) do |stream| #:nocov:
|
|
24
24
|
File.open(cached_path, "wb") do |f| #:nocov:
|
|
25
25
|
while buf = stream.read(4096) #:nocov:
|
|
26
26
|
f << buf #:nocov:
|
|
@@ -88,9 +88,9 @@ module Warbler
|
|
|
88
88
|
|
|
89
89
|
class JettyServer < WebServer
|
|
90
90
|
def initialize
|
|
91
|
-
@artifact = Artifact.new(ENV["MAVEN_REPO"] || "
|
|
91
|
+
@artifact = Artifact.new(ENV["MAVEN_REPO"] || "https://repo1.maven.org/maven2",
|
|
92
92
|
"org.eclipse.jetty", "jetty-runner",
|
|
93
|
-
ENV["WEBSERVER_VERSION"] || "9.
|
|
93
|
+
ENV["WEBSERVER_VERSION"] || "9.4.58.v20250814")
|
|
94
94
|
end
|
|
95
95
|
|
|
96
96
|
def add(jar)
|
|
@@ -103,10 +103,9 @@ module Warbler
|
|
|
103
103
|
</Configure>
|
|
104
104
|
CONFIG
|
|
105
105
|
|
|
106
|
-
jar.files["WEB-INF/webserver.properties"]
|
|
106
|
+
jar.files["WEB-INF/webserver.properties"] ||= StringIO.new(<<-PROPS)
|
|
107
107
|
mainclass = org.eclipse.jetty.runner.Runner
|
|
108
108
|
args = args0,args1,args2,args3,args4,args5,args6
|
|
109
|
-
props = jetty.home
|
|
110
109
|
args0 = --host
|
|
111
110
|
args1 = {{host}}
|
|
112
111
|
args2 = --port
|
|
@@ -114,7 +113,10 @@ args3 = {{port}}
|
|
|
114
113
|
args4 = --config
|
|
115
114
|
args5 = {{config}}
|
|
116
115
|
args6 = {{warfile}}
|
|
116
|
+
props = jetty.home,org.eclipse.jetty.util.log.class,org.eclipse.jetty.util.log.stderr.ESCAPE
|
|
117
117
|
jetty.home = {{webroot}}
|
|
118
|
+
org.eclipse.jetty.util.log.class = org.eclipse.jetty.util.log.StdErrLog
|
|
119
|
+
org.eclipse.jetty.util.log.stderr.ESCAPE = false
|
|
118
120
|
PROPS
|
|
119
121
|
end
|
|
120
122
|
end
|
data/lib/warbler/zip_support.rb
CHANGED
data/lib/warbler_jar.jar
CHANGED
|
Binary file
|
data/warble.rb
CHANGED
|
@@ -1,8 +1,25 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Warbler is designed to auto-detect "traits" of your application based on the presence of various files.
|
|
2
|
+
# In some cases this is ambiguous, or there is a desire to disable certain traits from being detected
|
|
3
|
+
# and a list of traits can be supplied to override this.
|
|
4
|
+
#
|
|
5
|
+
# This is an advanced option, and must be a complete list of traits. Using this capability disables
|
|
6
|
+
# some of Warbler's validation and conflict detection that causes traits to be automatically enabled and
|
|
7
|
+
# disabled as required.
|
|
8
|
+
# - `Warbler::Traits::Jar` - package as a normal executable java archive (jar) application
|
|
9
|
+
# - `Warbler::Traits::War` - package as an executable web archive (war) application
|
|
10
|
+
# - `Warbler::Traits::Bundler` - package with the gems implied by a bundle Gemfile/Gemfile.lock
|
|
11
|
+
# - `Warbler::Traits::Gemspec` - package with the gems implied by a gemspec
|
|
12
|
+
# - `Warbler::Traits::NoGemspec` - package only with the gems implied by that in a local `lib` folder
|
|
13
|
+
# - `Warbler::Traits::JBundler` - (deprecated, experimental) package with the jars implied by a `Jarfile`
|
|
14
|
+
# - `Warbler::Traits::Rails` - package with the necessary startup logic to boot a Rails application
|
|
15
|
+
# - `Warbler::Traits::Rack` - package with the necessary startup logic to boot a standalone Rack (non-Rails) application
|
|
16
|
+
# forced_traits = [Warbler::Traits::Jar]
|
|
17
|
+
|
|
18
|
+
# Disable Rake-environment-task framework detection for Rails applications by uncommenting/setting to false
|
|
2
19
|
# Warbler.framework_detection = false
|
|
3
20
|
|
|
4
|
-
# Warbler
|
|
5
|
-
Warbler::Config.new do |config|
|
|
21
|
+
# Configure a new Warbler application assembly
|
|
22
|
+
Warbler::Config.new(forced_traits: defined?(forced_traits) ? forced_traits : nil) do |config|
|
|
6
23
|
# Features: additional options controlling how the jar is built.
|
|
7
24
|
# Currently the following features are supported:
|
|
8
25
|
# - *gemjar*: package the gem repository in a jar file in WEB-INF/lib
|
|
@@ -101,14 +118,20 @@ Warbler::Config.new do |config|
|
|
|
101
118
|
# config.compile_gems = false
|
|
102
119
|
|
|
103
120
|
# When set it specify the bytecode version for compiled class files
|
|
104
|
-
# config.bytecode_version = "1.
|
|
121
|
+
# config.bytecode_version = "1.8"
|
|
105
122
|
|
|
106
123
|
# When set to true, Warbler will override the value of ENV['GEM_HOME'] even it
|
|
107
124
|
# has already been set. When set to false it will use any existing value of
|
|
108
125
|
# GEM_HOME if it is set.
|
|
109
126
|
# config.override_gem_home = true
|
|
110
127
|
|
|
111
|
-
#
|
|
128
|
+
# Specify executable
|
|
129
|
+
# Default: First item from alphabetized Gemspec executables array
|
|
130
|
+
# Takes either of two forms:
|
|
131
|
+
# o String: Relative path to the executable from your project root
|
|
132
|
+
# o Two-element Array:
|
|
133
|
+
# [0] Name of the gem that contains the executable
|
|
134
|
+
# [1] Relative path to the executable from the gem root
|
|
112
135
|
# config.executable = ["rake", "bin/rake"]
|
|
113
136
|
|
|
114
137
|
# Sets default (prefixed) parameters for the executables
|
|
@@ -165,7 +188,7 @@ Warbler::Config.new do |config|
|
|
|
165
188
|
# is simply embedded in web.xml.
|
|
166
189
|
# The script is evaluated in a Rack::Builder to load the application.
|
|
167
190
|
# Examples:
|
|
168
|
-
# config.webxml.rackup.path = 'WEB-INF/hello.ru'
|
|
191
|
+
# config.webxml.rackup.path = '/WEB-INF/hello.ru'
|
|
169
192
|
# config.webxml.rackup = %{require './lib/demo'; run Rack::Adapter::Camping.new(Demo)}
|
|
170
193
|
# config.webxml.rackup = require 'cgi' && CGI::escapeHTML(File.read("config.ru"))
|
|
171
194
|
|
data/warbler.gemspec
CHANGED
|
@@ -16,20 +16,32 @@ Rails, or Rack application. Warbler provides a minimal, flexible, Ruby-like way
|
|
|
16
16
|
bundle up all of your application files for deployment to a Java environment.}
|
|
17
17
|
|
|
18
18
|
gem.files = `git ls-files`.split("\n").
|
|
19
|
-
reject { |file| file =~ /^\./ }. # .gitignore, .
|
|
19
|
+
reject { |file| file =~ /^\./ }. # .gitignore, .github
|
|
20
20
|
reject { |file| file =~ /^spec|test\// }. # spec/**/*.spec
|
|
21
21
|
reject { |file| file =~ /^integration\// }. # (un-used) *.rake files
|
|
22
22
|
reject { |file| file =~ /^rakelib\// } # (un-used) *.rake files
|
|
23
|
+
gem.files << "lib/warbler_jar.jar"
|
|
24
|
+
|
|
23
25
|
gem.test_files = [] # tests and specs add 700k to the gem, so don't include them
|
|
24
26
|
gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
|
25
27
|
gem.require_paths = ["lib"]
|
|
26
28
|
|
|
27
29
|
gem.rdoc_options = ["--main", "README.rdoc", "-H", "-f", "darkfish"]
|
|
28
30
|
|
|
29
|
-
gem.
|
|
30
|
-
|
|
31
|
-
gem.add_runtime_dependency '
|
|
32
|
-
gem.add_runtime_dependency '
|
|
33
|
-
gem.
|
|
34
|
-
gem.
|
|
31
|
+
gem.required_ruby_version = ">= 3.1"
|
|
32
|
+
|
|
33
|
+
gem.add_runtime_dependency 'rake', ['~> 13.0', '>= 13.0.3']
|
|
34
|
+
gem.add_runtime_dependency 'rexml', '~> 3.0'
|
|
35
|
+
gem.add_runtime_dependency 'jruby-jars', ['>= 9.4', '< 10.2']
|
|
36
|
+
gem.add_runtime_dependency 'jruby-rack', ['>= 1.2.7', '< 1.4']
|
|
37
|
+
gem.add_runtime_dependency 'rubyzip', ['>= 2.1.0', '< 4']
|
|
38
|
+
gem.add_runtime_dependency 'ostruct', '~> 0.6.2'
|
|
39
|
+
|
|
40
|
+
gem.add_development_dependency 'rspec', '~> 3.0'
|
|
41
|
+
gem.add_development_dependency 'drb', ['~> 2.2', '>= 2.2.3']
|
|
42
|
+
gem.add_development_dependency 'ruby-maven', '~> 3.9'
|
|
43
|
+
gem.add_development_dependency 'bigdecimal' # Needed workaround for maven-tools > vertus > axiom-types lack of explicit bigdecimal dependency for JRuby 10
|
|
44
|
+
|
|
45
|
+
# JBundler is unsupported on JRuby 10.1
|
|
46
|
+
gem.add_development_dependency 'jbundler', '~> 0.9.5' if RUBY_VERSION.to_f < 4.0
|
|
35
47
|
end
|
data/web.xml.erb
CHANGED
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
<!--
|
|
6
6
|
<display-name>Uncomment and put name :here: for Tomcat Dashboard</display-name>-->
|
|
7
7
|
|
|
8
|
-
<%# NOTE: to be renamed to servlet_context_params %>
|
|
9
8
|
<%- webxml.context_params.each do |name, value| -%>
|
|
10
9
|
<context-param>
|
|
11
10
|
<param-name><%= name %></param-name>
|
|
@@ -13,7 +12,6 @@
|
|
|
13
12
|
</context-param>
|
|
14
13
|
<%- end -%>
|
|
15
14
|
|
|
16
|
-
<%- if webxml.respond_to?(:servlet_filter) -%>
|
|
17
15
|
<filter>
|
|
18
16
|
<filter-name><%= webxml.servlet_filter_name %></filter-name>
|
|
19
17
|
<filter-class><%= webxml.servlet_filter %></filter-class>
|
|
@@ -23,29 +21,12 @@
|
|
|
23
21
|
<filter-name><%= webxml.servlet_filter_name %></filter-name>
|
|
24
22
|
<url-pattern><%= webxml.servlet_filter_url_pattern %></url-pattern>
|
|
25
23
|
</filter-mapping>
|
|
26
|
-
<%- else -%> <%# NOTE: due compatibility when warbler gets downgraded to 2.0.0 %>
|
|
27
|
-
<filter>
|
|
28
|
-
<filter-name>RackFilter</filter-name>
|
|
29
|
-
<filter-class>org.jruby.rack.RackFilter</filter-class>
|
|
30
|
-
<async-supported>true</async-supported>
|
|
31
|
-
</filter>
|
|
32
|
-
<filter-mapping>
|
|
33
|
-
<filter-name>RackFilter</filter-name>
|
|
34
|
-
<url-pattern>/*</url-pattern>
|
|
35
|
-
</filter-mapping>
|
|
36
|
-
<%- end -%>
|
|
37
24
|
|
|
38
|
-
<%- if webxml.respond_to?(:servlet_context_listeners) -%>
|
|
39
25
|
<%- webxml.servlet_context_listeners.each do |listener| -%>
|
|
40
26
|
<listener>
|
|
41
27
|
<listener-class><%= listener %></listener-class>
|
|
42
28
|
</listener>
|
|
43
29
|
<%- end -%>
|
|
44
|
-
<%- else -%> <%# NOTE: due compatibility when warbler gets downgraded to 2.0.0 %>
|
|
45
|
-
<listener>
|
|
46
|
-
<listener-class><%= webxml.servlet_context_listener %></listener-class>
|
|
47
|
-
</listener>
|
|
48
|
-
<%- end -%>
|
|
49
30
|
|
|
50
31
|
<%- [webxml.jndi].flatten.each do |jndi| -%>
|
|
51
32
|
<resource-ref>
|
metadata
CHANGED
|
@@ -1,111 +1,198 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: warbler
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.1.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Nick Sieger
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
13
|
+
name: rake
|
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|
|
15
15
|
requirements:
|
|
16
|
+
- - "~>"
|
|
17
|
+
- !ruby/object:Gem::Version
|
|
18
|
+
version: '13.0'
|
|
16
19
|
- - ">="
|
|
17
20
|
- !ruby/object:Gem::Version
|
|
18
|
-
version:
|
|
19
|
-
name: rake
|
|
20
|
-
prerelease: false
|
|
21
|
+
version: 13.0.3
|
|
21
22
|
type: :runtime
|
|
23
|
+
prerelease: false
|
|
22
24
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
25
|
requirements:
|
|
26
|
+
- - "~>"
|
|
27
|
+
- !ruby/object:Gem::Version
|
|
28
|
+
version: '13.0'
|
|
24
29
|
- - ">="
|
|
25
30
|
- !ruby/object:Gem::Version
|
|
26
|
-
version:
|
|
31
|
+
version: 13.0.3
|
|
27
32
|
- !ruby/object:Gem::Dependency
|
|
33
|
+
name: rexml
|
|
28
34
|
requirement: !ruby/object:Gem::Requirement
|
|
29
35
|
requirements:
|
|
30
|
-
- - "
|
|
36
|
+
- - "~>"
|
|
31
37
|
- !ruby/object:Gem::Version
|
|
32
|
-
version:
|
|
33
|
-
name: jruby-jars
|
|
34
|
-
prerelease: false
|
|
38
|
+
version: '3.0'
|
|
35
39
|
type: :runtime
|
|
40
|
+
prerelease: false
|
|
36
41
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
42
|
requirements:
|
|
38
|
-
- - "
|
|
43
|
+
- - "~>"
|
|
39
44
|
- !ruby/object:Gem::Version
|
|
40
|
-
version:
|
|
45
|
+
version: '3.0'
|
|
41
46
|
- !ruby/object:Gem::Dependency
|
|
47
|
+
name: jruby-jars
|
|
42
48
|
requirement: !ruby/object:Gem::Requirement
|
|
43
49
|
requirements:
|
|
44
50
|
- - ">="
|
|
45
51
|
- !ruby/object:Gem::Version
|
|
46
|
-
version:
|
|
52
|
+
version: '9.4'
|
|
47
53
|
- - "<"
|
|
48
54
|
- !ruby/object:Gem::Version
|
|
49
|
-
version: '
|
|
50
|
-
name: jruby-rack
|
|
51
|
-
prerelease: false
|
|
55
|
+
version: '10.2'
|
|
52
56
|
type: :runtime
|
|
57
|
+
prerelease: false
|
|
53
58
|
version_requirements: !ruby/object:Gem::Requirement
|
|
54
59
|
requirements:
|
|
55
60
|
- - ">="
|
|
56
61
|
- !ruby/object:Gem::Version
|
|
57
|
-
version:
|
|
62
|
+
version: '9.4'
|
|
58
63
|
- - "<"
|
|
59
64
|
- !ruby/object:Gem::Version
|
|
60
|
-
version: '
|
|
65
|
+
version: '10.2'
|
|
61
66
|
- !ruby/object:Gem::Dependency
|
|
67
|
+
name: jruby-rack
|
|
62
68
|
requirement: !ruby/object:Gem::Requirement
|
|
63
69
|
requirements:
|
|
64
|
-
- - "
|
|
70
|
+
- - ">="
|
|
65
71
|
- !ruby/object:Gem::Version
|
|
66
|
-
version:
|
|
72
|
+
version: 1.2.7
|
|
67
73
|
- - "<"
|
|
68
74
|
- !ruby/object:Gem::Version
|
|
69
75
|
version: '1.4'
|
|
70
|
-
name: rubyzip
|
|
71
|
-
prerelease: false
|
|
72
76
|
type: :runtime
|
|
77
|
+
prerelease: false
|
|
73
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
74
79
|
requirements:
|
|
75
|
-
- - "
|
|
80
|
+
- - ">="
|
|
76
81
|
- !ruby/object:Gem::Version
|
|
77
|
-
version:
|
|
82
|
+
version: 1.2.7
|
|
78
83
|
- - "<"
|
|
79
84
|
- !ruby/object:Gem::Version
|
|
80
85
|
version: '1.4'
|
|
81
86
|
- !ruby/object:Gem::Dependency
|
|
87
|
+
name: rubyzip
|
|
88
|
+
requirement: !ruby/object:Gem::Requirement
|
|
89
|
+
requirements:
|
|
90
|
+
- - ">="
|
|
91
|
+
- !ruby/object:Gem::Version
|
|
92
|
+
version: 2.1.0
|
|
93
|
+
- - "<"
|
|
94
|
+
- !ruby/object:Gem::Version
|
|
95
|
+
version: '4'
|
|
96
|
+
type: :runtime
|
|
97
|
+
prerelease: false
|
|
98
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
99
|
+
requirements:
|
|
100
|
+
- - ">="
|
|
101
|
+
- !ruby/object:Gem::Version
|
|
102
|
+
version: 2.1.0
|
|
103
|
+
- - "<"
|
|
104
|
+
- !ruby/object:Gem::Version
|
|
105
|
+
version: '4'
|
|
106
|
+
- !ruby/object:Gem::Dependency
|
|
107
|
+
name: ostruct
|
|
82
108
|
requirement: !ruby/object:Gem::Requirement
|
|
83
109
|
requirements:
|
|
84
110
|
- - "~>"
|
|
85
111
|
- !ruby/object:Gem::Version
|
|
86
|
-
version:
|
|
87
|
-
|
|
112
|
+
version: 0.6.2
|
|
113
|
+
type: :runtime
|
|
114
|
+
prerelease: false
|
|
115
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
116
|
+
requirements:
|
|
117
|
+
- - "~>"
|
|
118
|
+
- !ruby/object:Gem::Version
|
|
119
|
+
version: 0.6.2
|
|
120
|
+
- !ruby/object:Gem::Dependency
|
|
121
|
+
name: rspec
|
|
122
|
+
requirement: !ruby/object:Gem::Requirement
|
|
123
|
+
requirements:
|
|
124
|
+
- - "~>"
|
|
125
|
+
- !ruby/object:Gem::Version
|
|
126
|
+
version: '3.0'
|
|
127
|
+
type: :development
|
|
88
128
|
prerelease: false
|
|
129
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
130
|
+
requirements:
|
|
131
|
+
- - "~>"
|
|
132
|
+
- !ruby/object:Gem::Version
|
|
133
|
+
version: '3.0'
|
|
134
|
+
- !ruby/object:Gem::Dependency
|
|
135
|
+
name: drb
|
|
136
|
+
requirement: !ruby/object:Gem::Requirement
|
|
137
|
+
requirements:
|
|
138
|
+
- - "~>"
|
|
139
|
+
- !ruby/object:Gem::Version
|
|
140
|
+
version: '2.2'
|
|
141
|
+
- - ">="
|
|
142
|
+
- !ruby/object:Gem::Version
|
|
143
|
+
version: 2.2.3
|
|
89
144
|
type: :development
|
|
145
|
+
prerelease: false
|
|
90
146
|
version_requirements: !ruby/object:Gem::Requirement
|
|
91
147
|
requirements:
|
|
92
148
|
- - "~>"
|
|
93
149
|
- !ruby/object:Gem::Version
|
|
94
|
-
version: '
|
|
150
|
+
version: '2.2'
|
|
151
|
+
- - ">="
|
|
152
|
+
- !ruby/object:Gem::Version
|
|
153
|
+
version: 2.2.3
|
|
95
154
|
- !ruby/object:Gem::Dependency
|
|
155
|
+
name: ruby-maven
|
|
96
156
|
requirement: !ruby/object:Gem::Requirement
|
|
97
157
|
requirements:
|
|
98
158
|
- - "~>"
|
|
99
159
|
- !ruby/object:Gem::Version
|
|
100
|
-
version: '
|
|
101
|
-
|
|
160
|
+
version: '3.9'
|
|
161
|
+
type: :development
|
|
162
|
+
prerelease: false
|
|
163
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
164
|
+
requirements:
|
|
165
|
+
- - "~>"
|
|
166
|
+
- !ruby/object:Gem::Version
|
|
167
|
+
version: '3.9'
|
|
168
|
+
- !ruby/object:Gem::Dependency
|
|
169
|
+
name: bigdecimal
|
|
170
|
+
requirement: !ruby/object:Gem::Requirement
|
|
171
|
+
requirements:
|
|
172
|
+
- - ">="
|
|
173
|
+
- !ruby/object:Gem::Version
|
|
174
|
+
version: '0'
|
|
175
|
+
type: :development
|
|
102
176
|
prerelease: false
|
|
177
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
178
|
+
requirements:
|
|
179
|
+
- - ">="
|
|
180
|
+
- !ruby/object:Gem::Version
|
|
181
|
+
version: '0'
|
|
182
|
+
- !ruby/object:Gem::Dependency
|
|
183
|
+
name: jbundler
|
|
184
|
+
requirement: !ruby/object:Gem::Requirement
|
|
185
|
+
requirements:
|
|
186
|
+
- - "~>"
|
|
187
|
+
- !ruby/object:Gem::Version
|
|
188
|
+
version: 0.9.5
|
|
103
189
|
type: :development
|
|
190
|
+
prerelease: false
|
|
104
191
|
version_requirements: !ruby/object:Gem::Requirement
|
|
105
192
|
requirements:
|
|
106
193
|
- - "~>"
|
|
107
194
|
- !ruby/object:Gem::Version
|
|
108
|
-
version:
|
|
195
|
+
version: 0.9.5
|
|
109
196
|
description: |-
|
|
110
197
|
Warbler is a gem to make a Java jar or war file out of any Ruby,
|
|
111
198
|
Rails, or Rack application. Warbler provides a minimal, flexible, Ruby-like way to
|
|
@@ -116,8 +203,8 @@ executables:
|
|
|
116
203
|
extensions: []
|
|
117
204
|
extra_rdoc_files: []
|
|
118
205
|
files:
|
|
206
|
+
- CHANGELOG.md
|
|
119
207
|
- Gemfile
|
|
120
|
-
- History.txt
|
|
121
208
|
- LICENSE.txt
|
|
122
209
|
- Mavenfile
|
|
123
210
|
- README.rdoc
|
|
@@ -156,11 +243,9 @@ files:
|
|
|
156
243
|
- lib/warbler/traits/rails.rb
|
|
157
244
|
- lib/warbler/traits/war.rb
|
|
158
245
|
- lib/warbler/version.rb
|
|
159
|
-
- lib/warbler/war.rb
|
|
160
246
|
- lib/warbler/web_server.rb
|
|
161
247
|
- lib/warbler/zip_support.rb
|
|
162
248
|
- lib/warbler_jar.jar
|
|
163
|
-
- pom.xml
|
|
164
249
|
- warble.rb
|
|
165
250
|
- warbler.gemspec
|
|
166
251
|
- web.xml.erb
|
|
@@ -168,7 +253,6 @@ homepage: https://github.com/jruby/warbler
|
|
|
168
253
|
licenses:
|
|
169
254
|
- MIT
|
|
170
255
|
metadata: {}
|
|
171
|
-
post_install_message:
|
|
172
256
|
rdoc_options:
|
|
173
257
|
- "--main"
|
|
174
258
|
- README.rdoc
|
|
@@ -181,16 +265,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
181
265
|
requirements:
|
|
182
266
|
- - ">="
|
|
183
267
|
- !ruby/object:Gem::Version
|
|
184
|
-
version: '
|
|
268
|
+
version: '3.1'
|
|
185
269
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
186
270
|
requirements:
|
|
187
271
|
- - ">="
|
|
188
272
|
- !ruby/object:Gem::Version
|
|
189
273
|
version: '0'
|
|
190
274
|
requirements: []
|
|
191
|
-
|
|
192
|
-
rubygems_version: 2.6.14.1
|
|
193
|
-
signing_key:
|
|
275
|
+
rubygems_version: 3.7.2
|
|
194
276
|
specification_version: 4
|
|
195
277
|
summary: Warbler chirpily constructs .war files of your Rails applications.
|
|
196
278
|
test_files: []
|