ore 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (107) hide show
  1. data/.document +4 -0
  2. data/.rspec +1 -0
  3. data/.yardopts +1 -0
  4. data/ChangeLog.md +31 -0
  5. data/GemspecYML.md +252 -0
  6. data/LICENSE.txt +21 -0
  7. data/README.md +104 -0
  8. data/Rakefile +9 -0
  9. data/bin/mine +12 -0
  10. data/bin/ore +12 -0
  11. data/data/ore/templates/base/.document +3 -0
  12. data/data/ore/templates/base/.gitignore.erb +3 -0
  13. data/data/ore/templates/base/:name:.gemspec.erb +10 -0
  14. data/data/ore/templates/base/ChangeLog.md.erb +4 -0
  15. data/data/ore/templates/base/ChangeLog.rdoc.erb +4 -0
  16. data/data/ore/templates/base/ChangeLog.tt.erb +4 -0
  17. data/data/ore/templates/base/LICENSE.txt.erb +20 -0
  18. data/data/ore/templates/base/README.md.erb +42 -0
  19. data/data/ore/templates/base/README.rdoc.erb +38 -0
  20. data/data/ore/templates/base/README.tt.erb +44 -0
  21. data/data/ore/templates/base/Rakefile.erb +23 -0
  22. data/data/ore/templates/base/gemspec.yml.erb +23 -0
  23. data/data/ore/templates/base/lib/:namespace_dir:.rb.erb +1 -0
  24. data/data/ore/templates/base/lib/:namespace_dir:/version.rb.erb +8 -0
  25. data/data/ore/templates/bundler/Gemfile.erb +20 -0
  26. data/data/ore/templates/bundler/_dependencies.erb +1 -0
  27. data/data/ore/templates/jeweler_tasks/_dependencies.erb +3 -0
  28. data/data/ore/templates/jeweler_tasks/_tasks.erb +17 -0
  29. data/data/ore/templates/ore_tasks/_dependencies.erb +1 -0
  30. data/data/ore/templates/ore_tasks/_tasks.erb +12 -0
  31. data/data/ore/templates/rdoc/_tasks.erb +6 -0
  32. data/data/ore/templates/rspec/.rspec +1 -0
  33. data/data/ore/templates/rspec/_dependencies.erb +3 -0
  34. data/data/ore/templates/rspec/_tasks.erb +14 -0
  35. data/data/ore/templates/rspec/spec/:namespace_dir:_spec.rb.erb +8 -0
  36. data/data/ore/templates/rspec/spec/spec_helper.rb.erb +7 -0
  37. data/data/ore/templates/test_unit/test/helper.rb.erb +24 -0
  38. data/data/ore/templates/test_unit/test/test_:name:.rb.erb +5 -0
  39. data/data/ore/templates/yard/.yardopts.erb +1 -0
  40. data/data/ore/templates/yard/_dependencies.erb +1 -0
  41. data/data/ore/templates/yard/_gem.erb +1 -0
  42. data/data/ore/templates/yard/_tasks.erb +13 -0
  43. data/gemspec.yml +21 -0
  44. data/lib/ore.rb +3 -0
  45. data/lib/ore/checks.rb +85 -0
  46. data/lib/ore/cli.rb +120 -0
  47. data/lib/ore/config.rb +52 -0
  48. data/lib/ore/defaults.rb +137 -0
  49. data/lib/ore/dependency.rb +62 -0
  50. data/lib/ore/document_file.rb +118 -0
  51. data/lib/ore/exceptions.rb +3 -0
  52. data/lib/ore/exceptions/exception.rb +4 -0
  53. data/lib/ore/exceptions/invalid_metadata.rb +6 -0
  54. data/lib/ore/exceptions/project_not_found.rb +6 -0
  55. data/lib/ore/generator.rb +247 -0
  56. data/lib/ore/naming.rb +95 -0
  57. data/lib/ore/paths.rb +143 -0
  58. data/lib/ore/project.rb +568 -0
  59. data/lib/ore/settings.rb +236 -0
  60. data/lib/ore/specification.rb +29 -0
  61. data/lib/ore/template.rb +3 -0
  62. data/lib/ore/template/directory.rb +179 -0
  63. data/lib/ore/template/helpers.rb +144 -0
  64. data/lib/ore/template/interpolations.rb +31 -0
  65. data/lib/ore/versions.rb +3 -0
  66. data/lib/ore/versions/exceptions.rb +1 -0
  67. data/lib/ore/versions/exceptions/invalid_version.rb +8 -0
  68. data/lib/ore/versions/version.rb +75 -0
  69. data/lib/ore/versions/version_constant.rb +126 -0
  70. data/lib/ore/versions/version_file.rb +66 -0
  71. data/lib/rubygems_plugin.rb +40 -0
  72. data/ore.gemspec +6 -0
  73. data/spec/dependency_spec.rb +36 -0
  74. data/spec/document_file_spec.rb +29 -0
  75. data/spec/helpers/files.rb +7 -0
  76. data/spec/helpers/files/.document +5 -0
  77. data/spec/helpers/files/VERSION +1 -0
  78. data/spec/helpers/files/VERSION.yml +5 -0
  79. data/spec/helpers/projects.rb +13 -0
  80. data/spec/helpers/projects/dm-plugin/Gemfile +3 -0
  81. data/spec/helpers/projects/dm-plugin/VERSION +1 -0
  82. data/spec/helpers/projects/dm-plugin/dm-plugin.gemspec +10 -0
  83. data/spec/helpers/projects/dm-plugin/gemspec.yml +7 -0
  84. data/spec/helpers/projects/dm-plugin/lib/dm-plugin.rb +1 -0
  85. data/spec/helpers/projects/explicit/gemspec.yml +10 -0
  86. data/spec/helpers/projects/explicit/lib/explicit/version.rb +15 -0
  87. data/spec/helpers/projects/ffi-binding/gemspec.yml +7 -0
  88. data/spec/helpers/projects/ffi-binding/lib/ffi/binding/version.rb +5 -0
  89. data/spec/helpers/projects/jewelery/VERSION +1 -0
  90. data/spec/helpers/projects/jewelery/bin/jewelery +3 -0
  91. data/spec/helpers/projects/jewelery/gemspec.yml +4 -0
  92. data/spec/helpers/projects/jewelery/jewelery.gemspec +10 -0
  93. data/spec/helpers/projects/jewelery/lib/jewelery.rb +4 -0
  94. data/spec/helpers/projects/jewelery/lib/jewelery/rubies.rb +4 -0
  95. data/spec/helpers/projects/minimal/gemspec.yml +4 -0
  96. data/spec/helpers/projects/minimal/lib/minimal.rb +2 -0
  97. data/spec/naming_spec.rb +48 -0
  98. data/spec/projects/dm_plugin_project_spec.rb +29 -0
  99. data/spec/projects/explicit_project_spec.rb +33 -0
  100. data/spec/projects/ffi_binding_project_spec.rb +21 -0
  101. data/spec/projects/jeweler_project_spec.rb +17 -0
  102. data/spec/projects/minimal_project_spec.rb +17 -0
  103. data/spec/projects/project_examples.rb +34 -0
  104. data/spec/spec_helper.rb +4 -0
  105. data/spec/versions/version_file_spec.rb +28 -0
  106. data/spec/versions/version_spec.rb +53 -0
  107. metadata +226 -0
