sdoc_all 0.2.0.6 → 0.2.0.7
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/Rakefile +26 -1
- data/VERSION.yml +1 -1
- data/lib/sdoc_all/base.rb +20 -6
- data/lib/sdoc_all/rails.rb +2 -1
- data/lib/sdoc_all/ruby.rb +2 -1
- data/sdoc_all.gemspec +2 -2
- data/spec/sdoc_all/rails_spec.rb +1 -1
- data/spec/sdoc_all/ruby_spec.rb +1 -1
- metadata +2 -2
data/Rakefile
CHANGED
@@ -7,7 +7,7 @@ require 'echoe'
|
|
7
7
|
|
8
8
|
version = YAML.load_file(File.join(File.dirname(__FILE__), 'VERSION.yml')).join('.') rescue nil
|
9
9
|
|
10
|
-
Echoe.new('sdoc_all', version) do |p|
|
10
|
+
echoe = Echoe.new('sdoc_all', version) do |p|
|
11
11
|
p.author = "toy"
|
12
12
|
p.summary = "documentation for everything"
|
13
13
|
p.description = "Command line tool to get documentation for ruby, rails, gems and plugins in one place"
|
@@ -19,3 +19,28 @@ Echoe.new('sdoc_all', version) do |p|
|
|
19
19
|
# TODO: sdoc or voloko-sdoc
|
20
20
|
p.project = 'toytoy'
|
21
21
|
end
|
22
|
+
|
23
|
+
desc "Replace system gem with symlink to this folder"
|
24
|
+
task 'ghost' do
|
25
|
+
path = Gem.searcher.find(echoe.name).full_gem_path
|
26
|
+
system 'sudo', 'rm', '-r', path
|
27
|
+
symlink File.expand_path('.'), path
|
28
|
+
end
|
29
|
+
|
30
|
+
begin
|
31
|
+
require 'spec/rake/spectask'
|
32
|
+
|
33
|
+
task :default => :spec
|
34
|
+
task :test
|
35
|
+
|
36
|
+
desc "Run the specs"
|
37
|
+
Spec::Rake::SpecTask.new do |t|
|
38
|
+
t.spec_opts = ['--options', "spec/spec.opts"]
|
39
|
+
t.spec_files = FileList['spec/**/*_spec.rb']
|
40
|
+
end
|
41
|
+
rescue LoadError
|
42
|
+
puts <<-EOS
|
43
|
+
To use rspec for testing you must install rspec gem:
|
44
|
+
gem install rspec
|
45
|
+
EOS
|
46
|
+
end
|
data/VERSION.yml
CHANGED
@@ -1 +1 @@
|
|
1
|
-
[0, 2, 0,
|
1
|
+
[0, 2, 0, 7]
|
data/lib/sdoc_all/base.rb
CHANGED
@@ -59,11 +59,12 @@ class SdocAll
|
|
59
59
|
end
|
60
60
|
end
|
61
61
|
|
62
|
+
def used_sources
|
63
|
+
@used_sources ||= []
|
64
|
+
end
|
65
|
+
|
62
66
|
def inherited(subclass)
|
63
|
-
|
64
|
-
[name, name.singularize, name.pluralize].uniq.each do |name_form|
|
65
|
-
subclasses[name_form] = subclass
|
66
|
-
end
|
67
|
+
subclasses[subclass.short_name] = subclass
|
67
68
|
end
|
68
69
|
|
69
70
|
def entries
|
@@ -77,8 +78,9 @@ class SdocAll
|
|
77
78
|
def to_document(type, config)
|
78
79
|
type = type.to_s
|
79
80
|
config.symbolize_keys! if config.is_a?(Hash)
|
80
|
-
|
81
|
-
|
81
|
+
subclass = subclasses[type] || subclasses[type.singularize] || subclasses[type.pluralize]
|
82
|
+
if subclass
|
83
|
+
entries << subclass.new(config)
|
82
84
|
else
|
83
85
|
raise ConfigError.new("don't know how to build \"#{type}\" => #{config.inspect}")
|
84
86
|
end
|
@@ -89,6 +91,18 @@ class SdocAll
|
|
89
91
|
entries.each do |entry|
|
90
92
|
entry.add_tasks(options)
|
91
93
|
end
|
94
|
+
subclasses.values.each do |subclass|
|
95
|
+
unless subclass.used_sources.empty?
|
96
|
+
paths = Rake::FileList.new
|
97
|
+
paths.include(subclass.sources_path + '*')
|
98
|
+
subclass.used_sources.each do |path|
|
99
|
+
paths.exclude(path)
|
100
|
+
end
|
101
|
+
paths.resolve.each do |path|
|
102
|
+
remove_if_present(path)
|
103
|
+
end
|
104
|
+
end
|
105
|
+
end
|
92
106
|
@@tasks
|
93
107
|
end
|
94
108
|
|
data/lib/sdoc_all/rails.rb
CHANGED
@@ -26,12 +26,13 @@ class SdocAll
|
|
26
26
|
path = sources_path + version
|
27
27
|
|
28
28
|
unless path.directory?
|
29
|
-
Base.remove_if_present(
|
29
|
+
Base.remove_if_present(path)
|
30
30
|
sources_path
|
31
31
|
Base.with_env 'VERSION', version do
|
32
32
|
Base.system('rails', path, '--freeze')
|
33
33
|
end
|
34
34
|
end
|
35
|
+
self.class.used_sources << path
|
35
36
|
|
36
37
|
paths = Rake::FileList.new
|
37
38
|
Dir.chdir(path) do
|
data/lib/sdoc_all/ruby.rb
CHANGED
@@ -26,7 +26,7 @@ class SdocAll
|
|
26
26
|
path = sources_path + version
|
27
27
|
|
28
28
|
unless path.directory?
|
29
|
-
Base.remove_if_present(
|
29
|
+
Base.remove_if_present(path)
|
30
30
|
case archive.extension
|
31
31
|
when 'tar.bz2'
|
32
32
|
Base.system('tar', '-xjf', archive.path, '-C', sources_path)
|
@@ -37,6 +37,7 @@ class SdocAll
|
|
37
37
|
end
|
38
38
|
File.rename(sources_path + "ruby-#{version}", path)
|
39
39
|
end
|
40
|
+
self.class.used_sources << path
|
40
41
|
|
41
42
|
Base.add_task(
|
42
43
|
:src_path => path,
|
data/sdoc_all.gemspec
CHANGED
@@ -2,11 +2,11 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{sdoc_all}
|
5
|
-
s.version = "0.2.0.
|
5
|
+
s.version = "0.2.0.7"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["toy"]
|
9
|
-
s.date = %q{2009-05-
|
9
|
+
s.date = %q{2009-05-11}
|
10
10
|
s.default_executable = %q{sdoc-all}
|
11
11
|
s.description = %q{Command line tool to get documentation for ruby, rails, gems and plugins in one place}
|
12
12
|
s.email = %q{ivan@workisfun.ru}
|
data/spec/sdoc_all/rails_spec.rb
CHANGED
@@ -41,7 +41,7 @@ class SdocAll
|
|
41
41
|
|
42
42
|
it "should create rails app" do
|
43
43
|
FileTest.should_receive(:directory?).with("sources/rails/1.3.5").and_return(false)
|
44
|
-
Base.should_receive(:remove_if_present).with(Pathname.new("sources/rails"))
|
44
|
+
Base.should_receive(:remove_if_present).with(Pathname.new("sources/rails/1.3.5"))
|
45
45
|
Base.should_receive(:system).with("rails", Pathname.new("sources/rails/1.3.5"), "--freeze")
|
46
46
|
Rails.new('1.3.5').add_tasks
|
47
47
|
end
|
data/spec/sdoc_all/ruby_spec.rb
CHANGED
@@ -177,7 +177,7 @@ class SdocAll
|
|
177
177
|
|
178
178
|
it "should extract archive if matching directory does not exist" do
|
179
179
|
@path.stub!(:directory?).and_return(false)
|
180
|
-
Base.should_receive(:remove_if_present).with(@
|
180
|
+
Base.should_receive(:remove_if_present).with(@path)
|
181
181
|
Base.should_receive(:system).with("tar", "-xjf", "sources/ruby-1.2.3-p666.tar.bz2", "-C", @sources_path)
|
182
182
|
@path2 = mock(:path2)
|
183
183
|
@sources_path.should_receive(:+).with('ruby-1.2.3-p666').and_return(@path2)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sdoc_all
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.0.
|
4
|
+
version: 0.2.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- toy
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-05-
|
12
|
+
date: 2009-05-11 00:00:00 +04:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|