uberdoc 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a8e2f48319d33e62088a40fb92d43408e77aafe4
4
- data.tar.gz: edbb98fc2d2e953d0eca33ecf5c644c75949da92
3
+ metadata.gz: 8db80f0fb41de31a5ce0fbc61899c3ddef1b4827
4
+ data.tar.gz: 7fafea493c93c3b4b06f480a7da933b93a7dbf23
5
5
  SHA512:
6
- metadata.gz: f4e415cd02224b34f67364c75d43f972e71b593143386394c2061c509aab97eee5a3297f745358b17d9458135e4f19d9835f26a1cea6f25fe11cd8a2357d9c10
7
- data.tar.gz: ccfa99de0981ff73e3f7cd76c2f49b79afe009278ac38ab641d22570820639fd9393c821407a508b022d79e6b65de7a811101d9d0878e4220ec956490a0a1738
6
+ metadata.gz: cf3fa0676a41fec0460f666d6b6a6b2400fe342589a7db9779bf437a0b974f225c651dae5f0cbc57f407cb17516fd5178684ae74af1598540817fbf6ea6a8704
7
+ data.tar.gz: a27264fcb0cd0d9cfb8a69f8e35c04cf823f62759697ad9be8e0cae89bc7636cf8aa405e36379718a2f90d651ef0f9300805d55cc2bb0d7da9601836aec8c590
data/Gemfile CHANGED
@@ -5,6 +5,8 @@ source "http://rubygems.org"
5
5
 
6
6
  # Add dependencies to develop your gem here.
7
7
  # Include everything needed to run rake, tests, features, etc.
8
+ gem "colorize"
9
+
8
10
  group :development do
9
11
  gem "shoulda", ">= 0"
10
12
  gem "rdoc", "~> 3.12"
@@ -9,6 +9,7 @@ GEM
9
9
  tzinfo (~> 1.1)
10
10
  addressable (2.3.6)
11
11
  builder (3.2.2)
12
+ colorize (0.7.5)
12
13
  descendants_tracker (0.0.4)
13
14
  thread_safe (~> 0.3, >= 0.3.1)
14
15
  docile (1.1.5)
@@ -74,6 +75,7 @@ PLATFORMS
74
75
 
75
76
  DEPENDENCIES
76
77
  bundler (~> 1.0)
78
+ colorize
77
79
  jeweler (~> 2.0.1)
78
80
  rdoc (~> 3.12)
79
81
  shoulda
data/README.md CHANGED
@@ -3,16 +3,27 @@ UberDoc
3
3
 
4
4
  A Documentation Generator
5
5
 
6
- ```
7
- Usage: uberdoc [options]
8
-
9
- Available Options:
10
- -d, --directory DIRECTORY Looks for all UberDocMe files in the
11
- specified directory
12
- -v, --verbose Verbosely print all commands and their
13
- output
14
- -g, --generate Generate the base UberDocMe template
15
- file in the current directory
16
- -h Show help
17
-
18
- ```
6
+ Installation
7
+ ------------
8
+
9
+ * Initial Install: `gem install uberdoc`
10
+ * Update to latest: `gem update uberdoc`
11
+
12
+ Prepend `sudo` to each command if you are using the system Ruby on Mac.
13
+
14
+ Post Install
15
+ ------------
16
+
17
+ Run `uberdoc --doctor` to run diagnostics for missing dependencies on your system
18
+
19
+ Help on Available Command
20
+ -------------------------
21
+
22
+ * `uberdoc -h`
23
+
24
+ Adding Custom Tasks
25
+ -------------------
26
+
27
+ * If your task needs custom switches and command line options, add the same to the options parser
28
+ * Create a new `UberDoc::Task` subclass in the `lib/tasks` folder and name it `<your_task_name>_task.rb`
29
+ * Your custom subclass will be automatically picked up and asked to perform its task on the appropriate switches
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.0
1
+ 0.3.1
@@ -15,6 +15,7 @@ module UberDoc
15
15
  options.verbose = false
16
16
  options.generate = false
17
17
  options.doctor = false
18
+ options.docset = false
18
19
 
19
20
  parser = OptionParser.new do |opts|
20
21
 
@@ -42,6 +43,11 @@ module UberDoc
42
43
  options.doctor = true
43
44
  end
44
45
 
46
+ opts.on("--docset",
47
+ "Generate Docsets as well as HTML docs") do |docset|
48
+ options.docset = true
49
+ end
50
+
45
51
  end # OptionParser
46
52
 
47
53
  parser.parse!(args)
@@ -36,27 +36,29 @@ module UberDoc
36
36
 
37
37
  File.open(composite_doxyfile_path, 'w') {|f| f.write(composite_doxyfile_contents) }
38
38
 
39
- puts "Generating docset for #{project_name}"
39
+ if @options.docset
40
+ puts "Generating docset for #{project_name}"
40
41
 