@@ -0,0 +1,17 @@
1
+ require 'spec_helper'
2
+ require 'helpers/projects'
3
+ require 'projects/project_examples'
4
+
5
+ describe "Minimal project" do
6
+ include Helpers::Projects
7
+
8
+ before(:all) do
9
+ @project = project('minimal')
10
+ end
11
+
12
+ it_should_behave_like 'an Ore Project'
13
+
14
+ it "should not have a namespace directory" do
15
+ @project.namespace_dir.should be_nil
16
+ end
17
+ end
@@ -0,0 +1,34 @@
1
+ require 'spec_helper'
2
+ require 'ore/project'
3
+
4
+ shared_examples_for 'an Ore Project' do
5
+ it "should have project files" do
6
+ @project.project_files.should_not be_empty
7
+ end
8
+
9
+ it "should have a name" do
10
+ @project.name.should_not be_nil
11
+ end
12
+
13
+ it "should have a namespace" do
14
+ @project.namespace.should_not be_nil
15
+ end
16
+
17
+ it "should have a version" do
18
+ @project.version.major.should == 1
19
+ @project.version.minor.should == 2
20
+ @project.version.patch.should == 3
21
+ end
22
+
23
+ it "should have a summary" do
24
+ @project.summary.should_not be_nil
25
+ end
26
+
27
+ it "should have a description" do
28
+ @project.description.should_not be_nil
29
+ end
30
+
31
+ it "should have authors" do
32
+ @project.authors.should_not be_empty
33
+ end
34
+ end
@@ -0,0 +1,4 @@
1
+ require 'rspec'
2
+ require 'ore/config'
3
+
4
+ include Ore
@@ -0,0 +1,28 @@
1
+ require 'spec_helper'
2
+ require 'helpers/files'
3
+
4
+ require 'ore/versions/version_file'
5
+
6
+ describe Versions::VersionFile do
7
+ include Helpers::Files
8
+
9
+ subject { Versions::VersionFile }
10
+
11
+ it "should load and parse the version string from a VERSION file" do
12
+ v = subject.load(file('VERSION'))
13
+
14
+ v.major.should == 1
15
+ v.minor.should == 2
16
+ v.patch.should == 3
17
+ v.build.should be_nil
18
+ end
19
+
20
+ it "should load and parse the version numbers from a VERSION.yml file" do
21
+ v = subject.load(file('VERSION.yml'))
22
+
23
+ v.major.should == 1
24
+ v.minor.should == 2
25
+ v.patch.should == 3
26
+ v.build.should be_nil
27
+ end
28
+ end
@@ -0,0 +1,53 @@
1
+ require 'spec_helper'
2
+ require 'ore/versions/version'
3
+
4
+ describe Ore::Versions::Version do
5
+ subject { Ore::Versions::Version }
6
+
7
+ describe "new" do
8
+ let(:stable) { subject.new(1,2,3) }
9
+ let(:beta) { subject.new(1,2,3,'beta4') }
10
+
11
+ it "should default the major, minor and patch numbers to 0" do
12
+ v = subject.new(nil,nil,nil)
13
+
14
+ v.major.should == 0
15
+ v.minor.should == 0
16
+ v.patch.should == 0
17
+ end
18
+
19
+ it "should default the build string to nil" do
20
+ stable.build.should == nil
21
+ end
22
+
23
+ it "should construct a version string from the numbers" do
24
+ stable.version.should == '1.2.3'
25
+ end
26
+
27
+ it "should append the build string to the version" do
28
+ beta.version.should == '1.2.3.beta4'
29
+ end
30
+ end
31
+
32
+ describe "parse" do
33
+ let(:stable) { '1.2.3' }
34
+ let(:beta) { '1.2.3.beta4' }
35
+
36
+ it "should parse the major, minor and patch version numbers" do
37
+ v = subject.parse(stable)
38
+
39
+ v.major.should == 1
40
+ v.minor.should == 2
41
+ v.patch.should == 3
42
+ end
43
+
44
+ it "should parse the build string if given" do
45
+ v = subject.parse(beta)
46
+
47
+ v.major.should == 1
48
+ v.minor.should == 2
49
+ v.patch.should == 3
50
+ v.build.should == 'beta4'
51
+ end
52
+ end
53
+ end
metadata ADDED
@@ -0,0 +1,226 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ore
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 1
8
+ - 2
9
+ version: 0.1.2
10
+ platform: ruby
11
+ authors:
12
+ - Postmodern
13
+ autorequire:
14
+ bindir: bin
15
+ cert_chain: []
16
+
17
+ date: 2010-10-25 00:00:00 -07:00
18
+ default_executable: ore
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ name: thor
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
25
+ requirements:
26
+ - - ~>
27
+ - !ruby/object:Gem::Version
28
+ segments:
29
+ - 0
30
+ - 14
31
+ - 3
32
+ version: 0.14.3
33
+ type: :runtime
34
+ version_requirements: *id001
35
+ - !ruby/object:Gem::Dependency
36
+ name: yard
37
+ prerelease: false
38
+ requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ segments:
44
+ - 0
45
+ - 6
46
+ - 1
47
+ version: 0.6.1
48
+ type: :development
49
+ version_requirements: *id002
50
+ - !ruby/object:Gem::Dependency
51
+ name: rspec
52
+ prerelease: false
53
+ requirement: &id003 !ruby/object:Gem::Requirement
54
+ none: false
55
+ requirements:
56
+ - - ~>
57
+ - !ruby/object:Gem::Version
58
+ segments:
59
+ - 2
60
+ - 0
61
+ - 0
62
+ version: 2.0.0
63
+ type: :development
64
+ version_requirements: *id003
65
+ description: Ore is a simple RubyGem building solution. Ore handles the creation of Gem::Specification objects as well as building '.gem' files. Ore allows the developer to keep all of the project information in a single YAML file.
66
+ email: postmodern.mod3@gmail.com
67
+ executables:
68
+ - mine
69
+ - ore
70
+ extensions: []
71
+
72
+ extra_rdoc_files:
73
+ - README.md
74
+ - ChangeLog.md
75
+ - GemspecYML.md
76
+ - LICENSE.txt
77
+ files:
78
+ - .document
79
+ - .rspec
80
+ - .yardopts
81
+ - ChangeLog.md
82
+ - GemspecYML.md
83
+ - LICENSE.txt
84
+ - README.md
85
+ - Rakefile
86
+ - bin/mine
87
+ - bin/ore
88
+ - data/ore/templates/base/.document
89
+ - data/ore/templates/base/.gitignore.erb
90
+ - data/ore/templates/base/:name:.gemspec.erb
91
+ - data/ore/templates/base/ChangeLog.md.erb
92
+ - data/ore/templates/base/ChangeLog.rdoc.erb
93
+ - data/ore/templates/base/ChangeLog.tt.erb
94
+ - data/ore/templates/base/LICENSE.txt.erb
95
+ - data/ore/templates/base/README.md.erb
96
+ - data/ore/templates/base/README.rdoc.erb
97
+ - data/ore/templates/base/README.tt.erb
98
+ - data/ore/templates/base/Rakefile.erb
99
+ - data/ore/templates/base/gemspec.yml.erb
100
+ - data/ore/templates/base/lib/:namespace_dir:.rb.erb
101
+ - data/ore/templates/base/lib/:namespace_dir:/version.rb.erb
102
+ - data/ore/templates/bundler/Gemfile.erb
103
+ - data/ore/templates/bundler/_dependencies.erb
104
+ - data/ore/templates/jeweler_tasks/_dependencies.erb
105
+ - data/ore/templates/jeweler_tasks/_tasks.erb
106
+ - data/ore/templates/ore_tasks/_dependencies.erb
107
+ - data/ore/templates/ore_tasks/_tasks.erb
108
+ - data/ore/templates/rdoc/_tasks.erb
109
+ - data/ore/templates/rspec/.rspec
110
+ - data/ore/templates/rspec/_dependencies.erb
111
+ - data/ore/templates/rspec/_tasks.erb
112
+ - data/ore/templates/rspec/spec/:namespace_dir:_spec.rb.erb
113
+ - data/ore/templates/rspec/spec/spec_helper.rb.erb
114
+ - data/ore/templates/test_unit/test/helper.rb.erb
115
+ - data/ore/templates/test_unit/test/test_:name:.rb.erb
116
+ - data/ore/templates/yard/.yardopts.erb
117
+ - data/ore/templates/yard/_dependencies.erb
118
+ - data/ore/templates/yard/_gem.erb
119
+ - data/ore/templates/yard/_tasks.erb
120
+ - gemspec.yml
121
+ - lib/ore.rb
122
+ - lib/ore/checks.rb
123
+ - lib/ore/cli.rb
124
+ - lib/ore/config.rb
125
+ - lib/ore/defaults.rb
126
+ - lib/ore/dependency.rb
127
+ - lib/ore/document_file.rb
128
+ - lib/ore/exceptions.rb
129
+ - lib/ore/exceptions/exception.rb
130
+ - lib/ore/exceptions/invalid_metadata.rb
131
+ - lib/ore/exceptions/project_not_found.rb
132
+ - lib/ore/generator.rb
133
+ - lib/ore/naming.rb
134
+ - lib/ore/paths.rb
135
+ - lib/ore/project.rb
136
+ - lib/ore/settings.rb
137
+ - lib/ore/specification.rb
138
+ - lib/ore/template.rb
139
+ - lib/ore/template/directory.rb
140
+ - lib/ore/template/helpers.rb
141
+ - lib/ore/template/interpolations.rb
142
+ - lib/ore/versions.rb
143
+ - lib/ore/versions/exceptions.rb
144
+ - lib/ore/versions/exceptions/invalid_version.rb
145
+ - lib/ore/versions/version.rb
146
+ - lib/ore/versions/version_constant.rb
147
+ - lib/ore/versions/version_file.rb
148
+ - lib/rubygems_plugin.rb
149
+ - ore.gemspec
150
+ - spec/dependency_spec.rb
151
+ - spec/document_file_spec.rb
152
+ - spec/helpers/files.rb
153
+ - spec/helpers/files/.document
154
+ - spec/helpers/files/VERSION
155
+ - spec/helpers/files/VERSION.yml
156
+ - spec/helpers/projects.rb
157
+ - spec/helpers/projects/dm-plugin/Gemfile
158
+ - spec/helpers/projects/dm-plugin/VERSION
159
+ - spec/helpers/projects/dm-plugin/dm-plugin.gemspec
160
+ - spec/helpers/projects/dm-plugin/gemspec.yml
161
+ - spec/helpers/projects/dm-plugin/lib/dm-plugin.rb
162
+ - spec/helpers/projects/explicit/gemspec.yml
163
+ - spec/helpers/projects/explicit/lib/explicit/version.rb
164
+ - spec/helpers/projects/ffi-binding/gemspec.yml
165
+ - spec/helpers/projects/ffi-binding/lib/ffi/binding/version.rb
166
+ - spec/helpers/projects/jewelery/VERSION
167
+ - spec/helpers/projects/jewelery/bin/jewelery
168
+ - spec/helpers/projects/jewelery/gemspec.yml
169
+ - spec/helpers/projects/jewelery/jewelery.gemspec
170
+ - spec/helpers/projects/jewelery/lib/jewelery.rb
171
+ - spec/helpers/projects/jewelery/lib/jewelery/rubies.rb
172
+ - spec/helpers/projects/minimal/gemspec.yml
173
+ - spec/helpers/projects/minimal/lib/minimal.rb
174
+ - spec/naming_spec.rb
175
+ - spec/projects/dm_plugin_project_spec.rb
176
+ - spec/projects/explicit_project_spec.rb
177
+ - spec/projects/ffi_binding_project_spec.rb
178
+ - spec/projects/jeweler_project_spec.rb
179
+ - spec/projects/minimal_project_spec.rb
180
+ - spec/projects/project_examples.rb
181
+ - spec/spec_helper.rb
182
+ - spec/versions/version_file_spec.rb
183
+ - spec/versions/version_spec.rb
184
+ has_rdoc: yard
185
+ homepage: http://github.com/postmodern/ore
186
+ licenses:
187
+ - MIT
188
+ post_install_message:
189
+ rdoc_options: []
190
+
191
+ require_paths:
192
+ - lib
193
+ required_ruby_version: !ruby/object:Gem::Requirement
194
+ none: false
195
+ requirements:
196
+ - - ">="
197
+ - !ruby/object:Gem::Version
198
+ segments:
199
+ - 0
200
+ version: "0"
201
+ required_rubygems_version: !ruby/object:Gem::Requirement
202
+ none: false
203
+ requirements:
204
+ - - ">="
205
+ - !ruby/object:Gem::Version
206
+ segments:
207
+ - 0
208
+ version: "0"
209
+ requirements: []
210
+
211
+ rubyforge_project:
212
+ rubygems_version: 1.3.7
213
+ signing_key:
214
+ specification_version: 3
215
+ summary: Cut raw RubyGems from YAML
216
+ test_files:
217
+ - spec/dependency_spec.rb
218
+ - spec/naming_spec.rb
219
+ - spec/document_file_spec.rb
220
+ - spec/versions/version_spec.rb
221
+ - spec/versions/version_file_spec.rb
222
+ - spec/projects/jeweler_project_spec.rb
223
+ - spec/projects/minimal_project_spec.rb
224
+ - spec/projects/explicit_project_spec.rb
225
+ - spec/projects/dm_plugin_project_spec.rb
226
+ - spec/projects/ffi_binding_project_spec.rb