octonore 0.0.3 → 1.0.0
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.
- checksums.yaml +4 -4
- data/.rspec +3 -0
- data/CHANGELOG.md +10 -0
- data/Gemfile +3 -3
- data/README.md +7 -1
- data/lib/octonore/error.rb +7 -0
- data/lib/octonore/http_helper.rb +26 -0
- data/lib/octonore/template.rb +55 -26
- data/lib/octonore/version.rb +5 -0
- data/octonore.gemspec +16 -9
- data/spec/fixtures/octonore_cassettes/template.yml +115 -13
- data/spec/lib/octonore/template_spec.rb +15 -16
- metadata +39 -8
- data/VERSION +0 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 857448e04e2caf963fc6306c6801dbb635c79349
|
4
|
+
data.tar.gz: abcc6c6503efb8ff2e8c883224dbb73cfd212139
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 54ba7afc989cc26b0d93088eeedc398e159dc6d683add35fde6f7168c4bfe4532e98df360a8d83b6aac4cd773c25311cda90f3a0982be6b64d707dcd3104941c
|
7
|
+
data.tar.gz: 769883d03b56feb349670202e44f689c1f28ff62292186e5a56dac9935b558c08f2183d59c21980207a5d085f7835732a15f896b90a38e4c271364dcda0d3dda
|
data/.rspec
ADDED
data/CHANGELOG.md
ADDED
data/Gemfile
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
group :test do
|
3
|
+
group :development, :test do
|
6
4
|
gem "rspec", "~> 2.13.0"
|
7
5
|
gem "webmock", "~> 1.11.0"
|
8
6
|
gem "vcr", "~> 2.5.0"
|
9
7
|
gem "rake", "~> 10.0.4"
|
10
8
|
gem "coveralls", "~> 0.6.7", require: false
|
11
9
|
end
|
10
|
+
|
11
|
+
gemspec
|
data/README.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
Octonore [](https://travis-ci.org/zachlatta/octonore) [](https://codeclimate.com/github/zachlatta/octonore) [](https://coveralls.io/r/zachlatta/octonore?branch=master) [](https://gemnasium.com/zachlatta/octonore)
|
2
2
|
========
|
3
3
|
|
4
|
-
An octolicious wrapper around the [Gitignore
|
4
|
+
An octolicious wrapper around the [Gitignore Templates API](http://developer.github.com/v3/gitignore/).
|
5
5
|
|
6
6
|
$ gem install octonore
|
7
7
|
|
@@ -9,6 +9,12 @@ An octolicious wrapper around the [Gitignore templates API](http://developer.git
|
|
9
9
|
Usage
|
10
10
|
-----
|
11
11
|
|
12
|
+
List the available templates by calling `Template`'s list method.
|
13
|
+
|
14
|
+
>> Octonore::Template.list
|
15
|
+
=> ["Actionscript", "Android", "AppceleratorTitanium", "Autotools", "Bancha", "
|
16
|
+
C", "C++", "CFWheels", "CMake", "CSharp", "CakePHP", "Clojure", "CodeIgniter...
|
17
|
+
|
12
18
|
To get a gitignore template you first need to instantiate it.
|
13
19
|
|
14
20
|
>> c_template = Octonore::Template.new('C')
|
@@ -0,0 +1,26 @@
|
|
1
|
+
require 'singleton'
|
2
|
+
|
3
|
+
module Octonore
|
4
|
+
|
5
|
+
class HTTPHelper
|
6
|
+
include Singleton
|
7
|
+
include HTTParty
|
8
|
+
|
9
|
+
USER_AGENT = "octonore/#{VERSION}"
|
10
|
+
|
11
|
+
base_uri 'https://api.github.com/gitignore'
|
12
|
+
|
13
|
+
# Get the specified template's hash from Github.
|
14
|
+
# @param location [String] location of resource to get
|
15
|
+
# @return [Hash] whatever is gotten
|
16
|
+
def get(location)
|
17
|
+
self.class.get location, headers: headers
|
18
|
+
end
|
19
|
+
|
20
|
+
def headers
|
21
|
+
{"User-Agent" => USER_AGENT}
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
data/lib/octonore/template.rb
CHANGED
@@ -1,34 +1,59 @@
|
|
1
1
|
module Octonore
|
2
2
|
|
3
|
-
# A gitignore template. Templates
|
3
|
+
# A gitignore template. Templates have two attributes: a
|
4
|
+
# name and a source.
|
4
5
|
class Template
|
5
6
|
|
6
7
|
attr_accessor :name, :source
|
7
8
|
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
9
|
+
# List available templates
|
10
|
+
#
|
11
|
+
# Example:
|
12
|
+
# >> Octonore::Template.list
|
13
|
+
#
|
14
|
+
# @return [Array] The available gitignore templates.
|
15
|
+
def self.list
|
16
|
+
raw_list = Octonore::HTTPHelper.instance.get("/templates")
|
17
|
+
parsed_list = raw_list.parsed_response
|
18
|
+
end
|
13
19
|
|
14
20
|
# Create a new template.
|
15
21
|
#
|
16
22
|
# Example:
|
17
23
|
# c_template = Octonore::Template.new('C')
|
18
|
-
# java_template = Octonore::Template.new('
|
24
|
+
# java_template = Octonore::Template.new('java')
|
19
25
|
#
|
20
|
-
#
|
21
|
-
#
|
22
|
-
|
26
|
+
# @param name [String] name of template to create
|
27
|
+
# @return [String] Contents of template.
|
23
28
|
def initialize(name)
|
24
|
-
|
25
|
-
|
29
|
+
# Get two arrays of all of the names of templates available. Downcase
|
30
|
+
# one.
|
31
|
+
list = self.class.list
|
32
|
+
down_list = list.map(&:downcase)
|
33
|
+
# Create a hash from the lowercase names to the normal names so we can
|
34
|
+
# make the user-specified name case-insensitive.
|
35
|
+
list_hash = Hash[down_list.zip(list)]
|
36
|
+
|
37
|
+
# Downcase the the user's name selection and get the matching normal
|
38
|
+
# name in the list_hash
|
39
|
+
self.name = list_hash[name.downcase]
|
40
|
+
# Retrieve the information from Github for their template
|
41
|
+
reload
|
26
42
|
end
|
27
43
|
|
28
|
-
#
|
29
|
-
|
30
|
-
|
31
|
-
|
44
|
+
# Reload the Gitignore source from Github.
|
45
|
+
#
|
46
|
+
# Example:
|
47
|
+
# >> outdated_template.source = nil
|
48
|
+
# => nil
|
49
|
+
# >> outdated_template.reload
|
50
|
+
# => "# Object files\n*.o\n\n# Libraries\n*.lib..."
|
51
|
+
# >> outdated_template.source
|
52
|
+
# => "# Object files\n*.o\n\n# Libraries\n*.lib..."
|
53
|
+
#
|
54
|
+
# @return [String] Contents of template.
|
55
|
+
def reload
|
56
|
+
data = get_template_hash @name
|
32
57
|
|
33
58
|
if valid_template_hash? data
|
34
59
|
@source = data["source"]
|
@@ -39,23 +64,27 @@ module Octonore
|
|
39
64
|
end
|
40
65
|
|
41
66
|
|
42
|
-
|
43
|
-
|
44
|
-
def get_data
|
45
|
-
self.class.get "/templates/#{self.name}", headers: headers
|
46
|
-
end
|
67
|
+
protected
|
47
68
|
|
69
|
+
# Verify that the template doesn't contain "Not Found"
|
70
|
+
#
|
71
|
+
# @param [Hash] The template's hash.
|
72
|
+
# @return [Boolean] Whether the template doesn't contain "Not Found"
|
48
73
|
def valid_template_hash?(template_hash)
|
49
74
|
template_hash["message"] != "Not Found"
|
50
75
|
end
|
51
76
|
|
52
|
-
def headers
|
53
|
-
{"User-Agent" => USER_AGENT}
|
54
|
-
end
|
55
77
|
|
56
|
-
|
78
|
+
private
|
79
|
+
|
80
|
+
# Get the specified template's hash from Github.
|
81
|
+
#
|
82
|
+
# @param name [String] name of template to get
|
83
|
+
# @return [Hash] hash containing template info
|
84
|
+
def get_template_hash(name)
|
85
|
+
Octonore::HTTPHelper.instance.get("/templates/#{name}")
|
86
|
+
end
|
57
87
|
|
58
|
-
class GitignoreTemplateNotFoundError < StandardError
|
59
88
|
end
|
60
89
|
|
61
90
|
end
|
data/octonore.gemspec
CHANGED
@@ -1,20 +1,27 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
s.date = '2013-05-23'
|
5
|
-
s.summary = 'Wrapper around the Github gitignore template API.'
|
6
|
-
s.description = 'An octolicious wrapper around the Github gitignore template
|
7
|
-
API.'
|
8
|
-
s.license = 'MIT'
|
1
|
+
lib = File.expand_path('../lib', __FILE__)
|
2
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
3
|
+
require 'octonore/version'
|
9
4
|
|
5
|
+
Gem::Specification.new do |s|
|
10
6
|
s.authors = ['Zach Latta']
|
11
7
|
s.email = 'zchlatta@gmail.com'
|
12
8
|
s.homepage = 'http://rubygems.org/gems/octonore'
|
13
9
|
|
10
|
+
s.name = 'octonore'
|
11
|
+
s.version = Octonore::VERSION
|
12
|
+
s.date = '2013-05-30'
|
13
|
+
s.summary = 'An octolicious wrapper around the Gitignore Templates
|
14
|
+
API.'
|
15
|
+
s.description = s.summary
|
16
|
+
|
17
|
+
s.license = 'MIT'
|
18
|
+
s.add_development_dependency 'bundler', '~> 1.0'
|
19
|
+
s.add_dependency 'httparty', '~> 0.11.0'
|
20
|
+
|
14
21
|
s.files = `git ls-files`.split("\n")
|
15
22
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
16
23
|
s.executables = `git ls-files -- bin/*`.split("\n").map { |f|
|
17
24
|
File.basename(f)
|
18
|
-
|
25
|
+
}
|
19
26
|
s.require_paths = ['lib']
|
20
27
|
end
|
@@ -1,5 +1,56 @@
|
|
1
1
|
---
|
2
2
|
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://api.github.com/gitignore/templates
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- octonore/0.11.0
|
12
|
+
response:
|
13
|
+
status:
|
14
|
+
code: 200
|
15
|
+
message: OK
|
16
|
+
headers:
|
17
|
+
Server:
|
18
|
+
- GitHub.com
|
19
|
+
Date:
|
20
|
+
- Thu, 30 May 2013 11:58:28 GMT
|
21
|
+
Content-Type:
|
22
|
+
- application/json; charset=utf-8
|
23
|
+
Connection:
|
24
|
+
- keep-alive
|
25
|
+
Status:
|
26
|
+
- 200 OK
|
27
|
+
X-Ratelimit-Limit:
|
28
|
+
- '60'
|
29
|
+
X-Ratelimit-Remaining:
|
30
|
+
- '56'
|
31
|
+
X-Github-Media-Type:
|
32
|
+
- github.beta; format=json
|
33
|
+
X-Content-Type-Options:
|
34
|
+
- nosniff
|
35
|
+
Content-Length:
|
36
|
+
- '757'
|
37
|
+
Access-Control-Allow-Credentials:
|
38
|
+
- 'true'
|
39
|
+
Access-Control-Expose-Headers:
|
40
|
+
- ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes
|
41
|
+
Access-Control-Allow-Origin:
|
42
|
+
- '*'
|
43
|
+
Etag:
|
44
|
+
- '"75313e55112eb47fac2ff47ea204fd92"'
|
45
|
+
Cache-Control:
|
46
|
+
- max-age=0, private, must-revalidate
|
47
|
+
Vary:
|
48
|
+
- Accept-Encoding
|
49
|
+
body:
|
50
|
+
encoding: UTF-8
|
51
|
+
string: '["Actionscript","Android","AppceleratorTitanium","Autotools","Bancha","C","C++","CFWheels","CMake","CSharp","CakePHP","Clojure","CodeIgniter","Compass","Concrete5","Coq","Delphi","Django","Drupal","Erlang","ExpressionEngine","Finale","ForceDotCom","FuelPHP","GWT","Go","Grails","Haskell","Java","Jboss","Jekyll","Joomla","Jython","Kohana","LaTeX","Leiningen","LemonStand","Lilypond","Lithium","Magento","Maven","Node","OCaml","Objective-C","Opa","OracleForms","Perl","PlayFramework","Python","Qooxdoo","Qt","R","Rails","RhodesRhomobile","Ruby","Scala","Sdcc","SeamGen","SketchUp","SugarCRM","Symfony","Symfony2","SymphonyCMS","Target3001","Tasm","Textpattern","TurboGears2","Unity","VB.Net","Waf","WordPress","Yii","ZendFramework","gcov","nanoc","opencart"]'
|
52
|
+
http_version:
|
53
|
+
recorded_at: Thu, 30 May 2013 11:58:28 GMT
|
3
54
|
- request:
|
4
55
|
method: get
|
5
56
|
uri: https://api.github.com/gitignore/templates/C
|
@@ -8,7 +59,7 @@ http_interactions:
|
|
8
59
|
string: ''
|
9
60
|
headers:
|
10
61
|
User-Agent:
|
11
|
-
-
|
62
|
+
- octonore/0.11.0
|
12
63
|
response:
|
13
64
|
status:
|
14
65
|
code: 200
|
@@ -17,7 +68,7 @@ http_interactions:
|
|
17
68
|
Server:
|
18
69
|
- GitHub.com
|
19
70
|
Date:
|
20
|
-
-
|
71
|
+
- Thu, 30 May 2013 11:58:28 GMT
|
21
72
|
Content-Type:
|
22
73
|
- application/json; charset=utf-8
|
23
74
|
Connection:
|
@@ -27,7 +78,7 @@ http_interactions:
|
|
27
78
|
X-Ratelimit-Limit:
|
28
79
|
- '60'
|
29
80
|
X-Ratelimit-Remaining:
|
30
|
-
- '
|
81
|
+
- '55'
|
31
82
|
X-Github-Media-Type:
|
32
83
|
- github.beta; format=json
|
33
84
|
X-Content-Type-Options:
|
@@ -51,7 +102,58 @@ http_interactions:
|
|
51
102
|
string: '{"name":"C","source":"# Object files\n*.o\n\n# Libraries\n*.lib\n*.a\n\n#
|
52
103
|
Shared objects (inc. Windows DLLs)\n*.dll\n*.so\n*.so.*\n*.dylib\n\n# Executables\n*.exe\n*.out\n*.app\n"}'
|
53
104
|
http_version:
|
54
|
-
recorded_at:
|
105
|
+
recorded_at: Thu, 30 May 2013 11:58:29 GMT
|
106
|
+
- request:
|
107
|
+
method: get
|
108
|
+
uri: https://api.github.com/gitignore/templates/Java
|
109
|
+
body:
|
110
|
+
encoding: US-ASCII
|
111
|
+
string: ''
|
112
|
+
headers:
|
113
|
+
User-Agent:
|
114
|
+
- octonore/0.11.0
|
115
|
+
response:
|
116
|
+
status:
|
117
|
+
code: 200
|
118
|
+
message: OK
|
119
|
+
headers:
|
120
|
+
Server:
|
121
|
+
- GitHub.com
|
122
|
+
Date:
|
123
|
+
- Thu, 30 May 2013 11:58:29 GMT
|
124
|
+
Content-Type:
|
125
|
+
- application/json; charset=utf-8
|
126
|
+
Connection:
|
127
|
+
- keep-alive
|
128
|
+
Status:
|
129
|
+
- 200 OK
|
130
|
+
X-Ratelimit-Limit:
|
131
|
+
- '60'
|
132
|
+
X-Ratelimit-Remaining:
|
133
|
+
- '54'
|
134
|
+
X-Github-Media-Type:
|
135
|
+
- github.beta; format=json
|
136
|
+
X-Content-Type-Options:
|
137
|
+
- nosniff
|
138
|
+
Content-Length:
|
139
|
+
- '78'
|
140
|
+
Access-Control-Allow-Credentials:
|
141
|
+
- 'true'
|
142
|
+
Access-Control-Expose-Headers:
|
143
|
+
- ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes
|
144
|
+
Access-Control-Allow-Origin:
|
145
|
+
- '*'
|
146
|
+
Etag:
|
147
|
+
- '"881d51421dd39c30283451c1efa37124"'
|
148
|
+
Cache-Control:
|
149
|
+
- max-age=0, private, must-revalidate
|
150
|
+
Vary:
|
151
|
+
- Accept-Encoding
|
152
|
+
body:
|
153
|
+
encoding: UTF-8
|
154
|
+
string: '{"name":"Java","source":"*.class\n\n# Package Files #\n*.jar\n*.war\n*.ear\n"}'
|
155
|
+
http_version:
|
156
|
+
recorded_at: Thu, 30 May 2013 11:58:29 GMT
|
55
157
|
- request:
|
56
158
|
method: get
|
57
159
|
uri: https://api.github.com/gitignore/templates/C
|
@@ -60,7 +162,7 @@ http_interactions:
|
|
60
162
|
string: ''
|
61
163
|
headers:
|
62
164
|
User-Agent:
|
63
|
-
-
|
165
|
+
- octonore/0.11.0
|
64
166
|
response:
|
65
167
|
status:
|
66
168
|
code: 200
|
@@ -69,7 +171,7 @@ http_interactions:
|
|
69
171
|
Server:
|
70
172
|
- GitHub.com
|
71
173
|
Date:
|
72
|
-
-
|
174
|
+
- Thu, 30 May 2013 11:58:29 GMT
|
73
175
|
Content-Type:
|
74
176
|
- application/json; charset=utf-8
|
75
177
|
Connection:
|
@@ -79,7 +181,7 @@ http_interactions:
|
|
79
181
|
X-Ratelimit-Limit:
|
80
182
|
- '60'
|
81
183
|
X-Ratelimit-Remaining:
|
82
|
-
- '
|
184
|
+
- '53'
|
83
185
|
X-Github-Media-Type:
|
84
186
|
- github.beta; format=json
|
85
187
|
X-Content-Type-Options:
|
@@ -103,16 +205,16 @@ http_interactions:
|
|
103
205
|
string: '{"name":"C","source":"# Object files\n*.o\n\n# Libraries\n*.lib\n*.a\n\n#
|
104
206
|
Shared objects (inc. Windows DLLs)\n*.dll\n*.so\n*.so.*\n*.dylib\n\n# Executables\n*.exe\n*.out\n*.app\n"}'
|
105
207
|
http_version:
|
106
|
-
recorded_at:
|
208
|
+
recorded_at: Thu, 30 May 2013 11:58:29 GMT
|
107
209
|
- request:
|
108
210
|
method: get
|
109
|
-
uri: https://api.github.com/gitignore/templates/
|
211
|
+
uri: https://api.github.com/gitignore/templates/
|
110
212
|
body:
|
111
213
|
encoding: US-ASCII
|
112
214
|
string: ''
|
113
215
|
headers:
|
114
216
|
User-Agent:
|
115
|
-
-
|
217
|
+
- octonore/0.11.0
|
116
218
|
response:
|
117
219
|
status:
|
118
220
|
code: 404
|
@@ -121,7 +223,7 @@ http_interactions:
|
|
121
223
|
Server:
|
122
224
|
- GitHub.com
|
123
225
|
Date:
|
124
|
-
-
|
226
|
+
- Thu, 30 May 2013 11:58:29 GMT
|
125
227
|
Content-Type:
|
126
228
|
- application/json; charset=utf-8
|
127
229
|
Connection:
|
@@ -131,7 +233,7 @@ http_interactions:
|
|
131
233
|
X-Ratelimit-Limit:
|
132
234
|
- '60'
|
133
235
|
X-Ratelimit-Remaining:
|
134
|
-
- '
|
236
|
+
- '52'
|
135
237
|
X-Github-Media-Type:
|
136
238
|
- github.beta; format=json
|
137
239
|
X-Content-Type-Options:
|
@@ -148,5 +250,5 @@ http_interactions:
|
|
148
250
|
encoding: UTF-8
|
149
251
|
string: '{"message":"Not Found"}'
|
150
252
|
http_version:
|
151
|
-
recorded_at:
|
253
|
+
recorded_at: Thu, 30 May 2013 11:58:30 GMT
|
152
254
|
recorded_with: VCR 2.5.0
|
@@ -2,18 +2,6 @@ require_relative '../../spec_helper'
|
|
2
2
|
|
3
3
|
describe Octonore::Template do
|
4
4
|
|
5
|
-
describe "default attributes" do
|
6
|
-
|
7
|
-
it "should have httparty methods" do
|
8
|
-
Octonore::Template.should include(HTTParty)
|
9
|
-
end
|
10
|
-
|
11
|
-
it "should have the base url set to the Github API gitignore endpoint" do
|
12
|
-
Octonore::Template.base_uri.should eq('https://api.github.com/gitignore')
|
13
|
-
end
|
14
|
-
|
15
|
-
end
|
16
|
-
|
17
5
|
describe "default instance attributes" do
|
18
6
|
|
19
7
|
let(:template) { Octonore::Template.new('C') }
|
@@ -34,6 +22,11 @@ describe Octonore::Template do
|
|
34
22
|
template.name.should eq('C')
|
35
23
|
end
|
36
24
|
|
25
|
+
it "should not have case sensitive names" do
|
26
|
+
valid_template = Octonore::Template.new('java')
|
27
|
+
valid_template.name.should eq('Java')
|
28
|
+
end
|
29
|
+
|
37
30
|
end
|
38
31
|
|
39
32
|
describe "GET template" do
|
@@ -44,13 +37,13 @@ describe Octonore::Template do
|
|
44
37
|
|
45
38
|
after { VCR.eject_cassette }
|
46
39
|
|
47
|
-
it "should have
|
48
|
-
template.should respond_to :
|
40
|
+
it "should have a reload method" do
|
41
|
+
template.should respond_to :reload
|
49
42
|
end
|
50
43
|
|
51
|
-
it "should
|
44
|
+
it "should reload data from Github" do
|
52
45
|
template.source = nil
|
53
|
-
template.
|
46
|
+
template.reload
|
54
47
|
template.source.should_not equal nil
|
55
48
|
end
|
56
49
|
|
@@ -58,6 +51,12 @@ describe Octonore::Template do
|
|
58
51
|
expect {
|
59
52
|
bad_template = Octonore::Template.new('invalid') }.to raise_error
|
60
53
|
end
|
54
|
+
|
55
|
+
it "should list gitignore templates" do
|
56
|
+
templates = Octonore::Template.list
|
57
|
+
templates.should be_an_instance_of Array
|
58
|
+
templates.should include("C")
|
59
|
+
end
|
61
60
|
|
62
61
|
end
|
63
62
|
|
metadata
CHANGED
@@ -1,18 +1,44 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: octonore
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Zach Latta
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-05-
|
12
|
-
dependencies:
|
13
|
-
|
14
|
-
|
15
|
-
|
11
|
+
date: 2013-05-30 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ~>
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.0'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ~>
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: httparty
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ~>
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.11.0
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ~>
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 0.11.0
|
41
|
+
description: An octolicious wrapper around the Gitignore Templates API.
|
16
42
|
email: zchlatta@gmail.com
|
17
43
|
executables: []
|
18
44
|
extensions: []
|
@@ -20,14 +46,18 @@ extra_rdoc_files: []
|
|
20
46
|
files:
|
21
47
|
- .coveralls.yml
|
22
48
|
- .gitignore
|
49
|
+
- .rspec
|
23
50
|
- .travis.yml
|
51
|
+
- CHANGELOG.md
|
24
52
|
- Gemfile
|
25
53
|
- LICENSE
|
26
54
|
- README.md
|
27
55
|
- Rakefile
|
28
|
-
- VERSION
|
29
56
|
- lib/octonore.rb
|
57
|
+
- lib/octonore/error.rb
|
58
|
+
- lib/octonore/http_helper.rb
|
30
59
|
- lib/octonore/template.rb
|
60
|
+
- lib/octonore/version.rb
|
31
61
|
- octonore.gemspec
|
32
62
|
- spec/fixtures/octonore_cassettes/template.yml
|
33
63
|
- spec/lib/octonore/template_spec.rb
|
@@ -55,8 +85,9 @@ rubyforge_project:
|
|
55
85
|
rubygems_version: 2.0.3
|
56
86
|
signing_key:
|
57
87
|
specification_version: 4
|
58
|
-
summary:
|
88
|
+
summary: An octolicious wrapper around the Gitignore Templates API.
|
59
89
|
test_files:
|
60
90
|
- spec/fixtures/octonore_cassettes/template.yml
|
61
91
|
- spec/lib/octonore/template_spec.rb
|
62
92
|
- spec/spec_helper.rb
|
93
|
+
has_rdoc:
|
data/VERSION
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
0.0.3
|