41
- # Change into the directory and invoke doxygen
42
- FileUtils.cd(project_dir) do
43
- UberDoc::Util::execute_command("#{DOXYGEN_BIN} #{composite_doxyfile_path}", @options.verbose)
44
- end
42
+ # Change into the directory and invoke doxygen
43
+ FileUtils.cd(project_dir) do
44
+ UberDoc::Util::execute_command("#{DOXYGEN_BIN} #{composite_doxyfile_path}", @options.verbose)
45
+ end
45
46
 
46
- # Change into the HTML directory and make the docset
47
- html_output_directory = File.join(absolute_out_dir, "html")
47
+ # Change into the HTML directory and make the docset
48
+ html_output_directory = File.join(absolute_out_dir, "html")
48
49
 
49
- FileUtils.cd(html_output_directory) do
50
- UberDoc::Util::execute_command("make", @options.verbose)
51
- end
50
+ FileUtils.cd(html_output_directory) do
51
+ UberDoc::Util::execute_command("make", @options.verbose)
52
+ end
52
53
 
53
- # Find the docset file in the directory and move it one level up
54
- docset_directory = File.join(absolute_out_dir, "docset")
54
+ # Find the docset file in the directory and move it one level up
55
+ docset_directory = File.join(absolute_out_dir, "docset")
55
56
 
56
- FileUtils.mkdir_p(docset_directory)
57
+ FileUtils.mkdir_p(docset_directory)
57
58
 
58
- Dir["#{html_output_directory}/**/*.docset"].each do |docset|
59
- FileUtils.mv(docset, docset_directory)
59
+ Dir["#{html_output_directory}/**/*.docset"].each do |docset|
60
+ FileUtils.mv(docset, docset_directory)
61
+ end
60
62
  end
61
63
 
62
64
  # Generate the docset again but this time with treeview
@@ -2,6 +2,7 @@
2
2
  require 'open3'
3
3
  require 'fileutils'
4
4
  require 'pp'
5
+ require 'colorize'
5
6
 
6
7
  module UberDoc
7
8
  module Util
@@ -13,20 +14,40 @@ module UberDoc
13
14
  # Exectues the given command and optionally dumps the command and its output
14
15
  #
15
16
  def self.execute_command(command, verbose)
16
- stdin, stdout, stderr, wait_thr = Open3.popen3(command)
17
-
18
- res = stdout.read
19
17
 
20
18
  if verbose
21
- puts ">>>>>>>>>>>>>>>>>>>>>>>>>"
22
- puts "Command '#{command}'"
23
- puts res
24
- puts "<<<<<<<<<<<<<<<<<<<<<<<<<"
19
+ puts ">>>>>>>>>>>>>>>>>>>>>>>>>".green
20
+ puts "Command '#{command}'".green
25
21
  end
26
22
 
27
- stdin.close
28
- stdout.close
29
- stderr.close
23
+ res = ""
24
+ Open3.popen3(command) do |stdin, stdout, stderr, thread|
25
+
26
+ {:out => stdout, :err => stderr}.each do |key, stream|
27
+ Thread.new do
28
+ until (line = stream.gets).nil? do
29
+ if key == :out
30
+ res += line
31
+ end
32
+
33
+ if verbose
34
+ case key
35
+ when :out
36
+ puts line
37
+ when :err
38
+ puts line.red
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
44
+
45
+ thread.join
46
+ end
47
+
48
+ if verbose
49
+ puts "<<<<<<<<<<<<<<<<<<<<<<<<<".green
50
+ end
30
51
 
31
52
  return res
32
53
  end
@@ -2,11 +2,11 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: uberdoc 0.3.0 ruby lib
5
+ # stub: uberdoc 0.3.1 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "uberdoc"
9
- s.version = "0.3.0"
9
+ s.version = "0.3.1"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib"]
@@ -50,12 +50,14 @@ Gem::Specification.new do |s|
50
50
  s.specification_version = 4
51
51
 
52
52
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
53
+ s.add_runtime_dependency(%q<colorize>, [">= 0"])
53
54
  s.add_development_dependency(%q<shoulda>, [">= 0"])
54
55
  s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
55
56
  s.add_development_dependency(%q<bundler>, ["~> 1.0"])
56
57
  s.add_development_dependency(%q<jeweler>, ["~> 2.0.1"])
57
58
  s.add_development_dependency(%q<simplecov>, [">= 0"])
58
59
  else
60
+ s.add_dependency(%q<colorize>, [">= 0"])
59
61
  s.add_dependency(%q<shoulda>, [">= 0"])
60
62
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
61
63
  s.add_dependency(%q<bundler>, ["~> 1.0"])
@@ -63,6 +65,7 @@ Gem::Specification.new do |s|
63
65
  s.add_dependency(%q<simplecov>, [">= 0"])
64
66
  end
65
67
  else
68
+ s.add_dependency(%q<colorize>, [">= 0"])
66
69
  s.add_dependency(%q<shoulda>, [">= 0"])
67
70
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
68
71
  s.add_dependency(%q<bundler>, ["~> 1.0"])
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uberdoc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chinmay Garde
@@ -10,6 +10,20 @@ bindir: bin
10
10
  cert_chain: []
11
11
  date: 2015-02-18 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: colorize
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: shoulda
15
29
  requirement: !ruby/object:Gem::Requirement