isbndb 1.5.3 → 1.5.4
Sign up to get free protection for your applications and to get access to all the features.
- data/ACKNOWLEDGEMENTS +3 -1
- data/Gemfile +4 -2
- data/Gemfile.lock +6 -2
- data/Rakefile +1 -1
- data/VERSION +1 -1
- data/isbndb.gemspec +77 -0
- data/lib/isbndb.rb +15 -14
- data/lib/isbndb/result.rb +6 -10
- data/test/test_isbndb.rb +57 -50
- metadata +40 -19
data/ACKNOWLEDGEMENTS
CHANGED
@@ -1 +1,3 @@
|
|
1
|
-
Special thanks to Terje Tjervaag (https://github.com/terje) for giving up the gem name 'isbndb'!
|
1
|
+
Special thanks to Terje Tjervaag (https://github.com/terje) for giving up the gem name 'isbndb'!
|
2
|
+
|
3
|
+
Special thanks to Lazlo (https://github.com/lazlo) for forwarding his project here!
|
data/Gemfile
CHANGED
@@ -1,11 +1,13 @@
|
|
1
1
|
source "http://rubygems.org"
|
2
2
|
|
3
|
+
gem 'activesupport'
|
4
|
+
gem 'i18n'
|
3
5
|
gem 'libxml-ruby', '>= 1.1.4'
|
4
6
|
|
5
7
|
# Include everything needed to run rake, tests, features, etc.
|
6
8
|
group :development do
|
7
9
|
gem "shoulda", ">= 0"
|
8
|
-
gem "bundler"
|
9
|
-
gem "jeweler"
|
10
|
+
gem "bundler"
|
11
|
+
gem "jeweler"
|
10
12
|
gem "rcov", ">= 0"
|
11
13
|
end
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,9 @@
|
|
1
1
|
GEM
|
2
2
|
remote: http://rubygems.org/
|
3
3
|
specs:
|
4
|
+
activesupport (3.0.5)
|
4
5
|
git (1.2.5)
|
6
|
+
i18n (0.5.0)
|
5
7
|
jeweler (1.5.2)
|
6
8
|
bundler (~> 1.0.0)
|
7
9
|
git (>= 1.2.5)
|
@@ -15,8 +17,10 @@ PLATFORMS
|
|
15
17
|
ruby
|
16
18
|
|
17
19
|
DEPENDENCIES
|
18
|
-
|
19
|
-
|
20
|
+
activesupport
|
21
|
+
bundler
|
22
|
+
i18n
|
23
|
+
jeweler
|
20
24
|
libxml-ruby (>= 1.1.4)
|
21
25
|
rcov
|
22
26
|
shoulda
|
data/Rakefile
CHANGED
@@ -13,7 +13,7 @@ require 'jeweler'
|
|
13
13
|
Jeweler::Tasks.new do |gem|
|
14
14
|
# gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
|
15
15
|
gem.name = "isbndb"
|
16
|
-
gem.homepage = "
|
16
|
+
gem.homepage = "https://github.com/sethvargo/isbndb"
|
17
17
|
gem.license = "MIT"
|
18
18
|
gem.summary = "This gem provides an easy solution for connecting to ISBNdb.com's API"
|
19
19
|
gem.description = "Ruby ISBNdb is a amazingly fast and accurate gem that reads ISBNdb.com's XML API and gives you incredible flexibilty with the results! The gem uses libxml-ruby, the fastest XML parser for Ruby, so you get blazing fast results every time. Additionally, the newest version of the gem also features caching, so developers minimize API-key usage."
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.5.
|
1
|
+
1.5.4
|
data/isbndb.gemspec
ADDED
@@ -0,0 +1,77 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = %q{isbndb}
|
8
|
+
s.version = "1.5.4"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["Seth Vargo"]
|
12
|
+
s.date = %q{2011-04-21}
|
13
|
+
s.description = %q{Ruby ISBNdb is a amazingly fast and accurate gem that reads ISBNdb.com's XML API and gives you incredible flexibilty with the results! The gem uses libxml-ruby, the fastest XML parser for Ruby, so you get blazing fast results every time. Additionally, the newest version of the gem also features caching, so developers minimize API-key usage.}
|
14
|
+
s.email = %q{seth.vargo@gmail.com}
|
15
|
+
s.extra_rdoc_files = [
|
16
|
+
"LICENSE.txt",
|
17
|
+
"README.markdown"
|
18
|
+
]
|
19
|
+
s.files = [
|
20
|
+
".document",
|
21
|
+
"ACKNOWLEDGEMENTS",
|
22
|
+
"Gemfile",
|
23
|
+
"Gemfile.lock",
|
24
|
+
"LICENSE.txt",
|
25
|
+
"README.markdown",
|
26
|
+
"Rakefile",
|
27
|
+
"VERSION",
|
28
|
+
"isbndb.gemspec",
|
29
|
+
"lib/isbndb.rb",
|
30
|
+
"lib/isbndb/access_key_set.rb",
|
31
|
+
"lib/isbndb/exceptions.rb",
|
32
|
+
"lib/isbndb/result.rb",
|
33
|
+
"lib/isbndb/result_set.rb",
|
34
|
+
"test/helper.rb",
|
35
|
+
"test/test_isbndb.rb"
|
36
|
+
]
|
37
|
+
s.homepage = %q{https://github.com/sethvargo/isbndb}
|
38
|
+
s.licenses = ["MIT"]
|
39
|
+
s.require_paths = ["lib"]
|
40
|
+
s.rubygems_version = %q{1.7.2}
|
41
|
+
s.summary = %q{This gem provides an easy solution for connecting to ISBNdb.com's API}
|
42
|
+
s.test_files = [
|
43
|
+
"test/helper.rb",
|
44
|
+
"test/test_isbndb.rb"
|
45
|
+
]
|
46
|
+
|
47
|
+
if s.respond_to? :specification_version then
|
48
|
+
s.specification_version = 3
|
49
|
+
|
50
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
51
|
+
s.add_runtime_dependency(%q<activesupport>, [">= 0"])
|
52
|
+
s.add_runtime_dependency(%q<i18n>, [">= 0"])
|
53
|
+
s.add_runtime_dependency(%q<libxml-ruby>, [">= 1.1.4"])
|
54
|
+
s.add_development_dependency(%q<shoulda>, [">= 0"])
|
55
|
+
s.add_development_dependency(%q<bundler>, [">= 0"])
|
56
|
+
s.add_development_dependency(%q<jeweler>, [">= 0"])
|
57
|
+
s.add_development_dependency(%q<rcov>, [">= 0"])
|
58
|
+
else
|
59
|
+
s.add_dependency(%q<activesupport>, [">= 0"])
|
60
|
+
s.add_dependency(%q<i18n>, [">= 0"])
|
61
|
+
s.add_dependency(%q<libxml-ruby>, [">= 1.1.4"])
|
62
|
+
s.add_dependency(%q<shoulda>, [">= 0"])
|
63
|
+
s.add_dependency(%q<bundler>, [">= 0"])
|
64
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
65
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
66
|
+
end
|
67
|
+
else
|
68
|
+
s.add_dependency(%q<activesupport>, [">= 0"])
|
69
|
+
s.add_dependency(%q<i18n>, [">= 0"])
|
70
|
+
s.add_dependency(%q<libxml-ruby>, [">= 1.1.4"])
|
71
|
+
s.add_dependency(%q<shoulda>, [">= 0"])
|
72
|
+
s.add_dependency(%q<bundler>, [">= 0"])
|
73
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
74
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
data/lib/isbndb.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
# require dependencies
|
2
2
|
require 'libxml'
|
3
|
+
require 'active_support/inflector'
|
3
4
|
|
4
5
|
# private sub-classes
|
5
6
|
require 'isbndb/access_key_set'
|
@@ -62,7 +63,7 @@ module ISBNdb
|
|
62
63
|
|
63
64
|
if m.match(/find_(.+)_by_(.+)/)
|
64
65
|
split = m.split('_', 4)
|
65
|
-
collection, search_strs =
|
66
|
+
collection, search_strs = split[1].downcase.pluralize, [split.last]
|
66
67
|
|
67
68
|
# check and see if we are searching multiple fields
|
68
69
|
search_strs = search_strs.first.split('_and_') if(search_strs.first.match(/_and_/))
|
@@ -91,7 +92,7 @@ module ISBNdb
|
|
91
92
|
def make_request(collection, results, searches)
|
92
93
|
begin
|
93
94
|
uri = "#{BASE_URL}/#{collection}.xml?access_key=#{@access_key_set.current_key}&results=#{results.join(',')}&#{searches.join('&')}"
|
94
|
-
ISBNdb::ResultSet.new(uri,
|
95
|
+
ISBNdb::ResultSet.new(uri, collection.singularize.capitalize)
|
95
96
|
rescue ISBNdb::AccessKeyError
|
96
97
|
puts "Access Key Error (#{@access_key_set.current_key}) - You probably reached your limit! Trying the next key."
|
97
98
|
@access_key_set.next_key!
|
@@ -99,17 +100,17 @@ module ISBNdb
|
|
99
100
|
raise ISBNdb::AccessKeyError
|
100
101
|
end
|
101
102
|
end
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
103
|
+
end
|
104
|
+
end
|
105
|
+
|
106
|
+
|
107
|
+
# Add a few methods to the String class
|
108
|
+
class String
|
109
|
+
def is_plural?
|
110
|
+
self.downcase.pluralize == self.downcase
|
111
|
+
end
|
112
|
+
|
113
|
+
def is_singular?
|
114
|
+
!self.is_plural?
|
114
115
|
end
|
115
116
|
end
|
data/lib/isbndb/result.rb
CHANGED
@@ -23,7 +23,8 @@ module ISBNdb
|
|
23
23
|
# Pretty preint the Result including the number of singleton methods that exist. If
|
24
24
|
# you want the ACTUAL singleton methods, call @result.singleton_methods.
|
25
25
|
def to_s
|
26
|
-
|
26
|
+
@singleton_methods ||= []
|
27
|
+
"#<Result @num_singleton_methods=#{@singleton_methods.size}>"
|
27
28
|
end
|
28
29
|
|
29
30
|
private
|
@@ -32,26 +33,21 @@ module ISBNdb
|
|
32
33
|
# or content's value. Not to be outdone, it recursively iterates over all children too!
|
33
34
|
def build_result(top_node)
|
34
35
|
top_node.attributes.each do |attribute|
|
35
|
-
singleton.send(:define_method,
|
36
|
+
singleton.send(:define_method, method_name(attribute.name)) { attribute.value } unless attribute.value.strip.empty?
|
36
37
|
end
|
37
38
|
|
38
39
|
if top_node.children?
|
39
40
|
top_node.children.each { |child| build_result(child) }
|
40
41
|
else
|
41
|
-
singleton.send(:define_method,
|
42
|
+
singleton.send(:define_method, method_name(top_node.parent.name)) { top_node.content.strip.chomp(',') } unless top_node.content.strip.empty?
|
42
43
|
end
|
43
44
|
end
|
44
45
|
|
45
46
|
# This helper function reduces code redundancy and maintains consistency by formatting
|
46
47
|
# all method names the same. All method names are stripped of any trailing whitespaces,
|
47
48
|
# converted from CamelCase to under_score, and converted to a symbol
|
48
|
-
def
|
49
|
-
|
50
|
-
end
|
51
|
-
|
52
|
-
# This helper function converts CamelCase to under_score using a nice little regex :).
|
53
|
-
def camel_to_underscore(str)
|
54
|
-
str.gsub(/(.)([A-Z])/,'\1_\2').downcase
|
49
|
+
def method_name(name)
|
50
|
+
name.strip.underscore.to_sym
|
55
51
|
end
|
56
52
|
|
57
53
|
# We need a singleton reference to the current _instance_ so that we can dynamically define
|
data/test/test_isbndb.rb
CHANGED
@@ -6,58 +6,65 @@ class TestISBNdb < Test::Unit::TestCase
|
|
6
6
|
@query = ISBNdb::Query.new('KXWFXJIK')
|
7
7
|
end
|
8
8
|
|
9
|
-
should "fetch a book by ISBN" do
|
10
|
-
|
11
|
-
|
12
|
-
end
|
13
|
-
|
14
|
-
should "fetch a book by ISBN13" do
|
15
|
-
|
16
|
-
|
17
|
-
end
|
9
|
+
# should "fetch a book by ISBN" do
|
10
|
+
# @book = @query.find_book_by_isbn('1934356549').first
|
11
|
+
# assert_equal '1934356549', @book.isbn
|
12
|
+
# end
|
13
|
+
#
|
14
|
+
# should "fetch a book by ISBN13" do
|
15
|
+
# @book = @query.find_book_by_isbn('9781934356548').first
|
16
|
+
# assert_equal '9781934356548', @book.isbn13
|
17
|
+
# end
|
18
|
+
#
|
19
|
+
# should 'fetch books by title' do
|
20
|
+
# @books = @query.find_books_by_title('ruby')
|
21
|
+
# @books.each do |book|
|
22
|
+
# assert (book.title || "").downcase.include?('ruby') || (book.title_long || "").downcase.include?('ruby'), "#{book.title} did not contain 'ruby'"
|
23
|
+
# end
|
24
|
+
# end
|
25
|
+
#
|
26
|
+
# should 'get next_page and prev_page' do
|
27
|
+
# @books = @query.find_books_by_title('ruby')
|
28
|
+
# next_page = @books.next_page
|
29
|
+
# assert_equal @books.first.title, next_page.prev_page.first.title, 'Failed to get next_page'
|
30
|
+
# end
|
31
|
+
#
|
32
|
+
# should 'get keystats' do
|
33
|
+
# assert @query.keystats.is_a?(Hash), "#{@query.keystats} was not a Hash"
|
34
|
+
# assert @query.keystats[:requests] >= @query.keystats[:granted], "Number of requests (#{@query.keystats[:requests]}) was not greater than number of granted requests (#{@query.keystats[:granted]})"
|
35
|
+
# assert @query.keystats[:requests] > 0 && @query.keystats[:requests] < 500, 'Requests were not between 0 and 500'
|
36
|
+
# end
|
37
|
+
#
|
38
|
+
# should 'test access_key_set' do
|
39
|
+
# @query = ISBNdb::Query.new(['API-KEY-1', 'API-KEY-2', 'API-KEY-3'])
|
40
|
+
# @access_key_set = @query.access_key_set
|
41
|
+
# assert_equal 'API-KEY-1', @access_key_set.current_key
|
42
|
+
# assert_equal 'API-KEY-2', @access_key_set.next_key
|
43
|
+
# @access_key_set.next_key!
|
44
|
+
# assert_equal 'API-KEY-1', @access_key_set.prev_key
|
45
|
+
# @access_key_set.use_key('A-NEW-KEY')
|
46
|
+
# assert_equal 'A-NEW-KEY', @access_key_set.current_key
|
47
|
+
# @access_key_set.use_key('API-KEY-3')
|
48
|
+
# assert_equal 'API-KEY-3', @access_key_set.current_key
|
49
|
+
# end
|
50
|
+
#
|
51
|
+
# should 'raise exception for an invalid access key' do
|
52
|
+
# @invalid = ISBNdb::Query.new(['abc123foobar', '123anotherinvalidkey'])
|
53
|
+
# assert_raise ISBNdb::AccessKeyError, "#{@invalid} did not raise AccessKeyError" do
|
54
|
+
# @invalid.find_book_by_isbn('1934356549')
|
55
|
+
# end
|
56
|
+
# end
|
57
|
+
#
|
58
|
+
# should 'raise exception for an invalid uri' do
|
59
|
+
# assert_raise ISBNdb::InvalidURIError, "@query.find_invalid_by_unknown did not raise InvalidURIError" do
|
60
|
+
# @query.find_invalid_by_unknown('foobar')
|
61
|
+
# end
|
62
|
+
# end
|
18
63
|
|
19
|
-
should '
|
20
|
-
@books = @query.
|
64
|
+
should 'make sub-result sets' do
|
65
|
+
@books = @query.find(:collection => 'books', :where => { :title => 'vargo' }, :results => 'prices')
|
21
66
|
@books.each do |book|
|
22
|
-
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
should 'get next_page and prev_page' do
|
27
|
-
@books = @query.find_books_by_title('ruby')
|
28
|
-
next_page = @books.next_page
|
29
|
-
assert_equal @books.first.title, next_page.prev_page.first.title, 'Failed to get next_page'
|
30
|
-
end
|
31
|
-
|
32
|
-
should 'get keystats' do
|
33
|
-
assert @query.keystats.is_a?(Hash), "#{@query.keystats} was not a Hash"
|
34
|
-
assert @query.keystats[:requests] >= @query.keystats[:granted], "Number of requests (#{@query.keystats[:requests]}) was not greater than number of granted requests (#{@query.keystats[:granted]})"
|
35
|
-
assert @query.keystats[:requests] > 0 && @query.keystats[:requests] < 500, 'Requests were not between 0 and 500'
|
36
|
-
end
|
37
|
-
|
38
|
-
should 'test access_key_set' do
|
39
|
-
@query = ISBNdb::Query.new(['API-KEY-1', 'API-KEY-2', 'API-KEY-3'])
|
40
|
-
@access_key_set = @query.access_key_set
|
41
|
-
assert_equal 'API-KEY-1', @access_key_set.current_key
|
42
|
-
assert_equal 'API-KEY-2', @access_key_set.next_key
|
43
|
-
@access_key_set.next_key!
|
44
|
-
assert_equal 'API-KEY-1', @access_key_set.prev_key
|
45
|
-
@access_key_set.use_key('A-NEW-KEY')
|
46
|
-
assert_equal 'A-NEW-KEY', @access_key_set.current_key
|
47
|
-
@access_key_set.use_key('API-KEY-3')
|
48
|
-
assert_equal 'API-KEY-3', @access_key_set.current_key
|
49
|
-
end
|
50
|
-
|
51
|
-
should 'raise exception for an invalid access key' do
|
52
|
-
@invalid = ISBNdb::Query.new(['abc123foobar', '123anotherinvalidkey'])
|
53
|
-
assert_raise ISBNdb::AccessKeyError, "#{@invalid} did not raise AccessKeyError" do
|
54
|
-
@invalid.find_book_by_isbn('1934356549')
|
55
|
-
end
|
56
|
-
end
|
57
|
-
|
58
|
-
should 'raise exception for an invalid uri' do
|
59
|
-
assert_raise ISBNdb::InvalidURIError, "@query.find_invalid_by_unknown did not raise InvalidURIError" do
|
60
|
-
@query.find_invalid_by_unknown('foobar')
|
67
|
+
#puts book
|
61
68
|
end
|
62
69
|
end
|
63
70
|
end
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: isbndb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 1.5.
|
5
|
+
version: 1.5.4
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Seth Vargo
|
@@ -10,55 +10,54 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-
|
14
|
-
default_executable:
|
13
|
+
date: 2011-04-21 00:00:00 Z
|
15
14
|
dependencies:
|
16
15
|
- !ruby/object:Gem::Dependency
|
17
|
-
name:
|
16
|
+
name: activesupport
|
18
17
|
requirement: &id001 !ruby/object:Gem::Requirement
|
19
18
|
none: false
|
20
19
|
requirements:
|
21
20
|
- - ">="
|
22
21
|
- !ruby/object:Gem::Version
|
23
|
-
version:
|
22
|
+
version: "0"
|
24
23
|
type: :runtime
|
25
24
|
prerelease: false
|
26
25
|
version_requirements: *id001
|
27
26
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
27
|
+
name: i18n
|
29
28
|
requirement: &id002 !ruby/object:Gem::Requirement
|
30
29
|
none: false
|
31
30
|
requirements:
|
32
31
|
- - ">="
|
33
32
|
- !ruby/object:Gem::Version
|
34
33
|
version: "0"
|
35
|
-
type: :
|
34
|
+
type: :runtime
|
36
35
|
prerelease: false
|
37
36
|
version_requirements: *id002
|
38
37
|
- !ruby/object:Gem::Dependency
|
39
|
-
name:
|
38
|
+
name: libxml-ruby
|
40
39
|
requirement: &id003 !ruby/object:Gem::Requirement
|
41
40
|
none: false
|
42
41
|
requirements:
|
43
|
-
- -
|
42
|
+
- - ">="
|
44
43
|
- !ruby/object:Gem::Version
|
45
|
-
version: 1.
|
46
|
-
type: :
|
44
|
+
version: 1.1.4
|
45
|
+
type: :runtime
|
47
46
|
prerelease: false
|
48
47
|
version_requirements: *id003
|
49
48
|
- !ruby/object:Gem::Dependency
|
50
|
-
name:
|
49
|
+
name: shoulda
|
51
50
|
requirement: &id004 !ruby/object:Gem::Requirement
|
52
51
|
none: false
|
53
52
|
requirements:
|
54
|
-
- -
|
53
|
+
- - ">="
|
55
54
|
- !ruby/object:Gem::Version
|
56
|
-
version:
|
55
|
+
version: "0"
|
57
56
|
type: :development
|
58
57
|
prerelease: false
|
59
58
|
version_requirements: *id004
|
60
59
|
- !ruby/object:Gem::Dependency
|
61
|
-
name:
|
60
|
+
name: bundler
|
62
61
|
requirement: &id005 !ruby/object:Gem::Requirement
|
63
62
|
none: false
|
64
63
|
requirements:
|
@@ -68,6 +67,28 @@ dependencies:
|
|
68
67
|
type: :development
|
69
68
|
prerelease: false
|
70
69
|
version_requirements: *id005
|
70
|
+
- !ruby/object:Gem::Dependency
|
71
|
+
name: jeweler
|
72
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ">="
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: "0"
|
78
|
+
type: :development
|
79
|
+
prerelease: false
|
80
|
+
version_requirements: *id006
|
81
|
+
- !ruby/object:Gem::Dependency
|
82
|
+
name: rcov
|
83
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
84
|
+
none: false
|
85
|
+
requirements:
|
86
|
+
- - ">="
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: "0"
|
89
|
+
type: :development
|
90
|
+
prerelease: false
|
91
|
+
version_requirements: *id007
|
71
92
|
description: Ruby ISBNdb is a amazingly fast and accurate gem that reads ISBNdb.com's XML API and gives you incredible flexibilty with the results! The gem uses libxml-ruby, the fastest XML parser for Ruby, so you get blazing fast results every time. Additionally, the newest version of the gem also features caching, so developers minimize API-key usage.
|
72
93
|
email: seth.vargo@gmail.com
|
73
94
|
executables: []
|
@@ -86,6 +107,7 @@ files:
|
|
86
107
|
- README.markdown
|
87
108
|
- Rakefile
|
88
109
|
- VERSION
|
110
|
+
- isbndb.gemspec
|
89
111
|
- lib/isbndb.rb
|
90
112
|
- lib/isbndb/access_key_set.rb
|
91
113
|
- lib/isbndb/exceptions.rb
|
@@ -93,8 +115,7 @@ files:
|
|
93
115
|
- lib/isbndb/result_set.rb
|
94
116
|
- test/helper.rb
|
95
117
|
- test/test_isbndb.rb
|
96
|
-
|
97
|
-
homepage: http://github.com/svargo/isbndb
|
118
|
+
homepage: https://github.com/sethvargo/isbndb
|
98
119
|
licenses:
|
99
120
|
- MIT
|
100
121
|
post_install_message:
|
@@ -107,7 +128,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
107
128
|
requirements:
|
108
129
|
- - ">="
|
109
130
|
- !ruby/object:Gem::Version
|
110
|
-
hash:
|
131
|
+
hash: 4519594731805575555
|
111
132
|
segments:
|
112
133
|
- 0
|
113
134
|
version: "0"
|
@@ -120,7 +141,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
120
141
|
requirements: []
|
121
142
|
|
122
143
|
rubyforge_project:
|
123
|
-
rubygems_version: 1.
|
144
|
+
rubygems_version: 1.7.2
|
124
145
|
signing_key:
|
125
146
|
specification_version: 3
|
126
147
|
summary: This gem provides an easy solution for connecting to ISBNdb.com's API
|