little-plugger 1.0.1 → 1.1.0
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.
- data/History.txt +6 -0
 - data/Rakefile +20 -27
 - data/lib/little-plugger.rb +20 -2
 - metadata +17 -20
 - data/tasks/ann.rake +0 -80
 - data/tasks/bones.rake +0 -20
 - data/tasks/gem.rake +0 -201
 - data/tasks/git.rake +0 -40
 - data/tasks/notes.rake +0 -27
 - data/tasks/post_load.rake +0 -34
 - data/tasks/rdoc.rake +0 -51
 - data/tasks/rubyforge.rake +0 -55
 - data/tasks/setup.rb +0 -292
 - data/tasks/spec.rake +0 -54
 - data/tasks/svn.rake +0 -47
 - data/tasks/test.rake +0 -40
 - data/tasks/zentest.rake +0 -36
 
    
        data/History.txt
    CHANGED
    
    
    
        data/Rakefile
    CHANGED
    
    | 
         @@ -1,16 +1,8 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # Look in the tasks/setup.rb file for the various options that can be
         
     | 
| 
       2 
     | 
    
         
            -
            # configured in this Rakefile. The .rake files in the tasks directory
         
     | 
| 
       3 
     | 
    
         
            -
            # are where the options are used.
         
     | 
| 
       4 
1 
     | 
    
         | 
| 
       5 
2 
     | 
    
         
             
            begin
         
     | 
| 
       6 
3 
     | 
    
         
             
              require 'bones'
         
     | 
| 
       7 
     | 
    
         
            -
              Bones.setup
         
     | 
| 
       8 
4 
     | 
    
         
             
            rescue LoadError
         
     | 
| 
       9 
     | 
    
         
            -
               
     | 
| 
       10 
     | 
    
         
            -
                load 'tasks/setup.rb'
         
     | 
| 
       11 
     | 
    
         
            -
              rescue LoadError
         
     | 
| 
       12 
     | 
    
         
            -
                raise RuntimeError, '### please install the "bones" gem ###'
         
     | 
| 
       13 
     | 
    
         
            -
              end
         
     | 
| 
      
 5 
     | 
    
         
            +
              raise RuntimeError, '### please install the "bones" gem ###'
         
     | 
| 
       14 
6 
     | 
    
         
             
            end
         
     | 
| 
       15 
7 
     | 
    
         | 
| 
       16 
8 
     | 
    
         
             
            ensure_in_path 'lib'
         
     | 
| 
         @@ -18,23 +10,24 @@ require 'little-plugger' 
     | 
|
| 
       18 
10 
     | 
    
         | 
| 
       19 
11 
     | 
    
         
             
            task :default => 'spec:specdoc'
         
     | 
| 
       20 
12 
     | 
    
         | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
     | 
    
         
            -
             
     | 
| 
       23 
     | 
    
         
            -
             
     | 
| 
       24 
     | 
    
         
            -
             
     | 
| 
       25 
     | 
    
         
            -
             
     | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
       27 
     | 
    
         
            -
             
     | 
| 
       28 
     | 
    
         
            -
             
     | 
| 
       29 
     | 
    
         
            -
             
     | 
| 
       30 
     | 
    
         
            -
             
     | 
| 
       31 
     | 
    
         
            -
             
     | 
| 
       32 
     | 
    
         
            -
             
     | 
| 
       33 
     | 
    
         
            -
             
     | 
| 
       34 
     | 
    
         
            -
             
     | 
| 
       35 
     | 
    
         
            -
             
     | 
| 
       36 
     | 
    
         
            -
             
     | 
| 
       37 
     | 
    
         
            -
             
     | 
| 
       38 
     | 
    
         
            -
            depend_on ' 
     | 
| 
      
 13 
     | 
    
         
            +
            Bones.disregard_plugin :rubyforge
         
     | 
| 
      
 14 
     | 
    
         
            +
            Bones {
         
     | 
| 
      
 15 
     | 
    
         
            +
              name 'little-plugger'
         
     | 
| 
      
 16 
     | 
    
         
            +
              authors 'Tim Pease'
         
     | 
| 
      
 17 
     | 
    
         
            +
              email 'tim.pease@gmail.com'
         
     | 
| 
      
 18 
     | 
    
         
            +
              url 'http://gemcutter.org/gems/little-plugger'
         
     | 
| 
      
 19 
     | 
    
         
            +
              version LittlePlugger::VERSION
         
     | 
| 
      
 20 
     | 
    
         
            +
              exclude << 'little-plugger.gemspec'
         
     | 
| 
      
 21 
     | 
    
         
            +
              readme_file 'README.rdoc'
         
     | 
| 
      
 22 
     | 
    
         
            +
              ignore_file '.gitignore'
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
              spec.opts << '--color'
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
              use_gmail
         
     | 
| 
      
 27 
     | 
    
         
            +
              enable_sudo
         
     | 
| 
      
 28 
     | 
    
         
            +
             
     | 
| 
      
 29 
     | 
    
         
            +
              depend_on 'rspec', :development => true
         
     | 
| 
      
 30 
     | 
    
         
            +
              depend_on 'bones-extras', :development => true
         
     | 
| 
      
 31 
     | 
    
         
            +
            }
         
     | 
| 
       39 
32 
     | 
    
         | 
| 
       40 
33 
     | 
    
         
             
            # EOF
         
     | 
    
        data/lib/little-plugger.rb
    CHANGED
    
    | 
         @@ -110,7 +110,7 @@ 
     | 
|
| 
       110 
110 
     | 
    
         
             
            #
         
     | 
| 
       111 
111 
     | 
    
         
             
            module LittlePlugger
         
     | 
| 
       112 
112 
     | 
    
         | 
| 
       113 
     | 
    
         
            -
              VERSION = '1.0 
     | 
| 
      
 113 
     | 
    
         
            +
              VERSION = '1.1.0'  # :nodoc:
         
     | 
| 
       114 
114 
     | 
    
         | 
| 
       115 
115 
     | 
    
         
             
              # Returns the version string for the library.
         
     | 
| 
       116 
116 
     | 
    
         
             
              #
         
     | 
| 
         @@ -126,6 +126,21 @@ module LittlePlugger 
     | 
|
| 
       126 
126 
     | 
    
         
             
                  plugin_names.concat(names.map! {|n| n.to_sym})
         
     | 
| 
       127 
127 
     | 
    
         
             
                end
         
     | 
| 
       128 
128 
     | 
    
         | 
| 
      
 129 
     | 
    
         
            +
                # Add the _names_ to the list of plugins that will *not* be loaded. This
         
     | 
| 
      
 130 
     | 
    
         
            +
                # list prevents the plugin system from loading unwanted or unneeded
         
     | 
| 
      
 131 
     | 
    
         
            +
                # plugins.
         
     | 
| 
      
 132 
     | 
    
         
            +
                #
         
     | 
| 
      
 133 
     | 
    
         
            +
                # If a plugin name appears in both the 'disregard_plugin' list and the
         
     | 
| 
      
 134 
     | 
    
         
            +
                # 'plugin' list, the disregard list takes precedence; that is, the plugin
         
     | 
| 
      
 135 
     | 
    
         
            +
                # will not be loaded.
         
     | 
| 
      
 136 
     | 
    
         
            +
                #
         
     | 
| 
      
 137 
     | 
    
         
            +
                def disregard_plugin( *names )
         
     | 
| 
      
 138 
     | 
    
         
            +
                  @disregard_plugin ||= []
         
     | 
| 
      
 139 
     | 
    
         
            +
                  @disregard_plugin.concat(names.map! {|n| n.to_sym})
         
     | 
| 
      
 140 
     | 
    
         
            +
                  @disregard_plugin
         
     | 
| 
      
 141 
     | 
    
         
            +
                end
         
     | 
| 
      
 142 
     | 
    
         
            +
                alias :disregard_plugins :disregard_plugin
         
     | 
| 
      
 143 
     | 
    
         
            +
             
     | 
| 
       129 
144 
     | 
    
         
             
                # Returns the array of plugin names that will be loaded. If the array is
         
     | 
| 
       130 
145 
     | 
    
         
             
                # empty, then any plugin found in the +plugin_path+ will be loaded.
         
     | 
| 
       131 
146 
     | 
    
         
             
                #
         
     | 
| 
         @@ -146,6 +161,7 @@ module LittlePlugger 
     | 
|
| 
       146 
161 
     | 
    
         
             
                  names.each do |name|
         
     | 
| 
       147 
162 
     | 
    
         
             
                    sym = ::LittlePlugger.underscore(name).to_sym
         
     | 
| 
       148 
163 
     | 
    
         
             
                    next unless plugin_names.empty? or plugin_names.include? sym
         
     | 
| 
      
 164 
     | 
    
         
            +
                    next if disregard_plugins.include? sym
         
     | 
| 
       149 
165 
     | 
    
         
             
                    h[sym] = pm.const_get name
         
     | 
| 
       150 
166 
     | 
    
         
             
                  end
         
     | 
| 
       151 
167 
     | 
    
         
             
                  h
         
     | 
| 
         @@ -173,11 +189,13 @@ module LittlePlugger 
     | 
|
| 
       173 
189 
     | 
    
         
             
                  found = {}
         
     | 
| 
       174 
190 
     | 
    
         | 
| 
       175 
191 
     | 
    
         
             
                  Gem.find_files(File.join(plugin_path, '*.rb')).each do |path|
         
     | 
| 
       176 
     | 
    
         
            -
                     
     | 
| 
      
 192 
     | 
    
         
            +
                    name = File.basename(path, '.rb').to_sym
         
     | 
| 
      
 193 
     | 
    
         
            +
                    found[name] = path unless found.key? name
         
     | 
| 
       177 
194 
     | 
    
         
             
                  end
         
     | 
| 
       178 
195 
     | 
    
         | 
| 
       179 
