lib/reap/project.rb in reap-9.2.1 vs lib/reap/project.rb in reap-9.3.0
- old
+ new
@@ -1,18 +1,43 @@
module Reap
- require 'reap/manager'
+ require 'yaml'
+ require 'rbconfig'
+ require 'reap/utilities'
# = Project
#
# The Project class is the main class of Reap. It provides the tools for
# working with a project. The CLI Application class delegates to this class,
# for instance.
- class Project < Manager
+ class Project
require 'reap/metadata'
require 'reap/settings'
+ # Load up the tools
+ require "reap/project/announce.rb"
+ require "reap/project/check.rb"
+ require "reap/project/clean.rb"
+ require "reap/project/gem.rb"
+ require "reap/project/html.rb"
+ require "reap/project/log.rb"
+ require "reap/project/make.rb"
+ require "reap/project/package.rb"
+ require "reap/project/publish.rb"
+ require "reap/project/rdoc.rb"
+ require "reap/project/release.rb"
+ require "reap/project/scaffold.rb"
+ require "reap/project/site.rb"
+ require "reap/project/spec.rb"
+ require "reap/project/stats.rb"
+ require "reap/project/stamp.rb"
+ require "reap/project/scm.rb"
+ require "reap/project/svn.rb"
+ require "reap/project/test.rb"
+
+ include Utilities
+
# New Project.
def initialize(options=nil)
@options = options || {}
begin
@@ -43,10 +68,11 @@
#alias_method :config, :configuration
# Common options.
def options ; @options ; end
+ #alias_method :init_options, :options # TODO: Improve me! (see stamp.rb)
def dryrun? ; options['dryrun'] ; end
def trace? ; options['trace'] ; end
def force? ; options['force'] ; end
def verbose? ; options['verbose'] ; end
@@ -114,9 +140,15 @@
puts metadata.send(field)
end
else
y self
end
+ end
+
+ # Project manifest file.
+
+ def manifest_file
+ Dir.glob('Manifest{,.txt}', File::FNM_CASEFOLD).first
end
private
# Locate the project root directory. This is determined