Skip to content

Commit 23fab53

Browse files
authored
Merge pull request #30 from libgit2/cmn/deps-and-options
Update dependencies and add options to limit what to generate
2 parents d2b8ef9 + dde3466 commit 23fab53

File tree

9 files changed

+28
-16
lines changed

9 files changed

+28
-16
lines changed

Gemfile

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
source "http://rubygems.org"
22

33
platforms :rbx do
4-
gem 'rubysl', '~> 2.0'
4+
gem 'rubysl', '~> 2.2'
55
end
66

77
gemspec
88

9-
gem 'ffi-clang', :git => 'https://github.com/ioquatix/ffi-clang.git'
10-
119
# vim:ft=ruby

bin/cm

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ version Docurium::Version
1313
desc 'Generate HTML documentation'
1414
long_desc 'Generate HTML docs from a Docurium config file'
1515
command :doc do |c|
16+
c.flag :for, :desc => "The version to generate", :multiple => true
1617
c.action do |global_options,options,args|
1718
file = args.first
1819
Docurium::CLI.doc(file, options)
@@ -34,8 +35,10 @@ pre { |global,command,options,args| true }
3435
post { |global,command,options,args| true }
3536

3637
on_error do |exception|
37-
puts exception
38-
puts exception.backtrace
38+
if !exception.is_a?(SystemExit)
39+
puts exception
40+
puts exception.backtrace
41+
end
3942
end
4043

4144
exit run(ARGV)

docurium.gemspec

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,15 @@ Gem::Specification.new do |s|
1414
s.license = 'MIT'
1515

1616
s.add_dependency "version_sorter", "~>2.0"
17-
s.add_dependency "mustache", "~> 0.99"
17+
s.add_dependency "mustache", "~> 1.1"
1818
s.add_dependency "rocco", "~>0.8"
1919
s.add_dependency "gli", "~>2.5"
2020
s.add_dependency "rugged", "~>0.21"
2121
s.add_dependency "redcarpet", "~>3.0"
22-
s.add_dependency "ffi-clang", "~> 0.2"
22+
s.add_dependency "ffi-clang", "~> 0.5"
2323
s.add_development_dependency "bundler", "~>1.0"
24-
s.add_development_dependency "rake", "~> 10.1"
24+
s.add_development_dependency "rake", "~> 12"
25+
s.add_development_dependency "minitest", "~> 5.11"
2526

2627
s.files = `git ls-files`.split("\n")
2728
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")

lib/docurium.rb

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ def initialize(config_file, repo = nil)
2323
raise "You need to specify a config file" if !config_file
2424
raise "You need to specify a valid config file" if !valid_config(config_file)
2525
@sigs = {}
26-
@repo = repo || Rugged::Repository.discover('.')
26+
@repo = repo || Rugged::Repository.discover(config_file)
2727
end
2828

2929
def init_data(version = 'HEAD')
@@ -119,12 +119,22 @@ def generate_doc_for(version)
119119
data
120120
end
121121

122-
def generate_docs
122+
def generate_docs(options)
123123
output_index = Rugged::Index.new
124124
write_site(output_index)
125125
@tf = File.expand_path(File.join(File.dirname(__FILE__), 'docurium', 'layout.mustache'))
126126
versions = get_versions
127127
versions << 'HEAD'
128+
# If the user specified versions, validate them and overwrite
129+
if !(vers = options[:for]).empty?
130+
vers.each do |v|
131+
next if versions.include?(v)
132+
puts "Unknown version #{v}"
133+
exit(false)
134+
end
135+
versions = vers
136+
end
137+
128138
nversions = versions.size
129139
output = Queue.new
130140
pipes = {}

lib/docurium/cli.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ class CLI
33

44
def self.doc(idir, options)
55
doc = Docurium.new(idir)
6-
doc.generate_docs
6+
doc.generate_docs(options)
77
end
88

99
def self.gen(file)

lib/docurium/docparser.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ def parse_file(orig_filename, files)
1818
unsaved = files.map do |name, contents|
1919
full_path = File.join(tmpdir, name)
2020
dirname = File.dirname(full_path)
21-
FileUtils.mkdir_p(dirname) unless Dir.exists? dirname
21+
FileUtils.mkdir_p(dirname) unless Dir.exist? dirname
2222
File.new(full_path, File::CREAT).close()
2323

2424
UnsavedFile.new(full_path, contents)

test/repo_test.rb renamed to test/docurium_test.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
require 'docurium'
33
require 'rugged'
44

5-
class DocuriumTest < MiniTest::Unit::TestCase
5+
class DocuriumTest < Minitest::Test
66

77
def setup
88
@dir = Dir.mktmpdir()

test/gen_test.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
require 'docurium/cli'
44
require 'tempfile'
55

6-
class GenTest < MiniTest::Unit::TestCase
6+
class GenTest < Minitest::Test
77

88
# make sure we can read what we give the user
99
def test_read_generated_file
@@ -12,7 +12,7 @@ def test_read_generated_file
1212
Docurium::CLI.gen(file.path)
1313
end
1414

15-
Docurium.new file.path
15+
assert_raises(Rugged::RepositoryError) { Docurium.new file.path }
1616
end
1717

1818
end

test/parser_test.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
require 'docurium'
33
require 'pp'
44

5-
class TestParser < Minitest::Unit::TestCase
5+
class ParserTest < Minitest::Test
66

77
def setup
88
@parser = Docurium::DocParser.new

0 commit comments

Comments
 (0)