196 
     | 
    
         
             
                  :keep_on_truckin while found.map { |name, path|
         
     | 
| 
       180 
197 
     | 
    
         
             
                    next unless plugin_names.empty? or plugin_names.include? name
         
     | 
| 
      
 198 
     | 
    
         
            +
                    next if disregard_plugins.include? name
         
     | 
| 
       181 
199 
     | 
    
         
             
                    next if @loaded[name]
         
     | 
| 
       182 
200 
     | 
    
         
             
                    begin
         
     | 
| 
       183 
201 
     | 
    
         
             
                      @loaded[name] = load path
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification 
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: little-plugger
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version 
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1.0 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.1.0
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors: 
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Tim Pease
         
     | 
| 
         @@ -9,18 +9,28 @@ autorequire: 
     | 
|
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
     | 
    
         
            -
            date: 2009- 
     | 
| 
      
 12 
     | 
    
         
            +
            date: 2009-11-04 00:00:00 -07:00
         
     | 
| 
       13 
13 
     | 
    
         
             
            default_executable: 
         
     | 
| 
       14 
14 
     | 
    
         
             
            dependencies: 
         
     | 
| 
       15 
15 
     | 
    
         
             
            - !ruby/object:Gem::Dependency 
         
     | 
| 
       16 
16 
     | 
    
         
             
              name: rspec
         
     | 
| 
       17 
     | 
    
         
            -
              type: : 
     | 
| 
      
 17 
     | 
    
         
            +
              type: :development
         
     | 
| 
      
 18 
     | 
    
         
            +
              version_requirement: 
         
     | 
| 
      
 19 
     | 
    
         
            +
              version_requirements: !ruby/object:Gem::Requirement 
         
     | 
| 
      
 20 
     | 
    
         
            +
                requirements: 
         
     | 
| 
      
 21 
     | 
    
         
            +
                - - ">="
         
     | 
| 
      
 22 
     | 
    
         
            +
                  - !ruby/object:Gem::Version 
         
     | 
| 
      
 23 
     | 
    
         
            +
                    version: 1.2.8
         
     | 
| 
      
 24 
     | 
    
         
            +
                version: 
         
     | 
| 
      
 25 
     | 
    
         
            +
            - !ruby/object:Gem::Dependency 
         
     | 
| 
      
 26 
     | 
    
         
            +
              name: bones-extras
         
     | 
| 
      
 27 
     | 
    
         
            +
              type: :development
         
     | 
| 
       18 
28 
     | 
    
         
             
              version_requirement: 
         
     | 
| 
       19 
29 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement 
         
     | 
| 
       20 
30 
     | 
    
         
             
                requirements: 
         
     | 
| 
       21 
31 
     | 
    
         
             
                - - ">="
         
     | 
| 
       22 
32 
     | 
    
         
             
                  - !ruby/object:Gem::Version 
         
     | 
| 
       23 
     | 
    
         
            -
                    version: 1. 
     | 
| 
      
 33 
     | 
    
         
            +
                    version: 1.0.0
         
     | 
| 
       24 
34 
     | 
    
         
             
                version: 
         
     | 
| 
       25 
35 
     | 
    
         
             
            - !ruby/object:Gem::Dependency 
         
     | 
| 
       26 
36 
     | 
    
         
             
              name: bones
         
     | 
| 
         @@ -30,7 +40,7 @@ dependencies: 
     | 
|
| 
       30 
40 
     | 
    
         
             
                requirements: 
         
     | 
| 
       31 
41 
     | 
    
         
             
                - - ">="
         
     | 
| 
       32 
42 
     | 
    
         
             
                  - !ruby/object:Gem::Version 
         
     | 
| 
       33 
     | 
    
         
            -
                    version:  
     | 
| 
      
 43 
     | 
    
         
            +
                    version: 3.0.0
         
     | 
| 
       34 
44 
     | 
    
         
             
                version: 
         
     | 
| 
       35 
45 
     | 
    
         
             
            description: |-
         
     | 
| 
       36 
46 
     | 
    
         
             
              LittlePlugger is a module that provides Gem based plugin management.
         
     | 
| 
         @@ -51,21 +61,8 @@ files: 
     | 
|
| 
       51 
61 
     | 
    
         
             
            - lib/little-plugger.rb
         
     | 
| 
       52 
62 
     | 
    
         
             
            - spec/little-plugger_spec.rb
         
     | 
| 
       53 
63 
     | 
    
         
             
            - spec/spec_helper.rb
         
     | 
| 
       54 
     | 
    
         
            -
            - tasks/ann.rake
         
     | 
| 
       55 
     | 
    
         
            -
            - tasks/bones.rake
         
     | 
| 
       56 
     | 
    
         
            -
            - tasks/gem.rake
         
     | 
| 
       57 
     | 
    
         
            -
            - tasks/git.rake
         
     | 
| 
       58 
     | 
    
         
            -
            - tasks/notes.rake
         
     | 
| 
       59 
     | 
    
         
            -
            - tasks/post_load.rake
         
     | 
| 
       60 
     | 
    
         
            -
            - tasks/rdoc.rake
         
     | 
| 
       61 
     | 
    
         
            -
            - tasks/rubyforge.rake
         
     | 
| 
       62 
     | 
    
         
            -
            - tasks/setup.rb
         
     | 
| 
       63 
     | 
    
         
            -
            - tasks/spec.rake
         
     | 
| 
       64 
     | 
    
         
            -
            - tasks/svn.rake
         
     | 
| 
       65 
     | 
    
         
            -
            - tasks/test.rake
         
     | 
| 
       66 
     | 
    
         
            -
            - tasks/zentest.rake
         
     | 
| 
       67 
64 
     | 
    
         
             
            has_rdoc: true
         
     | 
| 
       68 
     | 
    
         
            -
            homepage: http:// 
     | 
| 
      
 65 
     | 
    
         
            +
            homepage: http://gemcutter.org/gems/little-plugger
         
     | 
| 
       69 
66 
     | 
    
         
             
            licenses: []
         
     | 
| 
       70 
67 
     | 
    
         | 
| 
       71 
68 
     | 
    
         
             
            post_install_message: 
         
     | 
| 
         @@ -88,7 +85,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       88 
85 
     | 
    
         
             
              version: 
         
     | 
| 
       89 
86 
     | 
    
         
             
            requirements: []
         
     | 
| 
       90 
87 
     | 
    
         | 
| 
       91 
     | 
    
         
            -
            rubyforge_project:  
     | 
| 
      
 88 
     | 
    
         
            +
            rubyforge_project: little-plugger
         
     | 
| 
       92 
89 
     | 
    
         
             
            rubygems_version: 1.3.5
         
     | 
| 
       93 
90 
     | 
    
         
             
            signing_key: 
         
     | 
| 
       94 
91 
     | 
    
         
             
            specification_version: 3
         
     | 
    
        data/tasks/ann.rake
    DELETED
    
    | 
         @@ -1,80 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            begin
         
     | 
| 
       3 
     | 
    
         
            -
              require 'bones/smtp_tls'
         
     | 
| 
       4 
     | 
    
         
            -
            rescue LoadError
         
     | 
| 
       5 
     | 
    
         
            -
              require 'net/smtp'
         
     | 
| 
       6 
     | 
    
         
            -
            end
         
     | 
| 
       7 
     | 
    
         
            -
            require 'time'
         
     | 
| 
       8 
     | 
    
         
            -
             
     | 
| 
       9 
     | 
    
         
            -
            namespace :ann do
         
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
              # A prerequisites task that all other tasks depend upon
         
     | 
| 
       12 
     | 
    
         
            -
              task :prereqs
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
              file PROJ.ann.file do
         
     | 
| 
       15 
     | 
    
         
            -
                ann = PROJ.ann
         
     | 
| 
       16 
     | 
    
         
            -
                puts "Generating #{ann.file}"
         
     | 
| 
       17 
     | 
    
         
            -
                File.open(ann.file,'w') do |fd|
         
     | 
| 
       18 
     | 
    
         
            -
                  fd.puts("#{PROJ.name} version #{PROJ.version}")
         
     | 
| 
       19 
     | 
    
         
            -
                  fd.puts("    by #{Array(PROJ.authors).first}") if PROJ.authors
         
     | 
| 
       20 
     | 
    
         
            -
                  fd.puts("    #{PROJ.url}") if PROJ.url.valid?
         
     | 
| 
       21 
     | 
    
         
            -
                  fd.puts("    (the \"#{PROJ.release_name}\" release)") if PROJ.release_name
         
     | 
| 
       22 
     | 
    
         
            -
                  fd.puts
         
     | 
| 
       23 
     | 
    
         
            -
                  fd.puts("== DESCRIPTION")
         
     | 
| 
       24 
     | 
    
         
            -
                  fd.puts
         
     | 
| 
       25 
     | 
    
         
            -
                  fd.puts(PROJ.description)
         
     | 
| 
       26 
     | 
    
         
            -
                  fd.puts
         
     | 
| 
       27 
     | 
    
         
            -
                  fd.puts(PROJ.changes.sub(%r/^.*$/, '== CHANGES'))
         
     | 
| 
       28 
     | 
    
         
            -
                  fd.puts
         
     | 
| 
       29 
     | 
    
         
            -
                  ann.paragraphs.each do |p|
         
     | 
| 
       30 
     | 
    
         
            -
                    fd.puts "== #{p.upcase}"
         
     | 
| 
       31 
     | 
    
         
            -
                    fd.puts
         
     | 
| 
       32 
     | 
    
         
            -
                    fd.puts paragraphs_of(PROJ.readme_file, p).join("\n\n")
         
     | 
| 
       33 
     | 
    
         
            -
                    fd.puts
         
     | 
| 
       34 
     | 
    
         
            -
                  end
         
     | 
| 
       35 
     | 
    
         
            -
                  fd.puts ann.text if ann.text
         
     | 
| 
       36 
     | 
    
         
            -
                end
         
     | 
| 
       37 
     | 
    
         
            -
              end
         
     | 
| 
       38 
     | 
    
         
            -
             
     | 
| 
       39 
     | 
    
         
            -
              desc "Create an announcement file"
         
     | 
| 
       40 
     | 
    
         
            -
              task :announcement => ['ann:prereqs', PROJ.ann.file]
         
     | 
| 
       41 
     | 
    
         
            -
             
     | 
| 
       42 
     | 
    
         
            -
              desc "Send an email announcement"
         
     | 
| 
       43 
     | 
    
         
            -
              task :email => ['ann:prereqs', PROJ.ann.file] do
         
     | 
| 
       44 
     | 
    
         
            -
                ann = PROJ.ann
         
     | 
| 
       45 
     | 
    
         
            -
                from = ann.email[:from] || Array(PROJ.authors).first || PROJ.email
         
     | 
| 
       46 
     | 
    
         
            -
                to   = Array(ann.email[:to])
         
     | 
| 
       47 
     | 
    
         
            -
             
     | 
| 
       48 
     | 
    
         
            -
                ### build a mail header for RFC 822
         
     | 
| 
       49 
     | 
    
         
            -
                rfc822msg =  "From: #{from}\n"
         
     | 
| 
       50 
     | 
    
         
            -
                rfc822msg << "To: #{to.join(',')}\n"
         
     | 
| 
       51 
     | 
    
         
            -
                rfc822msg << "Subject: [ANN] #{PROJ.name} #{PROJ.version}"
         
     | 
| 
       52 
     | 
    
         
            -
                rfc822msg << " (#{PROJ.release_name})" if PROJ.release_name
         
     | 
| 
       53 
     | 
    
         
            -
                rfc822msg << "\n"
         
     | 
| 
       54 
     | 
    
         
            -
                rfc822msg << "Date: #{Time.new.rfc822}\n"
         
     | 
| 
       55 
     | 
    
         
            -
                rfc822msg << "Message-Id: "
         
     | 
| 
       56 
     | 
    
         
            -
                rfc822msg << "<#{"%.8f" % Time.now.to_f}@#{ann.email[:domain]}>\n\n"
         
     | 
| 
       57 
     | 
    
         
            -
                rfc822msg << File.read(ann.file)
         
     | 
| 
       58 
     | 
    
         
            -
             
     | 
| 
       59 
     | 
    
         
            -
                params = [:server, :port, :domain, :acct, :passwd, :authtype].map do |key|
         
     | 
| 
       60 
     | 
    
         
            -
                  ann.email[key]
         
     | 
| 
       61 
     | 
    
         
            -
                end
         
     | 
| 
       62 
     | 
    
         
            -
             
     | 
| 
       63 
     | 
    
         
            -
                params[3] = PROJ.email if params[3].nil?
         
     | 
| 
       64 
     | 
    
         
            -
             
     | 
| 
       65 
     | 
    
         
            -
                if params[4].nil?
         
     | 
| 
       66 
     | 
    
         
            -
                  STDOUT.write "Please enter your e-mail password (#{params[3]}): "
         
     | 
| 
       67 
     | 
    
         
            -
                  params[4] = STDIN.gets.chomp
         
     | 
| 
       68 
     | 
    
         
            -
                end
         
     | 
| 
       69 
     | 
    
         
            -
             
     | 
| 
       70 
     | 
    
         
            -
                ### send email
         
     | 
| 
       71 
     | 
    
         
            -
                Net::SMTP.start(*params) {|smtp| smtp.sendmail(rfc822msg, from, to)}
         
     | 
| 
       72 
     | 
    
         
            -
              end
         
     | 
| 
       73 
     | 
    
         
            -
            end  # namespace :ann
         
     | 
| 
       74 
     | 
    
         
            -
             
     | 
| 
       75 
     | 
    
         
            -
            desc 'Alias to ann:announcement'
         
     | 
| 
       76 
     | 
    
         
            -
            task :ann => 'ann:announcement'
         
     | 
| 
       77 
     | 
    
         
            -
             
     | 
| 
       78 
     | 
    
         
            -
            CLOBBER << PROJ.ann.file
         
     | 
| 
       79 
     | 
    
         
            -
             
     | 
| 
       80 
     | 
    
         
            -
            # EOF
         
     | 
    
        data/tasks/bones.rake
    DELETED
    
    | 
         @@ -1,20 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            if HAVE_BONES
         
     | 
| 
       3 
     | 
    
         
            -
             
     | 
| 
       4 
     | 
    
         
            -
            namespace :bones do
         
     | 
| 
       5 
     | 
    
         
            -
             
     | 
| 
       6 
     | 
    
         
            -
              desc 'Show the PROJ open struct'
         
     | 
| 
       7 
     | 
    
         
            -
              task :debug do |t|
         
     | 
| 
       8 
     | 
    
         
            -
                atr = if t.application.top_level_tasks.length == 2
         
     | 
| 
       9 
     | 
    
         
            -
                  t.application.top_level_tasks.pop
         
     | 
| 
       10 
     | 
    
         
            -
                end
         
     | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
       12 
     | 
    
         
            -
                if atr then Bones::Debug.show_attr(PROJ, atr)
         
     | 
| 
       13 
     | 
    
         
            -
                else Bones::Debug.show PROJ end
         
     | 
| 
       14 
     | 
    
         
            -
              end
         
     | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
     | 
    
         
            -
            end  # namespace :bones
         
     | 
| 
       17 
     | 
    
         
            -
             
     | 
| 
       18 
     | 
    
         
            -
            end  # HAVE_BONES
         
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
       20 
     | 
    
         
            -
            # EOF
         
     | 
    
        data/tasks/gem.rake
    DELETED
    
    | 
         @@ -1,201 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            require 'find'
         
     | 
| 
       3 
     | 
    
         
            -
            require 'rake/packagetask'
         
     | 
| 
       4 
     | 
    
         
            -
            require 'rubygems/user_interaction'
         
     | 
| 
       5 
     | 
    
         
            -
            require 'rubygems/builder'
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
            module Bones
         
     | 
| 
       8 
     | 
    
         
            -
            class GemPackageTask < Rake::PackageTask
         
     | 
| 
       9 
     | 
    
         
            -
              # Ruby GEM spec containing the metadata for this package.  The
         
     | 
| 
       10 
     | 
    
         
            -
              # name, version and package_files are automatically determined
         
     | 
| 
       11 
     | 
    
         
            -
              # from the GEM spec and don't need to be explicitly provided.
         
     | 
| 
       12 
     | 
    
         
            -
              #
         
     | 
| 
       13 
     | 
    
         
            -
              attr_accessor :gem_spec
         
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
              # Tasks from the Bones gem directory
         
     | 
| 
       16 
     | 
    
         
            -
              attr_reader :bones_files
         
     | 
| 
       17 
     | 
    
         
            -
             
     | 
| 
       18 
     | 
    
         
            -
              # Create a GEM Package task library.  Automatically define the gem
         
     | 
| 
       19 
     | 
    
         
            -
              # if a block is given.  If no block is supplied, then +define+
         
     | 
| 
       20 
     | 
    
         
            -
              # needs to be called to define the task.
         
     | 
| 
       21 
     | 
    
         
            -
              #
         
     | 
| 
       22 
     | 
    
         
            -
              def initialize(gem_spec)
         
     | 
| 
       23 
     | 
    
         
            -
                init(gem_spec)
         
     | 
| 
       24 
     | 
    
         
            -
                yield self if block_given?
         
     | 
| 
       25 
     | 
    
         
            -
                define if block_given?
         
     | 
| 
       26 
     | 
    
         
            -
              end
         
     | 
| 
       27 
     | 
    
         
            -
             
     | 
| 
       28 
     | 
    
         
            -
              # Initialization tasks without the "yield self" or define
         
     | 
| 
       29 
     | 
    
         
            -
              # operations.
         
     | 
| 
       30 
     | 
    
         
            -
              #
         
     | 
| 
       31 
     | 
    
         
            -
              def init(gem)
         
     | 
| 
       32 
     | 
    
         
            -
                super(gem.name, gem.version)
         
     | 
| 
       33 
     | 
    
         
            -
                @gem_spec = gem
         
     | 
| 
       34 
     | 
    
         
            -
                @package_files += gem_spec.files if gem_spec.files
         
     | 
| 
       35 
     | 
    
         
            -
                @bones_files = []
         
     | 
| 
       36 
     | 
    
         
            -
             
     | 
| 
       37 
     | 
    
         
            -
                local_setup = File.join(Dir.pwd, %w[tasks setup.rb])
         
     | 
| 
       38 
     | 
    
         
            -
                if !test(?e, local_setup)
         
     | 
| 
       39 
     | 
    
         
            -
                  Dir.glob(::Bones.path(%w[lib bones tasks *])).each {|fn| bones_files << fn}
         
     | 
| 
       40 
     | 
    
         
            -
                end
         
     | 
| 
       41 
     | 
    
         
            -
              end
         
     | 
| 
       42 
     | 
    
         
            -
             
     | 
| 
       43 
     | 
    
         
            -
              # Create the Rake tasks and actions specified by this
         
     | 
| 
       44 
     | 
    
         
            -
              # GemPackageTask.  (+define+ is automatically called if a block is
         
     | 
| 
       45 
     | 
    
         
            -
              # given to +new+).
         
     | 
| 
       46 
     | 
    
         
            -
              #
         
     | 
| 
       47 
     | 
    
         
            -
              def define
         
     | 
| 
       48 
     | 
    
         
            -
                super
         
     | 
| 
       49 
     | 
    
         
            -
                task :prereqs
         
     | 
| 
       50 
     | 
    
         
            -
                task :package => ['gem:prereqs', "#{package_dir_path}/#{gem_file}"]
         
     | 
| 
       51 
     | 
    
         
            -
                file "#{package_dir_path}/#{gem_file}" => [package_dir_path] + package_files + bones_files do
         
     | 
| 
       52 
     | 
    
         
            -
                  when_writing("Creating GEM") {
         
     | 
| 
       53 
     | 
    
         
            -
                    chdir(package_dir_path) do
         
     | 
| 
       54 
     | 
    
         
            -
                      Gem::Builder.new(gem_spec).build
         
     | 
| 
       55 
     | 
    
         
            -
                      verbose(true) {
         
     | 
| 
       56 
     | 
    
         
            -
                        mv gem_file, "../#{gem_file}"
         
     | 
| 
       57 
     | 
    
         
            -
                      }
         
     | 
| 
       58 
     | 
    
         
            -
                    end
         
     | 
| 
       59 
     | 
    
         
            -
                  }
         
     | 
| 
       60 
     | 
    
         
            -
                end
         
     | 
| 
       61 
     | 
    
         
            -
             
     | 
| 
       62 
     | 
    
         
            -
                file package_dir_path => bones_files do
         
     | 
| 
       63 
     | 
    
         
            -
                  mkdir_p package_dir rescue nil
         
     | 
| 
       64 
     | 
    
         
            -
             
     | 
| 
       65 
     | 
    
         
            -
                  gem_spec.files = (gem_spec.files +
         
     | 
| 
       66 
     | 
    
         
            -
                      bones_files.map {|fn| File.join('tasks', File.basename(fn))}).sort
         
     | 
| 
       67 
     | 
    
         
            -
             
     | 
| 
       68 
     | 
    
         
            -
                  bones_files.each do |fn|
         
     | 
| 
       69 
     | 
    
         
            -
                    base_fn = File.join('tasks', File.basename(fn))
         
     | 
| 
       70 
     | 
    
         
            -
                    f = File.join(package_dir_path, base_fn)
         
     | 
| 
       71 
     | 
    
         
            -
                    fdir = File.dirname(f)
         
     | 
| 
       72 
     | 
    
         
            -
                    mkdir_p(fdir) if !File.exist?(fdir)
         
     | 
| 
       73 
     | 
    
         
            -
                    if File.directory?(fn)
         
     | 
| 
       74 
     | 
    
         
            -
                      mkdir_p(f)
         
     | 
| 
       75 
     | 
    
         
            -
                    else
         
     | 
| 
       76 
     | 
    
         
            -
                      raise "file name conflict for '#{base_fn}' (conflicts with '#{fn}')" if test(?e, f)
         
     | 
| 
       77 
     | 
    
         
            -
                      safe_ln(fn, f)
         
     | 
| 
       78 
     | 
    
         
            -
                    end
         
     | 
| 
       79 
     | 
    
         
            -
                  end
         
     | 
| 
       80 
     | 
    
         
            -
                end
         
     | 
| 
       81 
     | 
    
         
            -
              end
         
     | 
| 
       82 
     | 
    
         
            -
              
         
     | 
| 
       83 
     | 
    
         
            -
              def gem_file
         
     | 
| 
       84 
     | 
    
         
            -
                if @gem_spec.platform == Gem::Platform::RUBY
         
     | 
| 
       85 
     | 
    
         
            -
                  "#{package_name}.gem"
         
     | 
| 
       86 
     | 
    
         
            -
                else
         
     | 
| 
       87 
     | 
    
         
            -
                  "#{package_name}-#{@gem_spec.platform}.gem"
         
     | 
| 
       88 
     | 
    
         
            -
                end
         
     | 
| 
       89 
     | 
    
         
            -
              end
         
     | 
| 
       90 
     | 
    
         
            -
            end  # class GemPackageTask
         
     | 
| 
       91 
     | 
    
         
            -
            end  # module Bones
         
     | 
| 
       92 
     | 
    
         
            -
             
     | 
| 
       93 
     | 
    
         
            -
            namespace :gem do
         
     | 
| 
       94 
     | 
    
         
            -
             
     | 
| 
       95 
     | 
    
         
            -
              PROJ.gem._spec = Gem::Specification.new do |s|
         
     | 
| 
       96 
     | 
    
         
            -
                s.name = PROJ.name
         
     | 
| 
       97 
     | 
    
         
            -
                s.version = PROJ.version
         
     | 
| 
       98 
     | 
    
         
            -
                s.summary = PROJ.summary
         
     | 
| 
       99 
     | 
    
         
            -
                s.authors = Array(PROJ.authors)
         
     | 
| 
       100 
     | 
    
         
            -
                s.email = PROJ.email
         
     | 
| 
       101 
     | 
    
         
            -
                s.homepage = Array(PROJ.url).first
         
     | 
| 
       102 
     | 
    
         
            -
                s.rubyforge_project = PROJ.rubyforge.name
         
     | 
| 
       103 
     | 
    
         
            -
             
     | 
| 
       104 
     | 
    
         
            -
                s.description = PROJ.description
         
     | 
| 
       105 
     | 
    
         
            -
             
     | 
| 
       106 
     | 
    
         
            -
                PROJ.gem.dependencies.each do |dep|
         
     | 
| 
       107 
     | 
    
         
            -
                  s.add_dependency(*dep)
         
     | 
| 
       108 
     | 
    
         
            -
                end
         
     | 
| 
       109 
     | 
    
         
            -
             
     | 
| 
       110 
     | 
    
         
            -
                PROJ.gem.development_dependencies.each do |dep|
         
     | 
| 
       111 
     | 
    
         
            -
                  s.add_development_dependency(*dep)
         
     | 
| 
       112 
     | 
    
         
            -
                end
         
     | 
| 
       113 
     | 
    
         
            -
             
     | 
| 
       114 
     | 
    
         
            -
                s.files = PROJ.gem.files
         
     | 
| 
       115 
     | 
    
         
            -
                s.executables = PROJ.gem.executables.map {|fn| File.basename(fn)}
         
     | 
| 
       116 
     | 
    
         
            -
                s.extensions = PROJ.gem.files.grep %r/extconf\.rb$/
         
     | 
| 
       117 
     | 
    
         
            -
             
     | 
| 
       118 
     | 
    
         
            -
                s.bindir = 'bin'
         
     | 
| 
       119 
     | 
    
         
            -
                dirs = Dir["{#{PROJ.libs.join(',')}}"]
         
     | 
| 
       120 
     | 
    
         
            -
                s.require_paths = dirs unless dirs.empty?
         
     | 
| 
       121 
     | 
    
         
            -
             
     | 
| 
       122 
     | 
    
         
            -
                incl = Regexp.new(PROJ.rdoc.include.join('|'))
         
     | 
| 
       123 
     | 
    
         
            -
                excl = PROJ.rdoc.exclude.dup.concat %w[\.rb$ ^(\.\/|\/)?ext]
         
     | 
| 
       124 
     | 
    
         
            -
                excl = Regexp.new(excl.join('|'))
         
     | 
| 
       125 
     | 
    
         
            -
                rdoc_files = PROJ.gem.files.find_all do |fn|
         
     | 
| 
       126 
     | 
    
         
            -
                               case fn
         
     | 
| 
       127 
     | 
    
         
            -
                               when excl; false
         
     | 
| 
       128 
     | 
    
         
            -
                               when incl; true
         
     | 
| 
       129 
     | 
    
         
            -
                               else false end
         
     | 
| 
       130 
     | 
    
         
            -
                             end
         
     | 
| 
       131 
     | 
    
         
            -
                s.rdoc_options = PROJ.rdoc.opts + ['--main', PROJ.rdoc.main]
         
     | 
| 
       132 
     | 
    
         
            -
                s.extra_rdoc_files = rdoc_files
         
     | 
| 
       133 
     | 
    
         
            -
                s.has_rdoc = true
         
     | 
| 
       134 
     | 
    
         
            -
             
     | 
| 
       135 
     | 
    
         
            -
                if test ?f, PROJ.test.file
         
     | 
| 
       136 
     | 
    
         
            -
                  s.test_file = PROJ.test.file
         
     | 
| 
       137 
     | 
    
         
            -
                else
         
     | 
| 
       138 
     | 
    
         
            -
                  s.test_files = PROJ.test.files.to_a
         
     | 
| 
       139 
     | 
    
         
            -
                end
         
     | 
| 
       140 
     | 
    
         
            -
             
     | 
| 
       141 
     | 
    
         
            -
                # Do any extra stuff the user wants
         
     | 
| 
       142 
     | 
    
         
            -
                PROJ.gem.extras.each do |msg, val|
         
     | 
| 
       143 
     | 
    
         
            -
                  case val
         
     | 
| 
       144 
     | 
    
         
            -
                  when Proc
         
     | 
| 
       145 
     | 
    
         
            -
                    val.call(s.send(msg))
         
     | 
| 
       146 
     | 
    
         
            -
                  else
         
     | 
| 
       147 
     | 
    
         
            -
                    s.send "#{msg}=", val
         
     | 
| 
       148 
     | 
    
         
            -
                  end
         
     | 
| 
       149 
     | 
    
         
            -
                end
         
     | 
| 
       150 
     | 
    
         
            -
              end  # Gem::Specification.new
         
     | 
| 
       151 
     | 
    
         
            -
             
     | 
| 
       152 
     | 
    
         
            -
              Bones::GemPackageTask.new(PROJ.gem._spec) do |pkg|
         
     | 
| 
       153 
     | 
    
         
            -
                pkg.need_tar = PROJ.gem.need_tar
         
     | 
| 
       154 
     | 
    
         
            -
                pkg.need_zip = PROJ.gem.need_zip
         
     | 
| 
       155 
     | 
    
         
            -
              end
         
     | 
| 
       156 
     | 
    
         
            -
             
     | 
| 
       157 
     | 
    
         
            -
              desc 'Show information about the gem'
         
     | 
| 
       158 
     | 
    
         
            -
              task :debug => 'gem:prereqs' do
         
     | 
| 
       159 
     | 
    
         
            -
                puts PROJ.gem._spec.to_ruby
         
     | 
| 
       160 
     | 
    
         
            -
              end
         
     | 
| 
       161 
     | 
    
         
            -
             
     | 
| 
       162 
     | 
    
         
            -
              desc 'Write the gemspec '
         
     | 
| 
       163 
     | 
    
         
            -
              task :spec => 'gem:prereqs' do
         
     | 
| 
       164 
     | 
    
         
            -
                File.open("#{PROJ.name}.gemspec", 'w') do |f|
         
     | 
| 
       165 
     | 
    
         
            -
                  f.write PROJ.gem._spec.to_ruby
         
     | 
| 
       166 
     | 
    
         
            -
                end
         
     | 
| 
       167 
     | 
    
         
            -
              end
         
     | 
| 
       168 
     | 
    
         
            -
             
     | 
| 
       169 
     | 
    
         
            -
              desc 'Install the gem'
         
     | 
| 
       170 
     | 
    
         
            -
              task :install => [:clobber, 'gem:package'] do
         
     | 
| 
       171 
     | 
    
         
            -
                sh "#{SUDO} #{GEM} install --local pkg/#{PROJ.gem._spec.full_name}"
         
     | 
| 
       172 
     | 
    
         
            -
             
     | 
| 
       173 
     | 
    
         
            -
                # use this version of the command for rubygems > 1.0.0
         
     | 
| 
       174 
     | 
    
         
            -
                #sh "#{SUDO} #{GEM} install --no-update-sources pkg/#{PROJ.gem._spec.full_name}"
         
     | 
| 
       175 
     | 
    
         
            -
              end
         
     | 
| 
       176 
     | 
    
         
            -
             
     | 
| 
       177 
     | 
    
         
            -
              desc 'Uninstall the gem'
         
     | 
| 
       178 
     | 
    
         
            -
              task :uninstall do
         
     | 
| 
       179 
     | 
    
         
            -
                installed_list = Gem.source_index.find_name(PROJ.name)
         
     | 
| 
       180 
     | 
    
         
            -
                if installed_list and installed_list.collect { |s| s.version.to_s}.include?(PROJ.version) then
         
     | 
| 
       181 
     | 
    
         
            -
                  sh "#{SUDO} #{GEM} uninstall --version '#{PROJ.version}' --ignore-dependencies --executables #{PROJ.name}"
         
     | 
| 
       182 
     | 
    
         
            -
                end
         
     | 
| 
       183 
     | 
    
         
            -
              end
         
     | 
| 
       184 
     | 
    
         
            -
             
     | 
| 
       185 
     | 
    
         
            -
              desc 'Reinstall the gem'
         
     | 
| 
       186 
     | 
    
         
            -
              task :reinstall => [:uninstall, :install]
         
     | 
| 
       187 
     | 
    
         
            -
             
     | 
| 
       188 
     | 
    
         
            -
              desc 'Cleanup the gem'
         
     | 
| 
       189 
     | 
    
         
            -
              task :cleanup do
         
     | 
| 
       190 
     | 
    
         
            -
                sh "#{SUDO} #{GEM} cleanup #{PROJ.gem._spec.name}"
         
     | 
| 
       191 
     | 
    
         
            -
              end
         
     | 
| 
       192 
     | 
    
         
            -
            end  # namespace :gem
         
     | 
| 
       193 
     | 
    
         
            -
             
     | 
| 
       194 
     | 
    
         
            -
             
     | 
| 
       195 
     | 
    
         
            -
            desc 'Alias to gem:package'
         
     | 
| 
       196 
     | 
    
         
            -
            task :gem => 'gem:package'
         
     | 
| 
       197 
     | 
    
         
            -
             
     | 
| 
       198 
     | 
    
         
            -
            task :clobber => 'gem:clobber_package'
         
     | 
| 
       199 
     | 
    
         
            -
            remove_desc_for_task 'gem:clobber_package'
         
     | 
| 
       200 
     | 
    
         
            -
             
     | 
| 
       201 
     | 
    
         
            -
            # EOF
         
     | 
    
        data/tasks/git.rake
    DELETED
    
    | 
         @@ -1,40 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            if HAVE_GIT
         
     | 
| 
       3 
     | 
    
         
            -
             
     | 
| 
       4 
     | 
    
         
            -
            namespace :git do
         
     | 
| 
       5 
     | 
    
         
            -
             
     | 
| 
       6 
     | 
    
         
            -
              # A prerequisites task that all other tasks depend upon
         
     | 
| 
       7 
     | 
    
         
            -
              task :prereqs
         
     | 
| 
       8 
     | 
    
         
            -
             
     | 
| 
       9 
     | 
    
         
            -
              desc 'Show tags from the Git repository'
         
     | 
| 
       10 
     | 
    
         
            -
              task :show_tags => 'git:prereqs' do |t|
         
     | 
| 
       11 
     | 
    
         
            -
                puts %x/git tag/
         
     | 
| 
       12 
     | 
    
         
            -
              end
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
              desc 'Create a new tag in the Git repository'
         
     | 
| 
       15 
     | 
    
         
            -
              task :create_tag => 'git:prereqs' do |t|
         
     | 
| 
       16 
     | 
    
         
            -
                v = ENV['VERSION'] or abort 'Must supply VERSION=x.y.z'
         
     | 
| 
       17 
     | 
    
         
            -
                abort "Versions don't match #{v} vs #{PROJ.version}" if v != PROJ.version
         
     | 
| 
       18 
     | 
    
         
            -
             
     | 
| 
       19 
     | 
    
         
            -
                tag = "%s-%s" % [PROJ.name, PROJ.version]
         
     | 
| 
       20 
     | 
    
         
            -
                msg = "Creating tag for #{PROJ.name} version #{PROJ.version}"
         
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
     | 
    
         
            -
                puts "Creating Git tag '#{tag}'"
         
     | 
| 
       23 
     | 
    
         
            -
                unless system "git tag -a -m '#{msg}' #{tag}"
         
     | 
| 
       24 
     | 
    
         
            -
                  abort "Tag creation failed"
         
     | 
| 
       25 
     | 
    
         
            -
                end
         
     | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
       27 
     | 
    
         
            -
                if %x/git remote/ =~ %r/^origin\s*$/
         
     | 
| 
       28 
     | 
    
         
            -
                  unless system "git push origin #{tag}"
         
     | 
| 
       29 
     | 
    
         
            -
                    abort "Could not push tag to remote Git repository"
         
     | 
| 
       30 
     | 
    
         
            -
                  end
         
     | 
| 
       31 
     | 
    
         
            -
                end
         
     | 
| 
       32 
     | 
    
         
            -
              end
         
     | 
| 
       33 
     | 
    
         
            -
             
     | 
| 
       34 
     | 
    
         
            -
            end  # namespace :git
         
     | 
| 
       35 
     | 
    
         
            -
             
     | 
| 
       36 
     | 
    
         
            -
            task 'gem:release' => 'git:create_tag'
         
     | 
| 
       37 
     | 
    
         
            -
             
     | 
| 
       38 
     | 
    
         
            -
            end  # if HAVE_GIT
         
     | 
| 
       39 
     | 
    
         
            -
             
     | 
| 
       40 
     | 
    
         
            -
            # EOF
         
     | 
    
        data/tasks/notes.rake
    DELETED
    
    | 
         @@ -1,27 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            if HAVE_BONES
         
     | 
| 
       3 
     | 
    
         
            -
             
     | 
| 
       4 
     | 
    
         
            -
            desc "Enumerate all annotations"
         
     | 
| 
       5 
     | 
    
         
            -
            task :notes do |t|
         
     | 
| 
       6 
     | 
    
         
            -
              id = if t.application.top_level_tasks.length > 1
         
     | 
| 
       7 
     | 
    
         
            -
                t.application.top_level_tasks.slice!(1..-1).join(' ')
         
     | 
| 
       8 
     | 
    
         
            -
              end
         
     | 
| 
       9 
     | 
    
         
            -
              Bones::AnnotationExtractor.enumerate(
         
     | 
| 
       10 
     | 
    
         
            -
                  PROJ, PROJ.notes.tags.join('|'), id, :tag => true)
         
     | 
| 
       11 
     | 
    
         
            -
            end
         
     | 
| 
       12 
     | 
    
         
            -
             
     | 
| 
       13 
     | 
    
         
            -
            namespace :notes do
         
     | 
| 
       14 
     | 
    
         
            -
              PROJ.notes.tags.each do |tag|
         
     | 
| 
       15 
     | 
    
         
            -
                desc "Enumerate all #{tag} annotations"
         
     | 
| 
       16 
     | 
    
         
            -
                task tag.downcase.to_sym do |t|
         
     | 
| 
       17 
     | 
    
         
            -
                  id = if t.application.top_level_tasks.length > 1
         
     | 
| 
       18 
     | 
    
         
            -
                    t.application.top_level_tasks.slice!(1..-1).join(' ')
         
     | 
| 
       19 
     | 
    
         
            -
                  end
         
     | 
| 
       20 
     | 
    
         
            -
                  Bones::AnnotationExtractor.enumerate(PROJ, tag, id)
         
     | 
| 
       21 
     | 
    
         
            -
                end
         
     | 
| 
       22 
     | 
    
         
            -
              end
         
     | 
| 
       23 
     | 
    
         
            -
            end
         
     | 
| 
       24 
     | 
    
         
            -
             
     | 
| 
       25 
     | 
    
         
            -
            end  # if HAVE_BONES
         
     | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
       27 
     | 
    
         
            -
            # EOF
         
     | 
    
        data/tasks/post_load.rake
    DELETED
    
    | 
         @@ -1,34 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            # This file does not define any rake tasks. It is used to load some project
         
     | 
| 
       3 
     | 
    
         
            -
            # settings if they are not defined by the user.
         
     | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
       5 
     | 
    
         
            -
            PROJ.exclude << ["^#{Regexp.escape(PROJ.ann.file)}$",
         
     | 
| 
       6 
     | 
    
         
            -
                             "^#{Regexp.escape(PROJ.ignore_file)}$",
         
     | 
| 
       7 
     | 
    
         
            -
                             "^#{Regexp.escape(PROJ.rdoc.dir)}/",
         
     | 
| 
       8 
     | 
    
         
            -
                             "^#{Regexp.escape(PROJ.rcov.dir)}/"]
         
     | 
| 
       9 
     | 
    
         
            -
             
     | 
| 
       10 
     | 
    
         
            -
            flatten_arrays = lambda do |this,os|
         
     | 
| 
       11 
     | 
    
         
            -
                os.instance_variable_get(:@table).each do |key,val|
         
     | 
| 
       12 
     | 
    
         
            -
                  next if key == :dependencies \
         
     | 
| 
       13 
     | 
    
         
            -
                       or key == :development_dependencies
         
     | 
| 
       14 
     | 
    
         
            -
                  case val
         
     | 
| 
       15 
     | 
    
         
            -
                  when Array; val.flatten!
         
     | 
| 
       16 
     | 
    
         
            -
                  when OpenStruct; this.call(this,val)
         
     | 
| 
       17 
     | 
    
         
            -
                  end
         
     | 
| 
       18 
     | 
    
         
            -
                end
         
     | 
| 
       19 
     | 
    
         
            -
              end
         
     | 
| 
       20 
     | 
    
         
            -
            flatten_arrays.call(flatten_arrays,PROJ)
         
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
     | 
    
         
            -
            PROJ.changes ||= paragraphs_of(PROJ.history_file, 0..1).join("\n\n")
         
     | 
| 
       23 
     | 
    
         
            -
             
     | 
| 
       24 
     | 
    
         
            -
            PROJ.description ||= paragraphs_of(PROJ.readme_file, 'description').join("\n\n")
         
     | 
| 
       25 
     | 
    
         
            -
             
     | 
| 
       26 
     | 
    
         
            -
            PROJ.summary ||= PROJ.description.split('.').first
         
     | 
| 
       27 
     | 
    
         
            -
             
     | 
| 
       28 
     | 
    
         
            -
            PROJ.gem.files ||= manifest
         
     | 
| 
       29 
     | 
    
         
            -
             
     | 
| 
       30 
     | 
    
         
            -
            PROJ.gem.executables ||= PROJ.gem.files.find_all {|fn| fn =~ %r/^bin/}
         
     | 
| 
       31 
     | 
    
         
            -
             
     | 
| 
       32 
     | 
    
         
            -
            PROJ.rdoc.main ||= PROJ.readme_file
         
     | 
| 
       33 
     | 
    
         
            -
             
     | 
| 
       34 
     | 
    
         
            -
            # EOF
         
     | 
    
        data/tasks/rdoc.rake
    DELETED
    
    | 
         @@ -1,51 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            require 'rake/rdoctask'
         
     | 
| 
       3 
     | 
    
         
            -
             
     | 
| 
       4 
     | 
    
         
            -
            namespace :doc do
         
     | 
| 
       5 
     | 
    
         
            -
             
     | 
| 
       6 
     | 
    
         
            -
              desc 'Generate RDoc documentation'
         
     | 
| 
       7 
     | 
    
         
            -
              Rake::RDocTask.new do |rd|
         
     | 
| 
       8 
     | 
    
         
            -
                rdoc = PROJ.rdoc
         
     | 
| 
       9 
     | 
    
         
            -
                rd.main = rdoc.main
         
     | 
| 
       10 
     | 
    
         
            -
                rd.rdoc_dir = rdoc.dir
         
     | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
       12 
     | 
    
         
            -
                incl = Regexp.new(rdoc.include.join('|'))
         
     | 
| 
       13 
     | 
    
         
            -
                excl = Regexp.new(rdoc.exclude.join('|'))
         
     | 
| 
       14 
     | 
    
         
            -
                files = PROJ.gem.files.find_all do |fn|
         
     | 
| 
       15 
     | 
    
         
            -
                          case fn
         
     | 
| 
       16 
     | 
    
         
            -
                          when excl; false
         
     | 
| 
       17 
     | 
    
         
            -
                          when incl; true
         
     | 
| 
       18 
     | 
    
         
            -
                          else false end
         
     | 
| 
       19 
     | 
    
         
            -
                        end
         
     | 
| 
       20 
     | 
    
         
            -
                rd.rdoc_files.push(*files)
         
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
     | 
    
         
            -
                name    = PROJ.name
         
     | 
| 
       23 
     | 
    
         
            -
                rf_name = PROJ.rubyforge.name
         
     | 
| 
       24 
     | 
    
         
            -
             
     | 
| 
       25 
     | 
    
         
            -
                title = "#{name}-#{PROJ.version} Documentation"
         
     | 
| 
       26 
     | 
    
         
            -
                title = "#{rf_name}'s " + title if rf_name.valid? and rf_name != name
         
     | 
| 
       27 
     | 
    
         
            -
             
     | 
| 
       28 
     | 
    
         
            -
                rd.options << "-t #{title}"
         
     | 
| 
       29 
     | 
    
         
            -
                rd.options.concat(rdoc.opts)
         
     | 
| 
       30 
     | 
    
         
            -
              end
         
     | 
| 
       31 
     | 
    
         
            -
             
     | 
| 
       32 
     | 
    
         
            -
              desc 'Generate ri locally for testing'
         
     | 
| 
       33 
     | 
    
         
            -
              task :ri => :clobber_ri do
         
     | 
| 
       34 
     | 
    
         
            -
                sh "#{RDOC} --ri -o ri ."
         
     | 
| 
       35 
     | 
    
         
            -
              end
         
     | 
| 
       36 
     | 
    
         
            -
             
     | 
| 
       37 
     | 
    
         
            -
              task :clobber_ri do
         
     | 
| 
       38 
     | 
    
         
            -
                rm_r 'ri' rescue nil
         
     | 
| 
       39 
     | 
    
         
            -
              end
         
     | 
| 
       40 
     | 
    
         
            -
             
     | 
| 
       41 
     | 
    
         
            -
            end  # namespace :doc
         
     | 
| 
       42 
     | 
    
         
            -
             
     | 
| 
       43 
     | 
    
         
            -
            desc 'Alias to doc:rdoc'
         
     | 
| 
       44 
     | 
    
         
            -
            task :doc => 'doc:rdoc'
         
     | 
| 
       45 
     | 
    
         
            -
             
     | 
| 
       46 
     | 
    
         
            -
            desc 'Remove all build products'
         
     | 
| 
       47 
     | 
    
         
            -
            task :clobber => %w(doc:clobber_rdoc doc:clobber_ri)
         
     | 
| 
       48 
     | 
    
         
            -
             
     | 
| 
       49 
     | 
    
         
            -
            remove_desc_for_task %w(doc:clobber_rdoc)
         
     | 
| 
       50 
     | 
    
         
            -
             
     | 
| 
       51 
     | 
    
         
            -
            # EOF
         
     | 
    
        data/tasks/rubyforge.rake
    DELETED
    
    | 
         @@ -1,55 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            if PROJ.rubyforge.name.valid? && HAVE_RUBYFORGE
         
     | 
| 
       3 
     | 
    
         
            -
             
     | 
| 
       4 
     | 
    
         
            -
            require 'rubyforge'
         
     | 
| 
       5 
     | 
    
         
            -
            require 'rake/contrib/sshpublisher'
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
            namespace :gem do
         
     | 
| 
       8 
     | 
    
         
            -
              desc 'Package and upload to RubyForge'
         
     | 
| 
       9 
     | 
    
         
            -
              task :release => [:clobber, 'gem'] do |t|
         
     | 
| 
       10 
     | 
    
         
            -
                v = ENV['VERSION'] or abort 'Must supply VERSION=x.y.z'
         
     | 
| 
       11 
     | 
    
         
            -
                abort "Versions don't match #{v} vs #{PROJ.version}" if v != PROJ.version
         
     | 
| 
       12 
     | 
    
         
            -
                pkg = "pkg/#{PROJ.gem._spec.full_name}"
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
                if $DEBUG then
         
     | 
| 
       15 
     | 
    
         
            -
                  puts "release_id = rf.add_release #{PROJ.rubyforge.name.inspect}, #{PROJ.name.inspect}, #{PROJ.version.inspect}, \"#{pkg}.tgz\""
         
     | 
| 
       16 
     | 
    
         
            -
                  puts "rf.add_file #{PROJ.rubyforge.name.inspect}, #{PROJ.name.inspect}, release_id, \"#{pkg}.gem\""
         
     | 
| 
       17 
     | 
    
         
            -
                end
         
     | 
| 
       18 
     | 
    
         
            -
             
     | 
| 
       19 
     | 
    
         
            -
                rf = RubyForge.new
         
     | 
| 
       20 
     | 
    
         
            -
                rf.configure rescue nil
         
     | 
| 
       21 
     | 
    
         
            -
                puts 'Logging in'
         
     | 
| 
       22 
     | 
    
         
            -
                rf.login
         
     | 
| 
       23 
     | 
    
         
            -
             
     | 
| 
       24 
     | 
    
         
            -
                c = rf.userconfig
         
     | 
| 
       25 
     | 
    
         
            -
                c['release_notes'] = PROJ.description if PROJ.description
         
     | 
| 
       26 
     | 
    
         
            -
                c['release_changes'] = PROJ.changes if PROJ.changes
         
     | 
| 
       27 
     | 
    
         
            -
                c['preformatted'] = true
         
     | 
| 
       28 
     | 
    
         
            -
             
     | 
| 
       29 
     | 
    
         
            -
                files = Dir.glob("#{pkg}*.*")
         
     | 
| 
       30 
     | 
    
         
            -
             
     | 
| 
       31 
     | 
    
         
            -
                puts "Releasing #{PROJ.name} v. #{PROJ.version}"
         
     | 
| 
       32 
     | 
    
         
            -
                rf.add_release PROJ.rubyforge.name, PROJ.name, PROJ.version, *files
         
     | 
| 
       33 
     | 
    
         
            -
              end
         
     | 
| 
       34 
     | 
    
         
            -
            end  # namespace :gem
         
     | 
| 
       35 
     | 
    
         
            -
             
     | 
| 
       36 
     | 
    
         
            -
             
     | 
| 
       37 
     | 
    
         
            -
            namespace :doc do
         
     | 
| 
       38 
     | 
    
         
            -
              desc "Publish RDoc to RubyForge"
         
     | 
| 
       39 
     | 
    
         
            -
              task :release => %w(doc:clobber_rdoc doc:rdoc) do
         
     | 
| 
       40 
     | 
    
         
            -
                config = YAML.load(
         
     | 
| 
       41 
     | 
    
         
            -
                    File.read(File.expand_path('~/.rubyforge/user-config.yml'))
         
     | 
| 
       42 
     | 
    
         
            -
                )
         
     | 
| 
       43 
     | 
    
         
            -
             
     | 
| 
       44 
     | 
    
         
            -
                host = "#{config['username']}@rubyforge.org"
         
     | 
| 
       45 
     | 
    
         
            -
                remote_dir = "/var/www/gforge-projects/#{PROJ.rubyforge.name}/"
         
     | 
| 
       46 
     | 
    
         
            -
                remote_dir << PROJ.rdoc.remote_dir if PROJ.rdoc.remote_dir
         
     | 
| 
       47 
     | 
    
         
            -
                local_dir = PROJ.rdoc.dir
         
     | 
| 
       48 
     | 
    
         
            -
             
     | 
| 
       49 
     | 
    
         
            -
                Rake::SshDirPublisher.new(host, remote_dir, local_dir).upload
         
     | 
| 
       50 
     | 
    
         
            -
              end
         
     | 
| 
       51 
     | 
    
         
            -
            end  # namespace :doc
         
     | 
| 
       52 
     | 
    
         
            -
             
     | 
| 
       53 
     | 
    
         
            -
            end  # if HAVE_RUBYFORGE
         
     | 
| 
       54 
     | 
    
         
            -
             
     | 
| 
       55 
     | 
    
         
            -
            # EOF
         
     | 
    
        data/tasks/setup.rb
    DELETED
    
    | 
         @@ -1,292 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            require 'rubygems'
         
     | 
| 
       3 
     | 
    
         
            -
            require 'rake'
         
     | 
| 
       4 
     | 
    
         
            -
            require 'rake/clean'
         
     | 
| 
       5 
     | 
    
         
            -
            require 'fileutils'
         
     | 
| 
       6 
     | 
    
         
            -
            require 'ostruct'
         
     | 
| 
       7 
     | 
    
         
            -
            require 'find'
         
     | 
| 
       8 
     | 
    
         
            -
             
     | 
| 
       9 
     | 
    
         
            -
            class OpenStruct; undef :gem if defined? :gem; end 
         
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
            # TODO: make my own openstruct type object that includes descriptions
         
     | 
| 
       12 
     | 
    
         
            -
            # TODO: use the descriptions to output help on the available bones options
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
            PROJ = OpenStruct.new(
         
     | 
| 
       15 
     | 
    
         
            -
              # Project Defaults
         
     | 
| 
       16 
     | 
    
         
            -
              :name => nil,
         
     | 
| 
       17 
     | 
    
         
            -
              :summary => nil,
         
     | 
| 
       18 
     | 
    
         
            -
              :description => nil,
         
     | 
| 
       19 
     | 
    
         
            -
              :changes => nil,
         
     | 
| 
       20 
     | 
    
         
            -
              :authors => nil,
         
     | 
| 
       21 
     | 
    
         
            -
              :email => nil,
         
     | 
| 
       22 
     | 
    
         
            -
              :url => "\000",
         
     | 
| 
       23 
     | 
    
         
            -
              :version => ENV['VERSION'] || '0.0.0',
         
     | 
| 
       24 
     | 
    
         
            -
              :exclude => %w(tmp$ bak$ ~$ CVS \.svn/ \.git/ ^pkg/),
         
     | 
| 
       25 
     | 
    
         
            -
              :release_name => ENV['RELEASE'],
         
     | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
       27 
     | 
    
         
            -
              # System Defaults
         
     | 
| 
       28 
     | 
    
         
            -
              :ruby_opts => %w(-w),
         
     | 
| 
       29 
     | 
    
         
            -
              :libs => [],
         
     | 
| 
       30 
     | 
    
         
            -
              :history_file => 'History.txt',
         
     | 
| 
       31 
     | 
    
         
            -
              :readme_file => 'README.txt',
         
     | 
| 
       32 
     | 
    
         
            -
              :ignore_file => '.bnsignore',
         
     | 
| 
       33 
     | 
    
         
            -
             
     | 
| 
       34 
     | 
    
         
            -
              # Announce
         
     | 
| 
       35 
     | 
    
         
            -
              :ann => OpenStruct.new(
         
     | 
| 
       36 
     | 
    
         
            -
                :file => 'announcement.txt',
         
     | 
| 
       37 
     | 
    
         
            -
                :text => nil,
         
     | 
| 
       38 
     | 
    
         
            -
                :paragraphs => [],
         
     | 
| 
       39 
     | 
    
         
            -
                :email => {
         
     | 
| 
       40 
     | 
    
         
            -
                  :from     => nil,
         
     | 
| 
       41 
     | 
    
         
            -
                  :to       => %w(ruby-talk@ruby-lang.org),
         
     | 
| 
       42 
     | 
    
         
            -
                  :server   => 'localhost',
         
     | 
| 
       43 
     | 
    
         
            -
                  :port     => 25,
         
     | 
| 
       44 
     | 
    
         
            -
                  :domain   => ENV['HOSTNAME'],
         
     | 
| 
       45 
     | 
    
         
            -
                  :acct     => nil,
         
     | 
| 
       46 
     | 
    
         
            -
                  :passwd   => nil,
         
     | 
| 
       47 
     | 
    
         
            -
                  :authtype => :plain
         
     | 
| 
       48 
     | 
    
         
            -
                }
         
     | 
| 
       49 
     | 
    
         
            -
              ),
         
     | 
| 
       50 
     | 
    
         
            -
             
     | 
| 
       51 
     | 
    
         
            -
              # Gem Packaging
         
     | 
| 
       52 
     | 
    
         
            -
              :gem => OpenStruct.new(
         
     | 
| 
       53 
     | 
    
         
            -
                :dependencies => [],
         
     | 
| 
       54 
     | 
    
         
            -
                :development_dependencies => [],
         
     | 
| 
       55 
     | 
    
         
            -
                :executables => nil,
         
     | 
| 
       56 
     | 
    
         
            -
                :extensions => FileList['ext/**/extconf.rb'],
         
     | 
| 
       57 
     | 
    
         
            -
                :files => nil,
         
     | 
| 
       58 
     | 
    
         
            -
                :need_tar => true,
         
     | 
| 
       59 
     | 
    
         
            -
                :need_zip => false,
         
     | 
| 
       60 
     | 
    
         
            -
                :extras => {}
         
     | 
| 
       61 
     | 
    
         
            -
              ),
         
     | 
| 
       62 
     | 
    
         
            -
             
     | 
| 
       63 
     | 
    
         
            -
              # File Annotations
         
     | 
| 
       64 
     | 
    
         
            -
              :notes => OpenStruct.new(
         
     | 
| 
       65 
     | 
    
         
            -
                :exclude => %w(^tasks/setup\.rb$),
         
     | 
| 
       66 
     | 
    
         
            -
                :extensions => %w(.txt .rb .erb .rdoc) << '',
         
     | 
| 
       67 
     | 
    
         
            -
                :tags => %w(FIXME OPTIMIZE TODO)
         
     | 
| 
       68 
     | 
    
         
            -
              ),
         
     | 
| 
       69 
     | 
    
         
            -
             
     | 
| 
       70 
     | 
    
         
            -
              # Rcov
         
     | 
| 
       71 
     | 
    
         
            -
              :rcov => OpenStruct.new(
         
     | 
| 
       72 
     | 
    
         
            -
                :dir => 'coverage',
         
     | 
| 
       73 
     | 
    
         
            -
                :opts => %w[--sort coverage -T],
         
     | 
| 
       74 
     | 
    
         
            -
                :threshold => 90.0,
         
     | 
| 
       75 
     | 
    
         
            -
                :threshold_exact => false
         
     | 
| 
       76 
     | 
    
         
            -
              ),
         
     | 
| 
       77 
     | 
    
         
            -
             
     | 
| 
       78 
     | 
    
         
            -
              # Rdoc
         
     | 
| 
       79 
     | 
    
         
            -
              :rdoc => OpenStruct.new(
         
     | 
| 
       80 
     | 
    
         
            -
                :opts => [],
         
     | 
| 
       81 
     | 
    
         
            -
                :include => %w(^lib/ ^bin/ ^ext/ \.txt$ \.rdoc$),
         
     | 
| 
       82 
     | 
    
         
            -
                :exclude => %w(extconf\.rb$),
         
     | 
| 
       83 
     | 
    
         
            -
                :main => nil,
         
     | 
| 
       84 
     | 
    
         
            -
                :dir => 'doc',
         
     | 
| 
       85 
     | 
    
         
            -
                :remote_dir => nil
         
     | 
| 
       86 
     | 
    
         
            -
              ),
         
     | 
| 
       87 
     | 
    
         
            -
             
     | 
| 
       88 
     | 
    
         
            -
              # Rubyforge
         
     | 
| 
       89 
     | 
    
         
            -
              :rubyforge => OpenStruct.new(
         
     | 
| 
       90 
     | 
    
         
            -
                :name => "\000"
         
     | 
| 
       91 
     | 
    
         
            -
              ),
         
     | 
| 
       92 
     | 
    
         
            -
             
     | 
| 
       93 
     | 
    
         
            -
              # Rspec
         
     | 
| 
       94 
     | 
    
         
            -
              :spec => OpenStruct.new(
         
     | 
| 
       95 
     | 
    
         
            -
                :files => FileList['spec/**/*_spec.rb'],
         
     | 
| 
       96 
     | 
    
         
            -
                :opts => []
         
     | 
| 
       97 
     | 
    
         
            -
              ),
         
     | 
| 
       98 
     | 
    
         
            -
             
     | 
| 
       99 
     | 
    
         
            -
              # Subversion Repository
         
     | 
| 
       100 
     | 
    
         
            -
              :svn => OpenStruct.new(
         
     | 
| 
       101 
     | 
    
         
            -
                :root => nil,
         
     | 
| 
       102 
     | 
    
         
            -
                :path => '',
         
     | 
| 
       103 
     | 
    
         
            -
                :trunk => 'trunk',
         
     | 
| 
       104 
     | 
    
         
            -
                :tags => 'tags',
         
     | 
| 
       105 
     | 
    
         
            -
                :branches => 'branches'
         
     | 
| 
       106 
     | 
    
         
            -
              ),
         
     | 
| 
       107 
     | 
    
         
            -
             
     | 
| 
       108 
     | 
    
         
            -
              # Test::Unit
         
     | 
| 
       109 
     | 
    
         
            -
              :test => OpenStruct.new(
         
     | 
| 
       110 
     | 
    
         
            -
                :files => FileList['test/**/test_*.rb'],
         
     | 
| 
       111 
     | 
    
         
            -
                :file  => 'test/all.rb',
         
     | 
| 
       112 
     | 
    
         
            -
                :opts  => []
         
     | 
| 
       113 
     | 
    
         
            -
              )
         
     | 
| 
       114 
     | 
    
         
            -
            )
         
     | 
| 
       115 
     | 
    
         
            -
             
     | 
| 
       116 
     | 
    
         
            -
            # Load the other rake files in the tasks folder
         
     | 
| 
       117 
     | 
    
         
            -
            tasks_dir = File.expand_path(File.dirname(__FILE__))
         
     | 
| 
       118 
     | 
    
         
            -
            post_load_fn = File.join(tasks_dir, 'post_load.rake')
         
     | 
| 
       119 
     | 
    
         
            -
            rakefiles = Dir.glob(File.join(tasks_dir, '*.rake')).sort
         
     | 
| 
       120 
     | 
    
         
            -
            rakefiles.unshift(rakefiles.delete(post_load_fn)).compact!
         
     | 
| 
       121 
     | 
    
         
            -
            import(*rakefiles)
         
     | 
| 
       122 
     | 
    
         
            -
             
     | 
| 
       123 
     | 
    
         
            -
            # Setup the project libraries
         
     | 
| 
       124 
     | 
    
         
            -
            %w(lib ext).each {|dir| PROJ.libs << dir if test ?d, dir}
         
     | 
| 
       125 
     | 
    
         
            -
             
     | 
| 
       126 
     | 
    
         
            -
            # Setup some constants
         
     | 
| 
       127 
     | 
    
         
            -
            DEV_NULL = File.exist?('/dev/null') ? '/dev/null' : 'NUL:'
         
     | 
| 
       128 
     | 
    
         
            -
             
     | 
| 
       129 
     | 
    
         
            -
            def quiet( &block )
         
     | 
| 
       130 
     | 
    
         
            -
              io = [STDOUT.dup, STDERR.dup]
         
     | 
| 
       131 
     | 
    
         
            -
              STDOUT.reopen DEV_NULL
         
     | 
| 
       132 
     | 
    
         
            -
              STDERR.reopen DEV_NULL
         
     | 
| 
       133 
     | 
    
         
            -
              block.call
         
     | 
| 
       134 
     | 
    
         
            -
            ensure
         
     | 
| 
       135 
     | 
    
         
            -
              STDOUT.reopen io.first
         
     | 
| 
       136 
     | 
    
         
            -
              STDERR.reopen io.last
         
     | 
| 
       137 
     | 
    
         
            -
              $stdout, $stderr = STDOUT, STDERR
         
     | 
| 
       138 
     | 
    
         
            -
            end
         
     | 
| 
       139 
     | 
    
         
            -
             
     | 
| 
       140 
     | 
    
         
            -
            DIFF = if system("gdiff '#{__FILE__}' '#{__FILE__}' > #{DEV_NULL} 2>&1") then 'gdiff'
         
     | 
| 
       141 
     | 
    
         
            -
                   else 'diff' end unless defined? DIFF
         
     | 
| 
       142 
     | 
    
         
            -
             
     | 
| 
       143 
     | 
    
         
            -
            SUDO = if system("which sudo > #{DEV_NULL} 2>&1") then 'sudo'
         
     | 
| 
       144 
     | 
    
         
            -
                   else '' end unless defined? SUDO
         
     | 
| 
       145 
     | 
    
         
            -
             
     | 
| 
       146 
     | 
    
         
            -
            RCOV = "#{RUBY} -S rcov"
         
     | 
| 
       147 
     | 
    
         
            -
            RDOC = "#{RUBY} -S rdoc"
         
     | 
| 
       148 
     | 
    
         
            -
            GEM  = "#{RUBY} -S gem"
         
     | 
| 
       149 
     | 
    
         
            -
             
     | 
| 
       150 
     | 
    
         
            -
            %w(rcov spec/rake/spectask rubyforge bones facets/ansicode zentest).each do |lib|
         
     | 
| 
       151 
     | 
    
         
            -
              begin
         
     | 
| 
       152 
     | 
    
         
            -
                require lib
         
     | 
| 
       153 
     | 
    
         
            -
                Object.instance_eval {const_set "HAVE_#{lib.tr('/','_').upcase}", true}
         
     | 
| 
       154 
     | 
    
         
            -
              rescue LoadError
         
     | 
| 
       155 
     | 
    
         
            -
                Object.instance_eval {const_set "HAVE_#{lib.tr('/','_').upcase}", false}
         
     | 
| 
       156 
     | 
    
         
            -
              end
         
     | 
| 
       157 
     | 
    
         
            -
            end
         
     | 
| 
       158 
     | 
    
         
            -
            HAVE_SVN = (Dir.entries(Dir.pwd).include?('.svn') and
         
     | 
| 
       159 
     | 
    
         
            -
                        system("svn --version 2>&1 > #{DEV_NULL}"))
         
     | 
| 
       160 
     | 
    
         
            -
            HAVE_GIT = (Dir.entries(Dir.pwd).include?('.git') and
         
     | 
| 
       161 
     | 
    
         
            -
                        system("git --version 2>&1 > #{DEV_NULL}"))
         
     | 
| 
       162 
     | 
    
         
            -
             
     | 
| 
       163 
     | 
    
         
            -
            # Add bones as a development dependency
         
     | 
| 
       164 
     | 
    
         
            -
            #
         
     | 
| 
       165 
     | 
    
         
            -
            if HAVE_BONES
         
     | 
| 
       166 
     | 
    
         
            -
              PROJ.gem.development_dependencies << ['bones', ">= #{Bones::VERSION}"]
         
     | 
| 
       167 
     | 
    
         
            -
            end
         
     | 
| 
       168 
     | 
    
         
            -
             
     | 
| 
       169 
     | 
    
         
            -
            # Reads a file at +path+ and spits out an array of the +paragraphs+
         
     | 
| 
       170 
     | 
    
         
            -
            # specified.
         
     | 
| 
       171 
     | 
    
         
            -
            #
         
     | 
| 
       172 
     | 
    
         
            -
            #    changes = paragraphs_of('History.txt', 0..1).join("\n\n")
         
     | 
| 
       173 
     | 
    
         
            -
            #    summary, *description = paragraphs_of('README.txt', 3, 3..8)
         
     | 
| 
       174 
     | 
    
         
            -
            #
         
     | 
| 
       175 
     | 
    
         
            -
            def paragraphs_of( path, *paragraphs )
         
     | 
| 
       176 
     | 
    
         
            -
              title = String === paragraphs.first ? paragraphs.shift : nil
         
     | 
| 
       177 
     | 
    
         
            -
              ary = File.read(path).delete("\r").split(/\n\n+/)
         
     | 
| 
       178 
     | 
    
         
            -
             
     | 
| 
       179 
     | 
    
         
            -
              result = if title
         
     | 
| 
       180 
     | 
    
         
            -
                tmp, matching = [], false
         
     | 
| 
       181 
     | 
    
         
            -
                rgxp = %r/^=+\s*#{Regexp.escape(title)}/i
         
     | 
| 
       182 
     | 
    
         
            -
                paragraphs << (0..-1) if paragraphs.empty?
         
     | 
| 
       183 
     | 
    
         
            -
             
     | 
| 
       184 
     | 
    
         
            -
                ary.each do |val|
         
     | 
| 
       185 
     | 
    
         
            -
                  if val =~ rgxp
         
     | 
| 
       186 
     | 
    
         
            -
                    break if matching
         
     | 
| 
       187 
     | 
    
         
            -
                    matching = true
         
     | 
| 
       188 
     | 
    
         
            -
                    rgxp = %r/^=+/i
         
     | 
| 
       189 
     | 
    
         
            -
                  elsif matching
         
     | 
| 
       190 
     | 
    
         
            -
                    tmp << val
         
     | 
| 
       191 
     | 
    
         
            -
                  end
         
     | 
| 
       192 
     | 
    
         
            -
                end
         
     | 
| 
       193 
     | 
    
         
            -
                tmp
         
     | 
| 
       194 
     | 
    
         
            -
              else ary end
         
     | 
| 
       195 
     | 
    
         
            -
             
     | 
| 
       196 
     | 
    
         
            -
              result.values_at(*paragraphs)
         
     | 
| 
       197 
     | 
    
         
            -
            end
         
     | 
| 
       198 
     | 
    
         
            -
             
     | 
| 
       199 
     | 
    
         
            -
            # Adds the given gem _name_ to the current project's dependency list. An
         
     | 
| 
       200 
     | 
    
         
            -
            # optional gem _version_ can be given. If omitted, the newest gem version
         
     | 
| 
       201 
     | 
    
         
            -
            # will be used.
         
     | 
| 
       202 
     | 
    
         
            -
            #
         
     | 
| 
       203 
     | 
    
         
            -
            def depend_on( name, version = nil )
         
     | 
| 
       204 
     | 
    
         
            -
              spec = Gem.source_index.find_name(name).last
         
     | 
| 
       205 
     | 
    
         
            -
              version = spec.version.to_s if version.nil? and !spec.nil?
         
     | 
| 
       206 
     | 
    
         
            -
             
     | 
| 
       207 
     | 
    
         
            -
              PROJ.gem.dependencies << case version
         
     | 
| 
       208 
     | 
    
         
            -
                when nil; [name]
         
     | 
| 
       209 
     | 
    
         
            -
                when %r/^\d/; [name, ">= #{version}"]
         
     | 
| 
       210 
     | 
    
         
            -
                else [name, version] end
         
     | 
| 
       211 
     | 
    
         
            -
            end
         
     | 
| 
       212 
     | 
    
         
            -
             
     | 
| 
       213 
     | 
    
         
            -
            # Adds the given arguments to the include path if they are not already there
         
     | 
| 
       214 
     | 
    
         
            -
            #
         
     | 
| 
       215 
     | 
    
         
            -
            def ensure_in_path( *args )
         
     | 
| 
       216 
     | 
    
         
            -
              args.each do |path|
         
     | 
| 
       217 
     | 
    
         
            -
                path = File.expand_path(path)
         
     | 
| 
       218 
     | 
    
         
            -
                $:.unshift(path) if test(?d, path) and not $:.include?(path)
         
     | 
| 
       219 
     | 
    
         
            -
              end
         
     | 
| 
       220 
     | 
    
         
            -
            end
         
     | 
| 
       221 
     | 
    
         
            -
             
     | 
| 
       222 
     | 
    
         
            -
            # Find a rake task using the task name and remove any description text. This
         
     | 
| 
       223 
     | 
    
         
            -
            # will prevent the task from being displayed in the list of available tasks.
         
     | 
| 
       224 
     | 
    
         
            -
            #
         
     | 
| 
       225 
     | 
    
         
            -
            def remove_desc_for_task( names )
         
     | 
| 
       226 
     | 
    
         
            -
              Array(names).each do |task_name|
         
     | 
| 
       227 
     | 
    
         
            -
                task = Rake.application.tasks.find {|t| t.name == task_name}
         
     | 
| 
       228 
     | 
    
         
            -
                next if task.nil?
         
     | 
| 
       229 
     | 
    
         
            -
                task.instance_variable_set :@comment, nil
         
     | 
| 
       230 
     | 
    
         
            -
              end
         
     | 
| 
       231 
     | 
    
         
            -
            end
         
     | 
| 
       232 
     | 
    
         
            -
             
     | 
| 
       233 
     | 
    
         
            -
            # Change working directories to _dir_, call the _block_ of code, and then
         
     | 
| 
       234 
     | 
    
         
            -
            # change back to the original working directory (the current directory when
         
     | 
| 
       235 
     | 
    
         
            -
            # this method was called).
         
     | 
| 
       236 
     | 
    
         
            -
            #
         
     | 
| 
       237 
     | 
    
         
            -
            def in_directory( dir, &block )
         
     | 
| 
       238 
     | 
    
         
            -
              curdir = pwd
         
     | 
| 
       239 
     | 
    
         
            -
              begin
         
     | 
| 
       240 
     | 
    
         
            -
                cd dir
         
     | 
| 
       241 
     | 
    
         
            -
                return block.call
         
     | 
| 
       242 
     | 
    
         
            -
              ensure
         
     | 
| 
       243 
     | 
    
         
            -
                cd curdir
         
     | 
| 
       244 
     | 
    
         
            -
              end
         
     | 
| 
       245 
     | 
    
         
            -
            end
         
     | 
| 
       246 
     | 
    
         
            -
             
     | 
| 
       247 
     | 
    
         
            -
            # Scans the current working directory and creates a list of files that are
         
     | 
| 
       248 
     | 
    
         
            -
            # candidates to be in the manifest.
         
     | 
| 
       249 
     | 
    
         
            -
            #
         
     | 
| 
       250 
     | 
    
         
            -
            def manifest
         
     | 
| 
       251 
     | 
    
         
            -
              files = []
         
     | 
| 
       252 
     | 
    
         
            -
              exclude = PROJ.exclude.dup
         
     | 
| 
       253 
     | 
    
         
            -
              comment = %r/^\s*#/
         
     | 
| 
       254 
     | 
    
         
            -
             
         
     | 
| 
       255 
     | 
    
         
            -
              # process the ignore file and add the items there to the exclude list
         
     | 
| 
       256 
     | 
    
         
            -
              if test(?f, PROJ.ignore_file)
         
     | 
| 
       257 
     | 
    
         
            -
                ary = []
         
     | 
| 
       258 
     | 
    
         
            -
                File.readlines(PROJ.ignore_file).each do |line|
         
     | 
| 
       259 
     | 
    
         
            -
                  next if line =~ comment
         
     | 
| 
       260 
     | 
    
         
            -
                  line.chomp!
         
     | 
| 
       261 
     | 
    
         
            -
                  line.strip!
         
     | 
| 
       262 
     | 
    
         
            -
                  next if line.nil? or line.empty?
         
     | 
| 
       263 
     | 
    
         
            -
             
     | 
| 
       264 
     | 
    
         
            -
                  glob = line =~ %r/\*\./ ? File.join('**', line) : line
         
     | 
| 
       265 
     | 
    
         
            -
                  Dir.glob(glob).each {|fn| ary << "^#{Regexp.escape(fn)}"}
         
     | 
| 
       266 
     | 
    
         
            -
                end
         
     | 
| 
       267 
     | 
    
         
            -
                exclude.concat ary
         
     | 
| 
       268 
     | 
    
         
            -
              end
         
     | 
| 
       269 
     | 
    
         
            -
             
     | 
| 
       270 
     | 
    
         
            -
              # generate a regular expression from the exclude list
         
     | 
| 
       271 
     | 
    
         
            -
              exclude = Regexp.new(exclude.join('|'))
         
     | 
| 
       272 
     | 
    
         
            -
             
     | 
| 
       273 
     | 
    
         
            -
              Find.find '.' do |path|
         
     | 
| 
       274 
     | 
    
         
            -
                path.sub! %r/^(\.\/|\/)/o, ''
         
     | 
| 
       275 
     | 
    
         
            -
                next unless test ?f, path
         
     | 
| 
       276 
     | 
    
         
            -
                next if path =~ exclude
         
     | 
| 
       277 
     | 
    
         
            -
                files << path
         
     | 
| 
       278 
     | 
    
         
            -
              end
         
     | 
| 
       279 
     | 
    
         
            -
              files.sort!
         
     | 
| 
       280 
     | 
    
         
            -
            end
         
     | 
| 
       281 
     | 
    
         
            -
             
     | 
| 
       282 
     | 
    
         
            -
            # We need a "valid" method thtat determines if a string is suitable for use
         
     | 
| 
       283 
     | 
    
         
            -
            # in the gem specification.
         
     | 
| 
       284 
     | 
    
         
            -
            #
         
     | 
| 
       285 
     | 
    
         
            -
            class Object
         
     | 
| 
       286 
     | 
    
         
            -
              def valid?
         
     | 
| 
       287 
     | 
    
         
            -
                return !(self.empty? or self == "\000") if self.respond_to?(:to_str)
         
     | 
| 
       288 
     | 
    
         
            -
                return false
         
     | 
| 
       289 
     | 
    
         
            -
              end
         
     | 
| 
       290 
     | 
    
         
            -
            end
         
     | 
| 
       291 
     | 
    
         
            -
             
     | 
| 
       292 
     | 
    
         
            -
            # EOF
         
     | 
    
        data/tasks/spec.rake
    DELETED
    
    | 
         @@ -1,54 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            if HAVE_SPEC_RAKE_SPECTASK and not PROJ.spec.files.to_a.empty?
         
     | 
| 
       3 
     | 
    
         
            -
            require 'spec/rake/verify_rcov'
         
     | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
       5 
     | 
    
         
            -
            namespace :spec do
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
              desc 'Run all specs with basic output'
         
     | 
| 
       8 
     | 
    
         
            -
              Spec::Rake::SpecTask.new(:run) do |t|
         
     | 
| 
       9 
     | 
    
         
            -
                t.ruby_opts = PROJ.ruby_opts
         
     | 
| 
       10 
     | 
    
         
            -
                t.spec_opts = PROJ.spec.opts
         
     | 
| 
       11 
     | 
    
         
            -
                t.spec_files = PROJ.spec.files
         
     | 
| 
       12 
     | 
    
         
            -
                t.libs += PROJ.libs
         
     | 
| 
       13 
     | 
    
         
            -
              end
         
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
              desc 'Run all specs with text output'
         
     | 
| 
       16 
     | 
    
         
            -
              Spec::Rake::SpecTask.new(:specdoc) do |t|
         
     | 
| 
       17 
     | 
    
         
            -
                t.ruby_opts = PROJ.ruby_opts
         
     | 
| 
       18 
     | 
    
         
            -
                t.spec_opts = PROJ.spec.opts + ['--format', 'specdoc']
         
     | 
| 
       19 
     | 
    
         
            -
                t.spec_files = PROJ.spec.files
         
     | 
| 
       20 
     | 
    
         
            -
                t.libs += PROJ.libs
         
     | 
| 
       21 
     | 
    
         
            -
              end
         
     | 
| 
       22 
     | 
    
         
            -
             
     | 
| 
       23 
     | 
    
         
            -
              if HAVE_RCOV
         
     | 
| 
       24 
     | 
    
         
            -
                desc 'Run all specs with RCov'
         
     | 
| 
       25 
     | 
    
         
            -
                Spec::Rake::SpecTask.new(:rcov) do |t|
         
     | 
| 
       26 
     | 
    
         
            -
                  t.ruby_opts = PROJ.ruby_opts
         
     | 
| 
       27 
     | 
    
         
            -
                  t.spec_opts = PROJ.spec.opts
         
     | 
| 
       28 
     | 
    
         
            -
                  t.spec_files = PROJ.spec.files
         
     | 
| 
       29 
     | 
    
         
            -
                  t.libs += PROJ.libs
         
     | 
| 
       30 
     | 
    
         
            -
                  t.rcov = true
         
     | 
| 
       31 
     | 
    
         
            -
                  t.rcov_dir = PROJ.rcov.dir
         
     | 
| 
       32 
     | 
    
         
            -
                  t.rcov_opts = PROJ.rcov.opts + ['--exclude', 'spec']
         
     | 
| 
       33 
     | 
    
         
            -
                end
         
     | 
| 
       34 
     | 
    
         
            -
             
     | 
| 
       35 
     | 
    
         
            -
                RCov::VerifyTask.new(:verify) do |t| 
         
     | 
| 
       36 
     | 
    
         
            -
                  t.threshold = PROJ.rcov.threshold
         
     | 
| 
       37 
     | 
    
         
            -
                  t.index_html = File.join(PROJ.rcov.dir, 'index.html')
         
     | 
| 
       38 
     | 
    
         
            -
                  t.require_exact_threshold = PROJ.rcov.threshold_exact
         
     | 
| 
       39 
     | 
    
         
            -
                end
         
     | 
| 
       40 
     | 
    
         
            -
             
     | 
| 
       41 
     | 
    
         
            -
                task :verify => :rcov
         
     | 
| 
       42 
     | 
    
         
            -
                remove_desc_for_task %w(spec:clobber_rcov)
         
     | 
| 
       43 
     | 
    
         
            -
              end
         
     | 
| 
       44 
     | 
    
         
            -
             
     | 
| 
       45 
     | 
    
         
            -
            end  # namespace :spec
         
     | 
| 
       46 
     | 
    
         
            -
             
     | 
| 
       47 
     | 
    
         
            -
            desc 'Alias to spec:run'
         
     | 
| 
       48 
     | 
    
         
            -
            task :spec => 'spec:run'
         
     | 
| 
       49 
     | 
    
         
            -
             
     | 
| 
       50 
     | 
    
         
            -
            task :clobber => 'spec:clobber_rcov' if HAVE_RCOV
         
     | 
| 
       51 
     | 
    
         
            -
             
     | 
| 
       52 
     | 
    
         
            -
            end  # if HAVE_SPEC_RAKE_SPECTASK
         
     | 
| 
       53 
     | 
    
         
            -
             
     | 
| 
       54 
     | 
    
         
            -
            # EOF
         
     | 
    
        data/tasks/svn.rake
    DELETED
    
    | 
         @@ -1,47 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            if HAVE_SVN
         
     | 
| 
       3 
     | 
    
         
            -
             
     | 
| 
       4 
     | 
    
         
            -
            unless PROJ.svn.root
         
     | 
| 
       5 
     | 
    
         
            -
              info = %x/svn info ./
         
     | 
| 
       6 
     | 
    
         
            -
              m = %r/^Repository Root:\s+(.*)$/.match(info)
         
     | 
| 
       7 
     | 
    
         
            -
              PROJ.svn.root = (m.nil? ? '' : m[1])
         
     | 
| 
       8 
     | 
    
         
            -
            end
         
     | 
| 
       9 
     | 
    
         
            -
            PROJ.svn.root = File.join(PROJ.svn.root, PROJ.svn.path) unless PROJ.svn.path.empty?
         
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
            namespace :svn do
         
     | 
| 
       12 
     | 
    
         
            -
             
     | 
| 
       13 
     | 
    
         
            -
              # A prerequisites task that all other tasks depend upon
         
     | 
| 
       14 
     | 
    
         
            -
              task :prereqs
         
     | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
     | 
    
         
            -
              desc 'Show tags from the SVN repository'
         
     | 
| 
       17 
     | 
    
         
            -
              task :show_tags => 'svn:prereqs' do |t|
         
     | 
| 
       18 
     | 
    
         
            -
                tags = %x/svn list #{File.join(PROJ.svn.root, PROJ.svn.tags)}/
         
     | 
| 
       19 
     | 
    
         
            -
                tags.gsub!(%r/\/$/, '')
         
     | 
| 
       20 
     | 
    
         
            -
                tags = tags.split("\n").sort {|a,b| b <=> a}
         
     | 
| 
       21 
     | 
    
         
            -
                puts tags
         
     | 
| 
       22 
     | 
    
         
            -
              end
         
     | 
| 
       23 
     | 
    
         
            -
             
     | 
| 
       24 
     | 
    
         
            -
              desc 'Create a new tag in the SVN repository'
         
     | 
| 
       25 
     | 
    
         
            -
              task :create_tag => 'svn:prereqs' do |t|
         
     | 
| 
       26 
     | 
    
         
            -
                v = ENV['VERSION'] or abort 'Must supply VERSION=x.y.z'
         
     | 
| 
       27 
     | 
    
         
            -
                abort "Versions don't match #{v} vs #{PROJ.version}" if v != PROJ.version
         
     | 
| 
       28 
     | 
    
         
            -
             
     | 
| 
       29 
     | 
    
         
            -
                svn = PROJ.svn
         
     | 
| 
       30 
     | 
    
         
            -
                trunk = File.join(svn.root, svn.trunk)
         
     | 
| 
       31 
     | 
    
         
            -
                tag = "%s-%s" % [PROJ.name, PROJ.version]
         
     | 
| 
       32 
     | 
    
         
            -
                tag = File.join(svn.root, svn.tags, tag)
         
     | 
| 
       33 
     | 
    
         
            -
                msg = "Creating tag for #{PROJ.name} version #{PROJ.version}"
         
     | 
| 
       34 
     | 
    
         
            -
             
     | 
| 
       35 
     | 
    
         
            -
                puts "Creating SVN tag '#{tag}'"
         
     | 
| 
       36 
     | 
    
         
            -
                unless system "svn cp -m '#{msg}' #{trunk} #{tag}"
         
     | 
| 
       37 
     | 
    
         
            -
                  abort "Tag creation failed" 
         
     | 
| 
       38 
     | 
    
         
            -
                end
         
     | 
| 
       39 
     | 
    
         
            -
              end
         
     | 
| 
       40 
     | 
    
         
            -
             
     | 
| 
       41 
     | 
    
         
            -
            end  # namespace :svn
         
     | 
| 
       42 
     | 
    
         
            -
             
     | 
| 
       43 
     | 
    
         
            -
            task 'gem:release' => 'svn:create_tag'
         
     | 
| 
       44 
     | 
    
         
            -
             
     | 
| 
       45 
     | 
    
         
            -
            end  # if PROJ.svn.path
         
     | 
| 
       46 
     | 
    
         
            -
             
     | 
| 
       47 
     | 
    
         
            -
            # EOF
         
     | 
    
        data/tasks/test.rake
    DELETED
    
    | 
         @@ -1,40 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            if test(?e, PROJ.test.file) or not PROJ.test.files.to_a.empty?
         
     | 
| 
       3 
     | 
    
         
            -
            require 'rake/testtask'
         
     | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
       5 
     | 
    
         
            -
            namespace :test do
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
              Rake::TestTask.new(:run) do |t|
         
     | 
| 
       8 
     | 
    
         
            -
                t.libs = PROJ.libs
         
     | 
| 
       9 
     | 
    
         
            -
                t.test_files = if test(?f, PROJ.test.file) then [PROJ.test.file]
         
     | 
| 
       10 
     | 
    
         
            -
                               else PROJ.test.files end
         
     | 
| 
       11 
     | 
    
         
            -
                t.ruby_opts += PROJ.ruby_opts
         
     | 
| 
       12 
     | 
    
         
            -
                t.ruby_opts += PROJ.test.opts
         
     | 
| 
       13 
     | 
    
         
            -
              end
         
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
              if HAVE_RCOV
         
     | 
| 
       16 
     | 
    
         
            -
                desc 'Run rcov on the unit tests'
         
     | 
| 
       17 
     | 
    
         
            -
                task :rcov => :clobber_rcov do
         
     | 
| 
       18 
     | 
    
         
            -
                  opts = PROJ.rcov.opts.dup << '-o' << PROJ.rcov.dir
         
     | 
| 
       19 
     | 
    
         
            -
                  opts = opts.join(' ')
         
     | 
| 
       20 
     | 
    
         
            -
                  files = if test(?f, PROJ.test.file) then [PROJ.test.file]
         
     | 
| 
       21 
     | 
    
         
            -
                          else PROJ.test.files end
         
     | 
| 
       22 
     | 
    
         
            -
                  files = files.join(' ')
         
     | 
| 
       23 
     | 
    
         
            -
                  sh "#{RCOV} #{files} #{opts}"
         
     | 
| 
       24 
     | 
    
         
            -
                end
         
     | 
| 
       25 
     | 
    
         
            -
             
     | 
| 
       26 
     | 
    
         
            -
                task :clobber_rcov do
         
     | 
| 
       27 
     | 
    
         
            -
                  rm_r 'coverage' rescue nil
         
     | 
| 
       28 
     | 
    
         
            -
                end
         
     | 
| 
       29 
     | 
    
         
            -
              end
         
     | 
| 
       30 
     | 
    
         
            -
             
     | 
| 
       31 
     | 
    
         
            -
            end  # namespace :test
         
     | 
| 
       32 
     | 
    
         
            -
             
     | 
| 
       33 
     | 
    
         
            -
            desc 'Alias to test:run'
         
     | 
| 
       34 
     | 
    
         
            -
            task :test => 'test:run'
         
     | 
| 
       35 
     | 
    
         
            -
             
     | 
| 
       36 
     | 
    
         
            -
            task :clobber => 'test:clobber_rcov' if HAVE_RCOV
         
     | 
| 
       37 
     | 
    
         
            -
             
     | 
| 
       38 
     | 
    
         
            -
            end
         
     | 
| 
       39 
     | 
    
         
            -
             
     | 
| 
       40 
     | 
    
         
            -
            # EOF
         
     | 
    
        data/tasks/zentest.rake
    DELETED
    
    | 
         @@ -1,36 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            if HAVE_ZENTEST
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
            # --------------------------------------------------------------------------
         
     | 
| 
       4 
     | 
    
         
            -
            if test(?e, PROJ.test.file) or not PROJ.test.files.to_a.empty?
         
     | 
| 
       5 
     | 
    
         
            -
            require 'autotest'
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
            namespace :test do
         
     | 
| 
       8 
     | 
    
         
            -
              task :autotest do
         
     | 
| 
       9 
     | 
    
         
            -
                Autotest.run
         
     | 
| 
       10 
     | 
    
         
            -
              end
         
     | 
| 
       11 
     | 
    
         
            -
            end
         
     | 
| 
       12 
     | 
    
         
            -
             
     | 
| 
       13 
     | 
    
         
            -
            desc "Run the autotest loop"
         
     | 
| 
       14 
     | 
    
         
            -
            task :autotest => 'test:autotest'
         
     | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
     | 
    
         
            -
            end  # if test
         
     | 
| 
       17 
     | 
    
         
            -
             
     | 
| 
       18 
     | 
    
         
            -
            # --------------------------------------------------------------------------
         
     | 
| 
       19 
     | 
    
         
            -
            if HAVE_SPEC_RAKE_SPECTASK and not PROJ.spec.files.to_a.empty?
         
     | 
| 
       20 
     | 
    
         
            -
            require 'autotest/rspec'
         
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
     | 
    
         
            -
            namespace :spec do
         
     | 
| 
       23 
     | 
    
         
            -
              task :autotest do
         
     | 
| 
       24 
     | 
    
         
            -
                load '.autotest' if test(?f, '.autotest')
         
     | 
| 
       25 
     | 
    
         
            -
                Autotest::Rspec.run
         
     | 
| 
       26 
     | 
    
         
            -
              end
         
     | 
| 
       27 
     | 
    
         
            -
            end
         
     | 
| 
       28 
     | 
    
         
            -
             
     | 
| 
       29 
     | 
    
         
            -
            desc "Run the autotest loop"
         
     | 
| 
       30 
     | 
    
         
            -
            task :autotest => 'spec:autotest'
         
     | 
| 
       31 
     | 
    
         
            -
             
     | 
| 
       32 
     | 
    
         
            -
            end  # if rspec
         
     | 
| 
       33 
     | 
    
         
            -
             
     | 
| 
       34 
     | 
    
         
            -
            end  # if HAVE_ZENTEST
         
     | 
| 
       35 
     | 
    
         
            -
             
     | 
| 
       36 
     | 
    
         
            -
            # EOF
         
     |