warbler 2.1.0 → 2.1.2
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 +4 -4
- data/{History.txt → CHANGELOG.md} +63 -45
- data/Gemfile +5 -7
- data/LICENSE.txt +4 -6
- data/Mavenfile +16 -23
- data/README.rdoc +56 -13
- data/Rakefile +1 -3
- data/ext/JarMain.java +99 -98
- data/ext/WarMain.java +62 -82
- data/lib/warbler/bundler_helper.rb +1 -8
- data/lib/warbler/config.rb +11 -11
- data/lib/warbler/gems.rb +3 -7
- data/lib/warbler/jar.rb +3 -12
- data/lib/warbler/task.rb +8 -5
- data/lib/warbler/templates/bundler.erb +0 -3
- data/lib/warbler/templates/jar.erb +4 -2
- data/lib/warbler/templates/war.erb +3 -1
- data/lib/warbler/traits/bundler.rb +75 -42
- data/lib/warbler/traits/gemspec.rb +4 -0
- data/lib/warbler/traits/jar.rb +5 -5
- data/lib/warbler/traits/jbundler.rb +2 -1
- 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 +4 -0
- data/lib/warbler/traits.rb +29 -5
- data/lib/warbler/version.rb +1 -1
- data/lib/warbler/web_server.rb +3 -1
- data/lib/warbler_jar.jar +0 -0
- data/warble.rb +27 -10
- data/warbler.gemspec +10 -4
- data/web.xml.erb +0 -19
- metadata +73 -20
- data/lib/warbler/war.rb +0 -8
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 34fe8d21840c8677062066d0df7979b427676ec18dc428e268fe7973f0bb320f
|
|
4
|
+
data.tar.gz: 5a68813d0b80ad5b705cb2cd1045ad65ef618c28ee3e9316ca179bf1f3522574
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9c84e0abec9a450e7fdbacd1eb88b0f17da8da95defb6092c476e30f4d90d72cf9413cea636716ffe71cbe170904b71766a5b4e80c7ceea68cda3856e9636675
|
|
7
|
+
data.tar.gz: b5c5aef56f17c17c2f6b30d1faa52664b72c685c82b96961efaee9fd5a5bc1a5561e0547bbd17d3824d0c61638bf3bac19c4d919d5b52b6f9070f2df0b125751
|
|
@@ -1,6 +1,24 @@
|
|
|
1
|
-
|
|
1
|
+
## 2.1.2
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
- #649: fix: further improve isolation of warbled jars/wars from host bundler configuration
|
|
4
|
+
- #648: fix: further improve isolation of warbled jars/wars from user/host gem paths
|
|
5
|
+
- #465: fix: remove duplication of bundler path gems in warbled jars/wars
|
|
6
|
+
- #331: fix: correct support for `gem_excludes` inside bundler git specs
|
|
7
|
+
- chore: relax jruby-rack requirement to allow compatibility with upcoming 2.0.x
|
|
8
|
+
|
|
9
|
+
## 2.1.1
|
|
10
|
+
|
|
11
|
+
- #624, #635, #623: fix: ensure compatibility with JRuby 10.1
|
|
12
|
+
- #583: fix: Create config dir if it's missing for simpler usage
|
|
13
|
+
- #588: fix: NullPointerException during shutdown with executable war files
|
|
14
|
+
- #589: fix: Jetty wars don't have console logging enabled by default
|
|
15
|
+
- #617: fix: correct ability to configure/override/force specific traits via Config.new(forced_traits: [...])
|
|
16
|
+
- #591: chore: clean up obsolete & deprecated code from 2.0.x and old Bundler versions
|
|
17
|
+
- #592: chore: relax rubyzip requirement to allow rubyzip 2.x
|
|
18
|
+
- #593: chore: relax jruby-rack requirement to allow compatibility with upcoming 1.3.x
|
|
19
|
+
- #634: chore: deprecate JBundler trait for removal
|
|
20
|
+
|
|
21
|
+
## 2.1.0
|
|
4
22
|
|
|
5
23
|
Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
6
24
|
|
|
@@ -17,38 +35,38 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
17
35
|
- #575: Fix Gem path issues on JRuby 9.4.x
|
|
18
36
|
- #574: Bump default Jetty version for executables to 9.4.58.v20250814
|
|
19
37
|
|
|
20
|
-
|
|
38
|
+
## 2.0.5
|
|
21
39
|
|
|
22
40
|
- #427: Check Java properties when looking up RAILS_ENV
|
|
23
41
|
- #424: Rails Webpacker support
|
|
24
42
|
- #397: Avoid warnings under JRuby 9K
|
|
25
43
|
|
|
26
|
-
|
|
44
|
+
## 2.0.4
|
|
27
45
|
|
|
28
46
|
- fix: an instance variable name typo (@servlet_context_listeners)
|
|
29
47
|
- #383: add bundler monkey patch
|
|
30
48
|
|
|
31
|
-
|
|
49
|
+
## 2.0.3
|
|
32
50
|
|
|
33
51
|
- Remove test_files from gemspec to save 700k
|
|
34
52
|
|
|
35
|
-
|
|
53
|
+
## 2.0.2
|
|
36
54
|
|
|
37
55
|
- #380: exclude spec/integration/rakelib and dot-files being packed into .gem
|
|
38
56
|
- #379: 2.0.1 regression due forcing GEM_PATH = GEM_HOME
|
|
39
57
|
|
|
40
|
-
|
|
58
|
+
## 2.0.1
|
|
41
59
|
|
|
42
60
|
- #367: avoid duplicate .jar copies in WEB-INF/lib
|
|
43
61
|
- #364: support for compiling .rb files using jrubyc with options
|
|
44
62
|
- #362: limit rubyzip version to not match too far
|
|
45
63
|
- #363: [backport] support for running with (recent) rubyzip 1.2.0
|
|
46
64
|
|
|
47
|
-
|
|
65
|
+
## 2.0.0
|
|
48
66
|
|
|
49
67
|
- Initial release with 9k support
|
|
50
68
|
|
|
51
|
-
|
|
69
|
+
## 1.4.9
|
|
52
70
|
|
|
53
71
|
- Fixed a bug in detecting default PORT for executable WAR
|
|
54
72
|
- #332: Warbler not picking up new Bundler convention of 'exe' directory for executables
|
|
@@ -56,11 +74,11 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
56
74
|
- Added the ability to set custom port for Jetty launcher with
|
|
57
75
|
warbler.port or PORT env var
|
|
58
76
|
|
|
59
|
-
|
|
77
|
+
## 1.4.7
|
|
60
78
|
|
|
61
79
|
- #319: Adds capacity to use the jruby-jars gem version for JRuby 9k.
|
|
62
80
|
|
|
63
|
-
|
|
81
|
+
## 1.4.6
|
|
64
82
|
- #318: polish *scripts/rails* - require_relative should no longer be used
|
|
65
83
|
- #315: Removed custom Jetty launcher in favor of jetty-runner
|
|
66
84
|
- #316: Sprockets manifest name change
|
|
@@ -68,7 +86,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
68
86
|
- #311: Don't clear the environment if a java executable is found
|
|
69
87
|
- #268: Compile's clearing of ENV vars makes it impossible to use custom compile vars
|
|
70
88
|
|
|
71
|
-
|
|
89
|
+
## 1.4.5
|
|
72
90
|
- #282: Wrong default GEM_HOME in generated META-INF/init.rb
|
|
73
91
|
- #305: warbler.rb: Document jar_extension, autodeploy_dir options
|
|
74
92
|
- #304: enable ENV['RACK_ENV'] to honor command line environment variable
|
|
@@ -76,7 +94,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
76
94
|
- #291: Include most current gem version in README
|
|
77
95
|
- #280: config.webserver = 'jetty' (by default)
|
|
78
96
|
|
|
79
|
-
|
|
97
|
+
## 1.4.4
|
|
80
98
|
- #271: LoadError while excute rake command with runnable .war archive
|
|
81
99
|
- #273: filtering support with `config.move_jars_to_webinf_lib`
|
|
82
100
|
- #270: don't swallow compiler errors with backticks
|
|
@@ -87,7 +105,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
87
105
|
- #275: for jruby-1.7.13 we do not want to force load bouncy-castle jars
|
|
88
106
|
- #276: unnecessary rubyzip dependency on "< 1.1"
|
|
89
107
|
|
|
90
|
-
|
|
108
|
+
## 1.4.3
|
|
91
109
|
- Fixed a bug w/ symlinks that was introduced around jruby-1.7.10
|
|
92
110
|
- #258: Bytecode version option for compiled class files
|
|
93
111
|
- #259: Update README.rdoc to not require warbler in Gemfile
|
|
@@ -95,7 +113,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
95
113
|
- #167: Excluding rb and class files when using compiled flag
|
|
96
114
|
- #254: Fixes #167 by excluding config.excludes from compiled files
|
|
97
115
|
|
|
98
|
-
|
|
116
|
+
## 1.4.2
|
|
99
117
|
- #241: jars from jruby.jar itself do not get copied over to WEB-INF/lib
|
|
100
118
|
- #199: javascript_include_tag and stylesheet_link_tag not generating digestions
|
|
101
119
|
- #247: better support for Rails 4 asset pipeline
|
|
@@ -103,7 +121,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
103
121
|
- #243: Added the move_jars_to_webinf_lib method back in...
|
|
104
122
|
- #249: Warbler 1.4.1 fails to compile on Windows
|
|
105
123
|
|
|
106
|
-
|
|
124
|
+
## 1.4.1
|
|
107
125
|
- Support for JBundler
|
|
108
126
|
- #165: Problem with bundler git gems
|
|
109
127
|
- #239: Supresses a warning when using bundler
|
|
@@ -111,7 +129,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
111
129
|
- #220: For Rack-only apps, WEB-INF should be added to $LOAD_PATH
|
|
112
130
|
- #218: Invoke jrubyc using system to ensure that STDERR from jrubyc is shown
|
|
113
131
|
|
|
114
|
-
|
|
132
|
+
## 1.4.0
|
|
115
133
|
|
|
116
134
|
- Support for Rails 4.x
|
|
117
135
|
- Improved runnable so `rails` command works w/o script dir
|
|
@@ -130,14 +148,14 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
130
148
|
- #204: Reset RubyGems gemspec cache between tests
|
|
131
149
|
- #203: Test ordering issue when running with RubyGems 2.1.9
|
|
132
150
|
|
|
133
|
-
|
|
151
|
+
## 1.3.8
|
|
134
152
|
|
|
135
153
|
- Numerous fixes related to -S option and local environment.
|
|
136
154
|
- #162: Close the URLClassLoader before deleting tempJARs
|
|
137
155
|
- #161: Comment out config.dirs to match default
|
|
138
156
|
- #158: Warbler looking in the wrong directory for bundler gem
|
|
139
157
|
|
|
140
|
-
|
|
158
|
+
## 1.3.7
|
|
141
159
|
|
|
142
160
|
- #154: Use #load in .rb shims
|
|
143
161
|
- #153: Runnable war error
|
|
@@ -155,18 +173,18 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
155
173
|
- #105: Pick executables deterministically and warn when doing so
|
|
156
174
|
- #104: Default executable is system-dependent
|
|
157
175
|
|
|
158
|
-
|
|
176
|
+
## 1.3.6
|
|
159
177
|
|
|
160
178
|
- #100: fix winstone URL
|
|
161
179
|
|
|
162
|
-
|
|
180
|
+
## 1.3.5
|
|
163
181
|
|
|
164
182
|
- Add config.webserver to give choices for which lightweight Java
|
|
165
183
|
webserver is used in an executable war.
|
|
166
184
|
- Add jenkins-ci.winstone and jetty as embeddable servers
|
|
167
185
|
- #76, #81: fix rubyzip "can't modify frozen string" issue
|
|
168
186
|
|
|
169
|
-
|
|
187
|
+
## 1.3.4
|
|
170
188
|
|
|
171
189
|
- #77, #78: Handle the case when multiple gems exists in a git path
|
|
172
190
|
(Patrick Cheng)
|
|
@@ -176,7 +194,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
176
194
|
threadsafe (Joe Kutner)
|
|
177
195
|
- #37, #64: Fix issues with Bundler and recent Rubygems/Rails
|
|
178
196
|
|
|
179
|
-
|
|
197
|
+
## 1.3.3
|
|
180
198
|
|
|
181
199
|
- Note: 1.3.3 was YANKED due to #62
|
|
182
200
|
- Move all jars to WEB-INF/lib, and leave an empty jar in the original
|
|
@@ -186,18 +204,18 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
186
204
|
- GH #42: Tricks to allow Bundler to find git repo gems even when they
|
|
187
205
|
are excluded form production
|
|
188
206
|
|
|
189
|
-
|
|
207
|
+
## 1.3.2
|
|
190
208
|
|
|
191
209
|
- Compatibility with rake 0.9.x, avoid deprecation warnings and deal
|
|
192
210
|
with new FileList exclusion behavior
|
|
193
211
|
- Exclude config.bundle_without groups properly
|
|
194
212
|
|
|
195
|
-
|
|
213
|
+
## 1.3.1
|
|
196
214
|
|
|
197
215
|
- Pin rake version to ~> 0.8.7 for now. Rake 0.9.0 compatibility will
|
|
198
216
|
follow in a future release.
|
|
199
217
|
|
|
200
|
-
|
|
218
|
+
## 1.3.0
|
|
201
219
|
|
|
202
220
|
- Warbler can now package regular Ruby projects as executable jar
|
|
203
221
|
files. See the README.rdoc file for details.
|
|
@@ -211,7 +229,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
211
229
|
- GH#8: Clean up compiled .class files after building war
|
|
212
230
|
- GH#15: Simplify detection of thread-safe Rails
|
|
213
231
|
|
|
214
|
-
|
|
232
|
+
## 1.2.1
|
|
215
233
|
|
|
216
234
|
- Add --directoryListings=false to Winstone launch by default. In some
|
|
217
235
|
cases (sinatra) Winstone's directory listing masks application
|
|
@@ -221,7 +239,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
221
239
|
environment initialization before the web framework is loaded. See
|
|
222
240
|
config.init_contents in Warbler::Config for details.
|
|
223
241
|
|
|
224
|
-
|
|
242
|
+
## 1.2.0
|
|
225
243
|
|
|
226
244
|
- Drop compatibility with earlier versions of Bundler -- Bundler has
|
|
227
245
|
changed a lot in a short period of time, so I'm expecting the number
|
|
@@ -242,7 +260,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
242
260
|
- Exclude 'tmp/war' directory so that people upgrading from 0.9 won't
|
|
243
261
|
accidentally include it in their war file.
|
|
244
262
|
|
|
245
|
-
|
|
263
|
+
## 1.1.0
|
|
246
264
|
|
|
247
265
|
- Add concept of "features" -- small Rake tasks that run before the
|
|
248
266
|
creation of the war file and make manipulations to the war file
|
|
@@ -262,24 +280,24 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
262
280
|
default. Instead, config.ru is included in the war file.
|
|
263
281
|
- Bump jruby-rack version requirement to 0.9.8.
|
|
264
282
|
|
|
265
|
-
|
|
283
|
+
## 1.0.3
|
|
266
284
|
|
|
267
285
|
- Tracking recent Bundler changes - handle locked Gemfiles differently
|
|
268
286
|
than unlocked ones
|
|
269
287
|
- Handle file-based symlinks, and warn about inoperational directory
|
|
270
288
|
symlinks under non-JRuby versions of Ruby.
|
|
271
289
|
|
|
272
|
-
|
|
290
|
+
## 1.0.2
|
|
273
291
|
|
|
274
292
|
- Add 'warble pluginize' task back. This task now just creates a
|
|
275
293
|
vendor/plugins/warbler/tasks/warbler.rake file. There's no need to
|
|
276
294
|
"vendor" all of Warbler into your application anymore.
|
|
277
295
|
|
|
278
|
-
|
|
296
|
+
## 1.0.1
|
|
279
297
|
|
|
280
298
|
- Fix careless bug where Warbler doesn't work with JRuby 1.4
|
|
281
299
|
|
|
282
|
-
|
|
300
|
+
## 1.0
|
|
283
301
|
|
|
284
302
|
- Warbler hits 1.0! There are enough structural changes in Warbler
|
|
285
303
|
that I feel it's time to roll the major version over to 1.0.
|
|
@@ -295,7 +313,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
295
313
|
- WARBLER-7: Add config.webinf_files option with more support for
|
|
296
314
|
custom web.xml files
|
|
297
315
|
|
|
298
|
-
|
|
316
|
+
## 0.9.14
|
|
299
317
|
|
|
300
318
|
- So, jruby-rack is bundled for one more release. 1.0 will not contain
|
|
301
319
|
any jar files, I promise!
|
|
@@ -306,7 +324,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
306
324
|
(this happened with the Authlogic gem on Edge Rails)
|
|
307
325
|
(thanks Laszlo Bacsi)
|
|
308
326
|
|
|
309
|
-
|
|
327
|
+
## 0.9.13
|
|
310
328
|
|
|
311
329
|
- RailsConf 2009 edition.
|
|
312
330
|
- Only bundled JRuby and JRuby-Rack upgrades. Bug fixes will have to come in 0.9.14.
|
|
@@ -314,7 +332,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
314
332
|
- Upgrade to JRuby 1.3.0RC1 and JRuby-Rack 0.9.4. The latter allows
|
|
315
333
|
Rails 2.3 to work with Warbler.
|
|
316
334
|
|
|
317
|
-
|
|
335
|
+
## 0.9.12
|
|
318
336
|
|
|
319
337
|
- Allow framework auto-detection to be disabled. Set
|
|
320
338
|
`Warbler.framework_detection = false' at the top of config/warble.rb
|
|
@@ -332,7 +350,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
332
350
|
- Ignore gem development dependencies
|
|
333
351
|
- Upgrade to JRuby 1.1.6 and JRuby-Rack 0.9.3
|
|
334
352
|
|
|
335
|
-
|
|
353
|
+
## 0.9.11
|
|
336
354
|
|
|
337
355
|
- Auto-detect Rails and Merb and configure appropriately
|
|
338
356
|
- For Rails, set rails booter, determine max runtimes based on Rails.configuration.threadsafe!,
|
|
@@ -350,7 +368,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
350
368
|
- Upgrade to JRuby 1.1.4 and JRuby-Rack 0.9.2
|
|
351
369
|
- add [] as a way to specify non-identifier keys, example: config.webxml['!@#$%^'] = 'haha'
|
|
352
370
|
|
|
353
|
-
|
|
371
|
+
## 0.9.10
|
|
354
372
|
|
|
355
373
|
- Upgraded to JRuby-Rack 0.9.1. Fixes JRUBY-2620, JRUBY-2594, JRUBY-2507.
|
|
356
374
|
- Now verified to work with Camping and Sinatra. See
|
|
@@ -361,7 +379,7 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
361
379
|
- Fix #<Warbler::WebxmlOpenStruct ...> appearing in web.xml and document workarounds.
|
|
362
380
|
- Add config.autodeploy_dir that, when specified, will create the war there.
|
|
363
381
|
|
|
364
|
-
|
|
382
|
+
## 0.9.9
|
|
365
383
|
|
|
366
384
|
- Now shipping with JRuby-Rack 0.9!
|
|
367
385
|
- Upgrade to JRuby 1.1.1
|
|
@@ -373,36 +391,36 @@ Requires JRuby >= 9.4 due to needing Ruby 3.0+ compatibility.
|
|
|
373
391
|
-- config.webxml.pool.* have been replaced by config.webxml.jruby.(min|max).runtimes
|
|
374
392
|
-- config.webxml.standalone and config.webxml.jruby_home no longer have any effect.
|
|
375
393
|
|
|
376
|
-
|
|
394
|
+
## 0.9.5
|
|
377
395
|
|
|
378
396
|
- Fix bug in plugin warbler.rake task file that would favor loading warbler from gems before the version
|
|
379
397
|
installed as a plugin
|
|
380
398
|
- Upgrade to JRuby 1.1 final and Goldspike 1.6.1
|
|
381
399
|
|
|
382
|
-
|
|
400
|
+
## 0.9.4
|
|
383
401
|
|
|
384
402
|
- Update bundled JRuby to 1.1RC3 and Goldspike to 1.6.
|
|
385
403
|
- Fix inclusion of gems with platform-specific bits (e.g., Hpricot)
|
|
386
404
|
|
|
387
|
-
|
|
405
|
+
## 0.9.3
|
|
388
406
|
|
|
389
407
|
- Update bundled JRuby to 1.1RC2, and Goldspike to 1.5.
|
|
390
408
|
- The bundled JRuby and Goldspike now require JDK 5 or greater. If you wish to use JDK 1.4, use Warbler 0.9.2.
|
|
391
409
|
|
|
392
|
-
|
|
410
|
+
## 0.9.2
|
|
393
411
|
|
|
394
412
|
- Update bundled JRuby to version 1.0.3 and Goldspike 1.4.
|
|
395
413
|
- Add config.java_classes to allow you to copy loose Java classes into WEB-INF/classes.
|
|
396
414
|
- Make jar command a single command string so that jar creation doesn't fail (works around bug in JRuby 1.0.2)
|
|
397
415
|
- Use File.join to form staging directory, should produce the proper jar-command path in Windows
|
|
398
416
|
|
|
399
|
-
|
|
417
|
+
## 0.9.1
|
|
400
418
|
|
|
401
419
|
- Add rake >= 0.7.3 as a dependency in the gem specification.
|
|
402
420
|
- Add debug tasks: war:debug, war:debug:gems, war:debug:public, war:debug:app, war:debug:includes,
|
|
403
421
|
war:debug:excludes, war:debug:java_libs gives you a breakdown of what Warbler expects to package.
|
|
404
422
|
|
|
405
|
-
|
|
423
|
+
## 0.9
|
|
406
424
|
|
|
407
425
|
- Birthday! Warbler is a gem to make a .war file out of a Rails project. The intent is to provide a
|
|
408
426
|
minimal, flexible, ruby-like way to bundle up all of your application files for deployment to a
|
data/Gemfile
CHANGED
|
@@ -2,13 +2,11 @@ source "https://rubygems.org/"
|
|
|
2
2
|
|
|
3
3
|
gemspec
|
|
4
4
|
|
|
5
|
-
# override default maven-tools used by bundler
|
|
6
|
-
gem 'maven-tools', '1.2.3'
|
|
7
|
-
|
|
8
|
-
|
|
9
5
|
group :development, :test do
|
|
10
|
-
gem 'rdoc',
|
|
6
|
+
gem 'rdoc', '~> 7.0', :require => nil
|
|
11
7
|
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
if defined?(JRUBY_VERSION)
|
|
9
|
+
# force jruby-jars to use current JRuby version for testing
|
|
10
|
+
gem 'jruby-jars', '~> ' + JRUBY_VERSION.split('.')[0..2].join('.')
|
|
11
|
+
end
|
|
14
12
|
end
|
data/LICENSE.txt
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
MIT License
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
Warbler (c) 2010-2013 Engine Yard, Inc.
|
|
7
|
-
Warbler (c) 2007-2009 Sun Microsystems, Inc.
|
|
3
|
+
Copyright (c) 2013-2018 The JRuby Team
|
|
4
|
+
Copyright (c) 2010-2013 Engine Yard, Inc.
|
|
5
|
+
Copyright (c) 2007-2009 Sun Microsystems, Inc.
|
|
8
6
|
|
|
9
7
|
Permission is hereby granted, free of charge, to any person
|
|
10
8
|
obtaining a copy of this software and associated documentation files
|
data/Mavenfile
CHANGED
|
@@ -1,24 +1,14 @@
|
|
|
1
1
|
#-*- mode: ruby -*-
|
|
2
|
+
warn "ruby-maven is running fixed JRuby version #{JRUBY_VERSION}"
|
|
2
3
|
|
|
3
4
|
# tell the gem setup for maven where the java sources are
|
|
4
5
|
# and how to name the jar file (default path for the jar: ./lib )
|
|
5
6
|
gemspec( :jar => 'warbler_jar.jar',
|
|
6
7
|
:source => 'ext' )
|
|
7
8
|
|
|
8
|
-
plugin_repository( :url => 'https://central.sonatype.com/repository/maven-snapshots/',
|
|
9
|
-
:id => 'central-snapshots' ) do
|
|
10
|
-
releases 'false'
|
|
11
|
-
snapshots 'true'
|
|
12
|
-
end
|
|
13
|
-
repository( :url => 'https://central.sonatype.com/repository/maven-snapshots/',
|
|
14
|
-
:id => 'central-snapshots' ) do
|
|
15
|
-
releases 'false'
|
|
16
|
-
snapshots 'true'
|
|
17
|
-
end
|
|
18
|
-
|
|
19
9
|
properties(
|
|
20
10
|
'project.build.sourceEncoding' => 'UTF-8',
|
|
21
|
-
'mavengem.wagon.version' => '2.0.
|
|
11
|
+
'mavengem.wagon.version' => '2.0.3',
|
|
22
12
|
'jruby.plugins.version' => '3.0.6',
|
|
23
13
|
'jetty.version' => '9.4.58.v20250814',
|
|
24
14
|
)
|
|
@@ -30,9 +20,9 @@ scope :provided do
|
|
|
30
20
|
end
|
|
31
21
|
|
|
32
22
|
plugin :clean, '3.5.0'
|
|
33
|
-
plugin :compiler, '3.
|
|
34
|
-
plugin :resources, '3.
|
|
35
|
-
plugin :jar, '3.
|
|
23
|
+
plugin :compiler, '3.15.0', :release => '8'
|
|
24
|
+
plugin :resources, '3.5.0'
|
|
25
|
+
plugin :jar, '3.5.0' do
|
|
36
26
|
execute_goals(:phase => 'none') # Avoid a duplicate execution with that defined by the :gemspec directive
|
|
37
27
|
end
|
|
38
28
|
plugin :install, '3.1.4'
|
|
@@ -40,17 +30,20 @@ plugin :install, '3.1.4'
|
|
|
40
30
|
gem 'bundler', '${bundler.version}'
|
|
41
31
|
gem 'jruby-jars', '${jruby.version}'
|
|
42
32
|
|
|
43
|
-
plugin :invoker, '3.
|
|
33
|
+
plugin :invoker, '3.10.1' do
|
|
44
34
|
execute_goals( :install, :run,
|
|
45
35
|
:id => 'integration-test',
|
|
46
|
-
:properties => {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
36
|
+
:properties => {
|
|
37
|
+
'warbler.version' => '${project.version}',
|
|
38
|
+
'jruby.version' => '${jruby.version}',
|
|
39
|
+
'jetty.version' => '${jetty.version}',
|
|
40
|
+
'bundler.version' => '${bundler.version}',
|
|
41
|
+
'jruby.plugins.version' => '${jruby.plugins.version}',
|
|
42
|
+
'style.color' => 'always',
|
|
43
|
+
},
|
|
53
44
|
:goals => ['verify'],
|
|
54
45
|
:projectsDirectory => 'integration',
|
|
46
|
+
:pomIncludes => [ '*/pom.xml' ],
|
|
47
|
+
:pomExcludes => [],
|
|
55
48
|
:streamLogs => true )
|
|
56
49
|
end
|
data/README.rdoc
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
= Warbler
|
|
2
|
-
{rdoc-image:https://
|
|
2
|
+
{rdoc-image:https://img.shields.io/gem/v/warbler}[https://rubygems.org/gems/warbler] {rdoc-image:https://github.com/jruby/warbler/actions/workflows/ci.yml/badge.svg}[https://github.com/jruby/warbler/actions/workflows/ci.yml]
|
|
3
3
|
|
|
4
4
|
Warbler is a gem to make a Java jar or war file out of any Ruby, Rails or Rack
|
|
5
5
|
application. Warbler provides a minimal, flexible, Ruby-like way to bundle up
|
|
@@ -8,9 +8,18 @@ all of your application files for deployment to a Java environment.
|
|
|
8
8
|
Warbler provides a sane set of out-of-the box defaults that should allow most
|
|
9
9
|
Ruby applications to assemble and Just Work.
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
== Compatibility
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
Warbler Status JRuby Java JRuby-Rack Rails Notes
|
|
14
|
+
------- ---------- ---------- ---- ---------- --------- ----------------------------------------------
|
|
15
|
+
2.1 Maintained 9.4 → 10.1 8+ 1.2 → 1.3 5.0 → 8.0 Rails 8.1 may be OK with pure Ruby webservers.
|
|
16
|
+
2.0 EOL 9.2 → 9.3 6+ 1.1 → 1.2 → 6.1
|
|
17
|
+
1.4 EOL 1.1 → 1.7 5+ ? ?
|
|
18
|
+
|
|
19
|
+
For running wars with specific Java web servers, consult jruby-rack compatibility (
|
|
20
|
+
{master}[https://github.com/jruby/jruby-rack/tree/master],
|
|
21
|
+
{1.2-stable}[https://github.com/jruby/jruby-rack/tree/1.2-stable],
|
|
22
|
+
{1.1-stable}[https://github.com/jruby/jruby-rack/tree/1.1-stable] ).
|
|
14
23
|
|
|
15
24
|
== Getting Started
|
|
16
25
|
|
|
@@ -137,10 +146,14 @@ Warbler supports Bundler for gems and git repositories, but not for plain path
|
|
|
137
146
|
components. Warbler will warn when a +:path+ component is found in the +Gemfile+
|
|
138
147
|
and will refuse to include it in the archive.
|
|
139
148
|
|
|
140
|
-
=== JBundler (experimental)
|
|
149
|
+
=== JBundler (deprecated, experimental)
|
|
150
|
+
|
|
151
|
+
Applications that use JBundler[http://github.com/jruby/jbundler], detected via presence of a +Jarfile+, will have
|
|
152
|
+
the jars packaged up into the archive. The JBundler gem is **not** needed for runtime since all jars are already part of the classloader.
|
|
141
153
|
|
|
142
|
-
|
|
143
|
-
|
|
154
|
+
JBundler is EOL; and this capability is thus deprecated for removal in a future release, and is not recommended for use.
|
|
155
|
+
The recommended replacement is bundler with +jar-dependencies+ (bundled with modern JRuby); but requires some work for
|
|
156
|
+
compatibility. See https://github.com/jruby/warbler/issues/481 for more details and contribute if you'd like this feature to be retained and supported.
|
|
144
157
|
|
|
145
158
|
== War Files
|
|
146
159
|
|
|
@@ -183,12 +196,11 @@ of how to configure Warbler to package Camping and Sinatra apps.
|
|
|
183
196
|
|
|
184
197
|
If the default settings are not appropriate for your application, you can
|
|
185
198
|
customize Warbler's behavior. To customize files, libraries, and gems included
|
|
186
|
-
in the .war file, you'll need a config/warble.rb file.
|
|
187
|
-
doing this. With the gem, simply run
|
|
199
|
+
in the .war file, you'll need a +config/warble.rb+ file. To generate one:
|
|
188
200
|
|
|
189
201
|
warble config
|
|
190
202
|
|
|
191
|
-
|
|
203
|
+
Edit the +config/warble.rb+ to your taste. The generated file is
|
|
192
204
|
fully-documented with the available options and default values.
|
|
193
205
|
|
|
194
206
|
=== Archive Layout
|
|
@@ -244,6 +256,39 @@ task to give you more insight into what's going on.
|
|
|
244
256
|
If you think you found a bug, please file one at
|
|
245
257
|
https://github.com/jruby/warbler/issues.
|
|
246
258
|
|
|
259
|
+
=== Common issues with executable wars
|
|
260
|
+
|
|
261
|
+
If your app isn't working or starting up correctly:
|
|
262
|
+
|
|
263
|
+
- <b>CompatVersion errors:</b>
|
|
264
|
+
If you are getting <tt>java.lang.NoClassDefFoundError: org/jruby/CompatVersion</tt> errors at start-up
|
|
265
|
+
you are probably running Warbler with a jruby-rack version which does not yet support JRuby 10+ - it
|
|
266
|
+
swallows the true error making debugging impossible. Ensure you're on jruby-rack `1.2.7+`.
|
|
267
|
+
|
|
268
|
+
- <b>Bundler `restart_with` errors:</b>
|
|
269
|
+
If you are getting <tt>org.jruby.rack.RackInitializationException: No such file or directory - java -cp...</tt>,
|
|
270
|
+
that probably means bundler is trying to switch versions dynamically during start-up because your
|
|
271
|
+
`Gemfile.lock` implies a different locked version of bundler to that packaged with JRuby by default.
|
|
272
|
+
|
|
273
|
+
JRuby/Bundler running embedded inside a jar like this does not support switching bundler versions dynamically.
|
|
274
|
+
|
|
275
|
+
This may happen due to
|
|
276
|
+
- system gems for jruby installation upgradingg bundler to a newer version than packaged by default
|
|
277
|
+
- running <tt>bundle update --bundler</tt>
|
|
278
|
+
- using `BUNDLE_VERSION` to override bundle version which generating/editing your `Gemfile.lock`
|
|
279
|
+
|
|
280
|
+
Options to address this
|
|
281
|
+
- use <tt>bundle config set version system</tt> / <tt>bundle config set disable_shared_gems</tt> to avoid bundler picking system versions
|
|
282
|
+
- ensure your `Gemfile.lock`'s <tt>BUNDLED WITH</tt> version matches the default bundler packaged with your `jruby-jars` version.
|
|
283
|
+
You can check inside the relevant `jruby-stdlib` jar or inside a clean installation dir from your Ruby version manager of choice.
|
|
284
|
+
- remove <tt>BUNDLED WITH</tt> entirely from `Gemfile.lock`. Sometimes bundler will add this back again; so not recommended in the longer term
|
|
285
|
+
|
|
286
|
+
- <b>Rack version compatibility</b>
|
|
287
|
+
An exception happened during JRuby-Rack startup
|
|
288
|
+
no such file to load -- rack/chunked
|
|
289
|
+
You are trying to use Rack 3.x with a jruby-rack version that does not yet support Rack 3. Try upgrading to a compatible
|
|
290
|
+
jruby-rack version, or lock rack at a compatibile version with <tt>gem 'rack', '~> 2.2.0'</tt>. Note that Rack `2.2` requires Rails < `8.1`.
|
|
291
|
+
|
|
247
292
|
== Source
|
|
248
293
|
|
|
249
294
|
You can get the Warbler source using Git, in any of the following ways:
|
|
@@ -256,9 +301,9 @@ https://github.com/jruby/warbler/archive/master.zip.
|
|
|
256
301
|
== Development
|
|
257
302
|
|
|
258
303
|
You can develop Warbler with any implementation of Ruby. To write Warbler code
|
|
259
|
-
and run specs, you need to have Bundler installed and run <tt>bundle</tt> once.
|
|
304
|
+
and run specs, you need to have Bundler installed and run <tt>bundle install</tt> once.
|
|
260
305
|
|
|
261
|
-
After that, simply run
|
|
306
|
+
After that, simply run +rake+.
|
|
262
307
|
|
|
263
308
|
=== Integration Tests
|
|
264
309
|
|
|
@@ -275,7 +320,5 @@ You'll need to have Maven >= 3.1.1 installed, of course: http://maven.apache.org
|
|
|
275
320
|
Warbler is provided under the terms of the MIT license.
|
|
276
321
|
|
|
277
322
|
Warbler (c) 2013-2018 The JRuby Team
|
|
278
|
-
|
|
279
323
|
Warbler (c) 2010-2012 Engine Yard, Inc.
|
|
280
|
-
|
|
281
324
|
Warbler (c) 2007-2009 Sun Microsystems, Inc.
|
data/Rakefile
CHANGED
|
@@ -29,8 +29,6 @@ mvn << "-Dbundler.version=#{Bundler::VERSION}"
|
|
|
29
29
|
mvn << '--no-transfer-progress'
|
|
30
30
|
mvn << '--color=always'
|
|
31
31
|
|
|
32
|
-
mvn.inherit_jruby_version
|
|
33
|
-
|
|
34
32
|
desc 'compile java sources and build jar'
|
|
35
33
|
task :jar do
|
|
36
34
|
success = mvn.prepare_package
|
|
@@ -56,7 +54,7 @@ require 'rdoc/task'
|
|
|
56
54
|
RDoc::Task.new(:docs) do |rd|
|
|
57
55
|
gemspec = Gem::Specification.load(File.expand_path('warbler.gemspec', File.dirname(__FILE__)))
|
|
58
56
|
rd.rdoc_dir = "doc"
|
|
59
|
-
rd.rdoc_files.include("README.rdoc", "
|
|
57
|
+
rd.rdoc_files.include("README.rdoc", "CHANGELOG.md", "LICENSE.txt")
|
|
60
58
|
rd.rdoc_files += gemspec.require_paths
|
|
61
59
|
rd.options << '--title' << "#{gemspec.name}-#{gemspec.version} Documentation"
|
|
62
60
|
rd.options += gemspec.rdoc_options
|