aslakhellesoy-warbler 0.9.13 → 0.9.13.4

Sign up to get free protection for your applications and to get access to all the features.
data/History.txt CHANGED
@@ -1,7 +1,15 @@
1
- == 0.9.13 (In Git)
1
+ == 0.9.14 (In Git)
2
2
 
3
3
  * Ability to set jruby_complete.jar in config/warbler.rb (Aslak Hellesøy)
4
4
 
5
+ == 0.9.13
6
+
7
+ * RailsConf 2009 edition.
8
+ * Only bundled JRuby and JRuby-Rack upgrades. Bug fixes will have to come in 0.9.14.
9
+ * This should also be the last release with bundled JRuby and JRuby-Rack.
10
+ * Upgrade to JRuby 1.3.0RC1 and JRuby-Rack 0.9.4. The latter allows
11
+ Rails 2.3 to work with Warbler.
12
+
5
13
  == 0.9.12
6
14
 
7
15
  * Allow framework auto-detection to be disabled. Set
data/README.txt CHANGED
@@ -26,19 +26,19 @@ Warbler's +warble+ command is just a small wrapper around Rake with internally
26
26
  defined tasks. (Notice "rake" still prints out in the message, but you should
27
27
  substitute "warble" for "rake" on the command line when running this way.)
28
28
 
29
- $ warble -T
30
- rake config # Generate a configuration file to customize your war assembly
31
- rake pluginize # Unpack warbler as a plugin in your Rails application
32
- rake war # Create trunk.war
33
- rake war:app # Copy all application files into the .war
34
- rake war:clean # Clean up the .war file and the staging area
35
- rake war:gems # Unpack all gems into WEB-INF/gems
36
- rake war:jar # Run the jar command to create the .war
37
- rake war:java_libs # Copy all java libraries into the .war
38
- rake war:public # Copy all public HTML files to the root of the .war
39
- rake war:webxml # Generate a web.xml file for the webapp
40
-
41
- Warble makes heavy use of Rake's file and directory tasks, so only recently
29
+ $ warble -T
30
+ rake config # Generate a configuration file to customize your war assembly
31
+ rake pluginize # Unpack warbler as a plugin in your Rails application
32
+ rake war # Create trunk.war
33
+ rake war:app # Copy all application files into the .war
34
+ rake war:clean # Clean up the .war file and the staging area
35
+ rake war:gems # Unpack all gems into WEB-INF/gems
36
+ rake war:jar # Run the jar command to create the .war
37
+ rake war:java_libs # Copy all java libraries into the .war
38
+ rake war:public # Copy all public HTML files to the root of the .war
39
+ rake war:webxml # Generate a web.xml file for the webapp
40
+
41
+ Warbler makes heavy use of Rake's file and directory tasks, so only recently
42
42
  updated files will be copied, making repeated assemblies much faster.
43
43
 
44
44
  == Configuration
@@ -49,10 +49,10 @@ Rails applications are detected automatically and configured appropriately.
49
49
  The following items are set up for you:
50
50
 
51
51
  * The Rails gem is packaged if you haven't vendored Rails.
52
- * Other gems configured in Rails.configuration.gems are packaged (Rails 2.1 or
53
- later)
54
- * Multi-thread-safe execution (as introduced in Rails 2.2) is detected and
55
- runtime pooling is disabled.
52
+ * Other gems configured in Rails.configuration.gems are packaged
53
+ (Rails 2.1 or later)
54
+ * Multi-thread-safe execution (as introduced in Rails 2.2) is detected
55
+ and runtime pooling is disabled.
56
56
 
57
57
  === Merb applications
58
58
 
@@ -66,20 +66,22 @@ contents will be used as the rackup script for your Rack-based application.
66
66
  You will probably need to specify framework and application gems in
67
67
  config/warble.rb.
68
68
 
69
- See http://github.com/nicksieger/jruby-rack/tree/master/examples for examples
69
+ See <a href="http://jruby-rack.kenai.com/sources/main/show/examples">the examples in the jruby-rack project</a>
70
70
  of how to configure Warbler to package Camping and Sinatra apps.
71
71
 
72
72
  === Configuration auto-detect notes
73
73
 
74
- * If you don't have database access in the environment where you package your
75
- application, you may wish to set `Warbler.framework_detection` to false at
76
- the top of config.rb. In this case you may need to specify additional
77
- details such as booter, gems and other settings.
78
- * A more accurate way of detecting a Merb application's gems is needed. Until
79
- then, you will have to specify them in config/warble.rb. See below.
80
- * Is it possible to more generally detect what gems an application uses?
81
- Gem.loaded_specs is available, but the application needs to be loaded first
82
- before its contents are reliable.
74
+ * If you don't have database access in the environment where you
75
+ package your application, you may wish to set
76
+ `Warbler.framework_detection` to false at the top of config.rb. In
77
+ this case you may need to specify additional details such as booter,
78
+ gems and other settings.
79
+ * A more accurate way of detecting a Merb application's gems is
80
+ needed. Until then, you will have to specify them in
81
+ config/warble.rb. See below.
82
+ * Is it possible to more generally detect what gems an application
83
+ uses? Gem.loaded_specs is available, but the application needs to be
84
+ loaded first before its contents are reliable.
83
85
 
84
86
  === Custom configuration
85
87
 
@@ -98,7 +100,7 @@ doing this. With the gem, simply run
98
100
 
99
101
  If you have Warbler installed as a plugin, use the generator:
100
102
 
101
- script/generate warble
103
+ script/generate warble
102
104
 
103
105
  Finally, edit the config/warble.rb to your taste. If you install the gem but
104
106
  later decide you'd like to have it as a plugin, use the +pluginize+ command:
@@ -122,16 +124,17 @@ Java web applications are configured mainly through this file, and Warbler
122
124
  creates a suitable default file for you for use. However, if you need to
123
125
  customize it in any way, you have two options.
124
126
 
125
- 1. If you just want a static web.xml file whose contents you manually control,
126
- you may copy the one generated for you in <tt>tmp/war/WEB-INF/web.xml</tt>
127
- to <tt>config/web.xml</tt> and modify as needed. It will be copied into the
128
- webapp for you.
129
- 2. If you want to inject some dynamic information into the file, copy the
130
- <tt>WARBLER_HOME/web.xml.erb</tt> to <tt>config/web.xml.erb</tt>. Its
131
- contents will be evaluated for you and put in the webapp. Note that you can
132
- also pass arbitrary properties to the ERb template by setting
133
- <tt>config.webxml.customkey</tt> values in your <tt>config/warble.rb</tt>
134
- file.
127
+ 1. If you just want a static web.xml file whose contents you manually
128
+ control, you may copy the one generated for you in
129
+ <tt>tmp/war/WEB-INF/web.xml</tt> to <tt>config/web.xml</tt> and
130
+ modify as needed. It will be copied into the webapp for you.
131
+ 2. If you want to inject some dynamic information into the file, copy
132
+ the <tt>WARBLER_HOME/web.xml.erb</tt> to
133
+ <tt>config/web.xml.erb</tt>. Its contents will be evaluated for you
134
+ and put in the webapp. Note that you can also pass arbitrary
135
+ properties to the ERb template by setting
136
+ <tt>config.webxml.customkey</tt> values in your
137
+ <tt>config/warble.rb</tt> file.
135
138
 
136
139
  For more information on configuration, see Warbler::Config.
137
140
 
@@ -141,17 +144,17 @@ If Warbler isn't packaging the files you were expecting, there are several
141
144
  debug tasks available to give you more insight into what's going on.
142
145
 
143
146
  * <tt>war:debug</tt> prints a YAML dump of the current configuration
144
- * <tt>war:debug:X</tt> prints a list of files that Warbler will include during
145
- that stage of assembly. Valid values of <tt>X</tt> are <tt>app, java_libs,
146
- gems, public, includes, excludes</tt>.
147
+ * <tt>war:debug:X</tt> prints a list of files that Warbler will
148
+ include during that stage of assembly. Valid values of <tt>X</tt>
149
+ are <tt>app, java_libs, gems, public, includes, excludes</tt>.
147
150
 
148
151
  == Source
149
152
 
150
153
  You can get the Warbler source using Git, in any of the following ways:
151
154
 
152
- git clone git://git.caldersphere.net/warbler.git
153
- git clone http://git.caldersphere.net/warbler.git
154
- git clone git://github.com/nicksieger/warbler.git
155
+ git clone git://kenai.com/warbler~main
156
+ git clone git://git.caldersphere.net/warbler.git
157
+ git clone git://github.com/nicksieger/warbler.git
155
158
 
156
159
  You can also download a tarball of Warbler source at
157
160
  http://github.com/nicksieger/warbler/tree/master.
@@ -160,8 +163,8 @@ http://github.com/nicksieger/warbler/tree/master.
160
163
 
161
164
  Warbler is provided under the terms of the MIT license.
162
165
 
163
- Warbler (c) 2007-08 Sun Microsystems, Inc.
166
+ Warbler (c) 2007-2009 Sun Microsystems, Inc.
164
167
 
165
- Warbler also bundles several other pieces of software for convenience. Please
166
- read the file LICENSES.txt to ensure that you agree with the terms of all the
167
- components.
168
+ Warbler also bundles several other pieces of software for convenience.
169
+ Please read the file LICENSES.txt to ensure that you agree with the
170
+ terms of all the components.
data/Rakefile CHANGED
@@ -15,10 +15,9 @@ begin
15
15
  p.email = "nick@nicksieger.com"
16
16
  p.summary = "Warbler chirpily constructs .war files of your Rails applications."
17
17
  p.changes = p.paragraphs_of('History.txt', 0..1).join("\n\n")
18
- p.description = p.paragraphs_of('README.txt', 0...1).join("\n\n")
18
+ p.description = p.paragraphs_of('README.txt', 1...2).join("\n\n")
19
19
  p.extra_deps << ['rake', '>= 0.7.3']
20
20
  p.test_globs = ["spec/**/*_spec.rb"]
21
- p.rdoc_pattern = /\.(rb|txt)/
22
21
  end
23
22
  hoe.spec.files = MANIFEST
24
23
  hoe.spec.dependencies.delete_if { |dep| dep.name == "hoe" }
@@ -35,7 +34,11 @@ end
35
34
  # !@#$ no easy way to empty the default list of prerequisites
36
35
  Rake::Task['default'].send :instance_variable_set, "@prerequisites", FileList[]
37
36
 
38
- task :default => :rcov
37
+ if defined?(JRUBY_VERSION)
38
+ task :default => :spec
39
+ else
40
+ task :default => :rcov
41
+ end
39
42
 
40
43
  Spec::Rake::SpecTask.new do |t|
41
44
  t.spec_opts ||= []
Binary file
data/lib/warbler/task.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  #--
2
- # (c) Copyright 2007-2008 Sun Microsystems, Inc.
2
+ # (c) Copyright 2007-2009 Sun Microsystems, Inc.
3
3
  # See the file LICENSES.txt included with the distribution for
4
4
  # software license details.
5
5
  #++
@@ -227,7 +227,11 @@ module Warbler
227
227
  end
228
228
 
229
229
  def define_webinf_file_tasks
230
- target_files = @config.dirs.map do |d|
230
+ target_files = @config.dirs.select do |d|
231
+ exists = File.directory?(d)
232
+ warn "warning: application directory `#{d}' does not exist or is not a directory; skipping" unless exists
233
+ exists
234
+ end.map do |d|
231
235
  define_file_task(d, "#{@config.staging_dir}/#{apply_pathmaps(d, :application)}")
232
236
  end
233
237
  files = FileList[*(@config.dirs.map{|d| "#{d}/**/*"})]
@@ -318,7 +322,7 @@ module Warbler
318
322
 
319
323
  task gem_unpack_task_name => [dest.pathmap("%d")] do |t|
320
324
  require 'rubygems/installer'
321
- Gem::Installer.new(src).unpack(dest)
325
+ Gem::Installer.new(src, :unpack => true).unpack(dest)
322
326
  end
323
327
 
324
328
  if @config.gem_dependencies
@@ -1,5 +1,5 @@
1
1
  #--
2
- # (c) Copyright 2007-2008 Sun Microsystems, Inc.
2
+ # (c) Copyright 2007-2009 Sun Microsystems, Inc.
3
3
  # See the file LICENSES.txt included with the distribution for
4
4
  # software license details.
5
5
  #++
@@ -36,7 +36,9 @@ describe Warbler::Task do
36
36
  @defined_tasks ||= []
37
37
  tasks.each do |task|
38
38
  unless @defined_tasks.include?(task)
39
- Warbler::Task.new "warble", @config, "define_#{task}_task".to_sym do |t|
39
+ meth = "define_#{task}_task"
40
+ meth = "define_#{task}_tasks" unless Warbler::Task.private_instance_methods.include?(meth)
41
+ Warbler::Task.new "warble", @config, meth.to_sym do |t|
40
42
  options.each {|k,v| t.send "#{k}=", v }
41
43
  end
42
44
  @defined_tasks << task
@@ -438,6 +440,14 @@ describe Warbler::Task do
438
440
  @config.webxml.booter.should == :rails
439
441
  @config.webxml.jruby.max.runtimes.should == 1
440
442
  end
443
+
444
+ it "should skip directories that don't exist in config.dirs and print a warning" do
445
+ @config = Warbler::Config.new
446
+ @config.dirs = %w(lib notexist)
447
+ define_tasks "webinf_file"
448
+ Rake.application.lookup("#{@config.staging_dir}/WEB-INF/lib").should_not be_nil
449
+ Rake.application.lookup("#{@config.staging_dir}/WEB-INF/notexist").should be_nil
450
+ end
441
451
  end
442
452
 
443
453
  describe "The warbler.rake file" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aslakhellesoy-warbler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.13
4
+ version: 0.9.13.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick Sieger
@@ -9,11 +9,12 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-01-23 00:00:00 -08:00
12
+ date: 2009-06-17 00:00:00 -07:00
13
13
  default_executable: warble
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rake
17
+ type: :runtime
17
18
  version_requirement:
18
19
  version_requirements: !ruby/object:Gem::Requirement
19
20
  requirements:
@@ -21,7 +22,7 @@ dependencies:
21
22
  - !ruby/object:Gem::Version
22
23
  version: 0.7.3
23
24
  version:
24
- description: = Warbler
25
+ description: Warbler is a gem to make a .war file out of a Rails, Merb, or Rack-based application. 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.
25
26
  email: nick@nicksieger.com
26
27
  executables:
27
28
  - warble
@@ -29,12 +30,10 @@ extensions: []
29
30
 
30
31
  extra_rdoc_files:
31
32
  - History.txt
32
- - Manifest.txt
33
33
  - README.txt
34
34
  - LICENSES.txt
35
35
  files:
36
36
  - History.txt
37
- - Manifest.txt
38
37
  - README.txt
39
38
  - LICENSES.txt
40
39
  - Rakefile
@@ -44,7 +43,7 @@ files:
44
43
  - generators/warble/templates
45
44
  - generators/warble/templates/warble.rb
46
45
  - generators/warble/warble_generator.rb
47
- - lib/jruby-rack-0.9.3.jar
46
+ - lib/jruby-rack-0.9.4.jar
48
47
  - lib/warbler
49
48
  - lib/warbler/config.rb
50
49
  - lib/warbler/gems.rb
Binary file