pivotal-tracker-api 0.1.9 → 0.2.0

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: 52869691955236ee5ef68986db0d8af09fbbd9b9
4
- data.tar.gz: 9a8677942b9f49ac70f7e9a4893b274482d6f114
3
+ metadata.gz: a42edad5a4d2557793483aa23d618ae445871d1b
4
+ data.tar.gz: b2900a9e25df851949fb266bb745233ab1ccd028
5
5
  SHA512:
6
- metadata.gz: 41512ec8f81822203ca8987a069663881154152a024e944a48010811b84de3745ac33f4c23cffab7e8996f1e4bfe51a5761280d1a3d87aedfca30ac192e71b62
7
- data.tar.gz: 272986fe8d671bce8bca6c2324fcd211a2b5b491e77108003a5bb723ccd01669c31879bd4cbbb4e3278222bc2dd9ca700831c7541f295c05fb3df6999dec5c10
6
+ metadata.gz: 34d8b9f6da15d5e8dafc5ccf4a486955b9c6b29ae005e82a2ad357e6a6087db97df0b31389dbc1d7bb1708e456b1b9cae98ecb4ae098c512d98c55a3cbfa8a44
7
+ data.tar.gz: abb412b19e91fa9f369785ed668b208fb3542cfe5daaad6536d568c978824401cf43d0a1251099a299a604d87ee55c9c7d4bd118cf043ab2396f25ca2e50b8a1
@@ -16,39 +16,42 @@
16
16
  <content url="file://$MODULE_DIR$">
17
17
  <sourceFolder url="file://$MODULE_DIR$/test" isTestSource="true" />
18
18
  </content>
19
- <orderEntry type="inheritedJdk" />
19
+ <orderEntry type="jdk" jdkName="RVM: ruby-2.0.0-p353" jdkType="RUBY_SDK" />
20
20
  <orderEntry type="sourceFolder" forTests="false" />
21
- <orderEntry type="library" scope="PROVIDED" name="activesupport (v4.0.0, RVM: ruby-2.0.0-p195) [gem]" level="application" />
22
- <orderEntry type="library" scope="PROVIDED" name="addressable (v2.3.5, RVM: ruby-2.0.0-p195) [gem]" level="application" />
23
- <orderEntry type="library" scope="PROVIDED" name="atomic (v1.1.14, RVM: ruby-2.0.0-p195) [gem]" level="application" />
24
- <orderEntry type="library" scope="PROVIDED" name="builder (v3.2.2, RVM: ruby-2.0.0-p195) [gem]" level="application" />
25
- <orderEntry type="library" scope="PROVIDED" name="bundler (v1.3.5, RVM: ruby-2.0.0-p195) [gem]" level="application" />
26
- <orderEntry type="library" scope="PROVIDED" name="faraday (v0.8.8, RVM: ruby-2.0.0-p195) [gem]" level="application" />
27
- <orderEntry type="library" scope="PROVIDED" name="git (v1.2.6, RVM: ruby-2.0.0-p195) [gem]" level="application" />
28
- <orderEntry type="library" scope="PROVIDED" name="github_api (v0.10.1, RVM: ruby-2.0.0-p195) [gem]" level="application" />
29
- <orderEntry type="library" scope="PROVIDED" name="hashie (v2.0.5, RVM: ruby-2.0.0-p195) [gem]" level="application" />
30
- <orderEntry type="library" scope="PROVIDED" name="highline (v1.6.20, RVM: ruby-2.0.0-p195) [gem]" level="application" />
31
- <orderEntry type="library" scope="PROVIDED" name="httpauth (v0.2.0, RVM: ruby-2.0.0-p195) [gem]" level="application" />
32
- <orderEntry type="library" scope="PROVIDED" name="i18n (v0.6.5, RVM: ruby-2.0.0-p195) [gem]" level="application" />
33
- <orderEntry type="library" scope="PROVIDED" name="jeweler (v1.8.8, RVM: ruby-2.0.0-p195) [gem]" level="application" />
34
- <orderEntry type="library" scope="PROVIDED" name="json (v1.8.1, RVM: ruby-2.0.0-p195) [gem]" level="application" />
35
- <orderEntry type="library" scope="PROVIDED" name="jwt (v0.1.8, RVM: ruby-2.0.0-p195) [gem]" level="application" />
36
- <orderEntry type="library" scope="PROVIDED" name="minitest (v4.7.5, RVM: ruby-2.0.0-p195) [gem]" level="application" />
37
- <orderEntry type="library" scope="PROVIDED" name="multi_json (v1.8.2, RVM: ruby-2.0.0-p195) [gem]" level="application" />
38
- <orderEntry type="library" scope="PROVIDED" name="multi_xml (v0.5.5, RVM: ruby-2.0.0-p195) [gem]" level="application" />
39
- <orderEntry type="library" scope="PROVIDED" name="multipart-post (v1.2.0, RVM: ruby-2.0.0-p195) [gem]" level="application" />
40
- <orderEntry type="library" scope="PROVIDED" name="nokogiri (v1.5.10, RVM: ruby-2.0.0-p195) [gem]" level="application" />
41
- <orderEntry type="library" scope="PROVIDED" name="oauth2 (v0.9.2, RVM: ruby-2.0.0-p195) [gem]" level="application" />
42
- <orderEntry type="library" scope="PROVIDED" name="rack (v1.5.2, RVM: ruby-2.0.0-p195) [gem]" level="application" />
43
- <orderEntry type="library" scope="PROVIDED" name="rake (v10.1.0, RVM: ruby-2.0.0-p195) [gem]" level="application" />
44
- <orderEntry type="library" scope="PROVIDED" name="rdoc (v3.12.2, RVM: ruby-2.0.0-p195) [gem]" level="application" />
45
- <orderEntry type="library" scope="PROVIDED" name="shoulda (v3.5.0, RVM: ruby-2.0.0-p195) [gem]" level="application" />
46
- <orderEntry type="library" scope="PROVIDED" name="shoulda-context (v1.1.5, RVM: ruby-2.0.0-p195) [gem]" level="application" />
47
- <orderEntry type="library" scope="PROVIDED" name="shoulda-matchers (v2.4.0, RVM: ruby-2.0.0-p195) [gem]" level="application" />
48
- <orderEntry type="library" scope="PROVIDED" name="simplecov (v0.7.1, RVM: ruby-2.0.0-p195) [gem]" level="application" />
49
- <orderEntry type="library" scope="PROVIDED" name="simplecov-html (v0.7.1, RVM: ruby-2.0.0-p195) [gem]" level="application" />
50
- <orderEntry type="library" scope="PROVIDED" name="thread_safe (v0.1.3, RVM: ruby-2.0.0-p195) [gem]" level="application" />
51
- <orderEntry type="library" scope="PROVIDED" name="tzinfo (v0.3.38, RVM: ruby-2.0.0-p195) [gem]" level="application" />
21
+ <orderEntry type="library" scope="PROVIDED" name="activesupport (v4.0.0, RVM: ruby-2.0.0-p353) [gem]" level="application" />
22
+ <orderEntry type="library" scope="PROVIDED" name="addressable (v2.3.5, RVM: ruby-2.0.0-p353) [gem]" level="application" />
23
+ <orderEntry type="library" scope="PROVIDED" name="atomic (v1.1.14, RVM: ruby-2.0.0-p353) [gem]" level="application" />
24
+ <orderEntry type="library" scope="PROVIDED" name="builder (v3.2.2, RVM: ruby-2.0.0-p353) [gem]" level="application" />
25
+ <orderEntry type="library" scope="PROVIDED" name="bundler (v1.5.1, RVM: ruby-2.0.0-p353) [gem]" level="application" />
26
+ <orderEntry type="library" scope="PROVIDED" name="faraday (v0.8.8, RVM: ruby-2.0.0-p353) [gem]" level="application" />
27
+ <orderEntry type="library" scope="PROVIDED" name="git (v1.2.6, RVM: ruby-2.0.0-p353) [gem]" level="application" />
28
+ <orderEntry type="library" scope="PROVIDED" name="github_api (v0.10.1, RVM: ruby-2.0.0-p353) [gem]" level="application" />
29
+ <orderEntry type="library" scope="PROVIDED" name="hashie (v2.0.5, RVM: ruby-2.0.0-p353) [gem]" level="application" />
30
+ <orderEntry type="library" scope="PROVIDED" name="highline (v1.6.20, RVM: ruby-2.0.0-p353) [gem]" level="application" />
31
+ <orderEntry type="library" scope="PROVIDED" name="httpauth (v0.2.0, RVM: ruby-2.0.0-p353) [gem]" level="application" />
32
+ <orderEntry type="library" scope="PROVIDED" name="i18n (v0.6.5, RVM: ruby-2.0.0-p353) [gem]" level="application" />
33
+ <orderEntry type="library" scope="PROVIDED" name="jeweler (v1.8.8, RVM: ruby-2.0.0-p353) [gem]" level="application" />
34
+ <orderEntry type="library" scope="PROVIDED" name="json (v1.8.1, RVM: ruby-2.0.0-p353) [gem]" level="application" />
35
+ <orderEntry type="library" scope="PROVIDED" name="jwt (v0.1.8, RVM: ruby-2.0.0-p353) [gem]" level="application" />
36
+ <orderEntry type="library" scope="PROVIDED" name="mime-types (v2.4.3, RVM: ruby-2.0.0-p353) [gem]" level="application" />
37
+ <orderEntry type="library" scope="PROVIDED" name="minitest (v4.7.5, RVM: ruby-2.0.0-p353) [gem]" level="application" />
38
+ <orderEntry type="library" scope="PROVIDED" name="multi_json (v1.8.2, RVM: ruby-2.0.0-p353) [gem]" level="application" />
39
+ <orderEntry type="library" scope="PROVIDED" name="multi_xml (v0.5.5, RVM: ruby-2.0.0-p353) [gem]" level="application" />
40
+ <orderEntry type="library" scope="PROVIDED" name="multipart-post (v1.2.0, RVM: ruby-2.0.0-p353) [gem]" level="application" />
41
+ <orderEntry type="library" scope="PROVIDED" name="netrc (v0.8.0, RVM: ruby-2.0.0-p353) [gem]" level="application" />
42
+ <orderEntry type="library" scope="PROVIDED" name="nokogiri (v1.5.10, RVM: ruby-2.0.0-p353) [gem]" level="application" />
43
+ <orderEntry type="library" scope="PROVIDED" name="oauth2 (v0.9.2, RVM: ruby-2.0.0-p353) [gem]" level="application" />
44
+ <orderEntry type="library" scope="PROVIDED" name="rack (v1.5.2, RVM: ruby-2.0.0-p353) [gem]" level="application" />
45
+ <orderEntry type="library" scope="PROVIDED" name="rake (v10.1.0, RVM: ruby-2.0.0-p353) [gem]" level="application" />
46
+ <orderEntry type="library" scope="PROVIDED" name="rdoc (v3.12.2, RVM: ruby-2.0.0-p353) [gem]" level="application" />
47
+ <orderEntry type="library" scope="PROVIDED" name="rest-client (v1.7.2, RVM: ruby-2.0.0-p353) [gem]" level="application" />
48
+ <orderEntry type="library" scope="PROVIDED" name="shoulda (v3.5.0, RVM: ruby-2.0.0-p353) [gem]" level="application" />
49
+ <orderEntry type="library" scope="PROVIDED" name="shoulda-context (v1.1.5, RVM: ruby-2.0.0-p353) [gem]" level="application" />
50
+ <orderEntry type="library" scope="PROVIDED" name="shoulda-matchers (v2.4.0, RVM: ruby-2.0.0-p353) [gem]" level="application" />
51
+ <orderEntry type="library" scope="PROVIDED" name="simplecov (v0.7.1, RVM: ruby-2.0.0-p353) [gem]" level="application" />
52
+ <orderEntry type="library" scope="PROVIDED" name="simplecov-html (v0.7.1, RVM: ruby-2.0.0-p353) [gem]" level="application" />
53
+ <orderEntry type="library" scope="PROVIDED" name="thread_safe (v0.1.3, RVM: ruby-2.0.0-p353) [gem]" level="application" />
54
+ <orderEntry type="library" scope="PROVIDED" name="tzinfo (v0.3.38, RVM: ruby-2.0.0-p353) [gem]" level="application" />
52
55
  </component>
53
56
  </module>
54
57
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.9
1
+ 0.2.0
@@ -1,5 +1,6 @@
1
1
  require 'rest_client'
2
2
 
3
+ require File.join(File.dirname(__FILE__), 'pivotal-tracker-api', 'base')
3
4
  require File.join(File.dirname(__FILE__), 'pivotal-tracker-api', 'client')
4
5
  require File.join(File.dirname(__FILE__), 'pivotal-tracker-api', 'project')
5
6
  require File.join(File.dirname(__FILE__), 'pivotal-tracker-api', 'attachment')
@@ -1,13 +1,9 @@
1
1
  module Scorer
2
- class Activity
2
+ class Activity < Scorer::Base
3
3
 
4
4
  attr_accessor :project_id, :occurred_at, :highlight, :primary_resources, :changes, :guid, :kind, :performed_by_id,
5
5
  :performed_by, :message, :project_version
6
6
 
7
- def initialize(attributes={})
8
- update_attributes(attributes)
9
- end
10
-
11
7
  def self.parse_json_activity(json_activity, project_id)
12
8
  json_activity.each do |activity|
13
9
  new({
@@ -32,11 +28,5 @@ module Scorer
32
28
  Scorer::Person.parse_json_person(json_person)
33
29
  end
34
30
 
35
- def update_attributes(attrs)
36
- attrs.each do |key, value|
37
- self.send("#{key}=", value)
38
- end
39
- end
40
-
41
31
  end
42
32
  end
@@ -1,42 +1,28 @@
1
1
  module Scorer
2
- class Attachment
2
+ class Attachment < Scorer::Base
3
3
 
4
4
  attr_accessor :filename, :id, :created_at, :uploaded_by, :big_url,
5
5
  :width, :height, :download_url, :thumbnail_url, :size, :content_type
6
6
 
7
7
  def self.parse_attachments(attachments)
8
- parsed_attachments = Array.new
9
- if attachments
10
- attachments.each do |file|
11
- parsed_attachments << new({
12
- id: file[:id].to_i,
13
- filename: file[:filename],
14
- created_at: file[:created_at],
15
- uploaded_by: file[:uploaded_by],
16
- big_url: file[:big_url],
17
- width: file[:width],
18
- height: file[:height],
19
- download_url: file[:download_url],
20
- thumbnail_url: file[:thumbnail_url],
21
- size: file[:size],
22
- content_type: file[:content_type]
23
- })
24
- end
25
- end
8
+ parsed_attachments = []
9
+ attachments.each do |file|
10
+ parsed_attachments << new({
11
+ id: file[:id].to_i,
12
+ filename: file[:filename],
13
+ created_at: file[:created_at],
14
+ uploaded_by: file[:uploaded_by],
15
+ big_url: file[:big_url],
16
+ width: file[:width],
17
+ height: file[:height],
18
+ download_url: file[:download_url],
19
+ thumbnail_url: file[:thumbnail_url],
20
+ size: file[:size],
21
+ content_type: file[:content_type]
22
+ })
23
+ end if attachments
26
24
  parsed_attachments
27
25
  end
28
26
 
29
- def initialize(attributes={})
30
- update_attributes(attributes)
31
- end
32
-
33
- protected
34
-
35
- def update_attributes(attrs)
36
- attrs.each do |key, value|
37
- self.send("#{key}=", value)
38
- end
39
- end
40
-
41
27
  end
42
28
  end
@@ -0,0 +1,28 @@
1
+ module Scorer
2
+ class Base
3
+
4
+ def initialize(attributes={})
5
+ update_attributes(attributes)
6
+ end
7
+
8
+ def to_json
9
+ hash = {}
10
+ self.instance_variables.each do |var|
11
+ key = var.to_s.delete('@')
12
+ variable = self.instance_variable_get var
13
+ hash[key.to_sym] = variable
14
+ end
15
+ hash.to_json
16
+ end
17
+
18
+ protected
19
+
20
+ def update_attributes(attrs)
21
+ attrs.each do |key, value|
22
+ # self.send("#{key}=", value.is_a?(Array) ? value.join(',') : value )
23
+ self.send("#{key}=", value)
24
+ end
25
+ end
26
+
27
+ end
28
+ end
@@ -1,7 +1,7 @@
1
1
  module Scorer
2
- class Comment
2
+ class Comment < Scorer::Base
3
3
 
4
- attr_accessor :story, :project_id, :story_id, :id, :text, :author, :created_at, :updated_at, :file_attachments
4
+ attr_accessor :project_id, :story_id, :id, :text, :author, :created_at, :updated_at, :file_attachments
5
5
 
6
6
  def self.fields
7
7
  ["person(#{Scorer::Person.fields.join(',')})", 'text', 'updated_at', 'id',
@@ -11,44 +11,27 @@ module Scorer
11
11
  def self.parse_json_comments(json_comments, story)
12
12
  comments = Array.new
13
13
  json_comments.each do |comment|
14
- person = Scorer::Person.parse_json_person({id: '0', name: 'Unkown', initials: 'Unkown', username: 'Unkown', email: 'Unkown'})
15
- if comment[:person]
16
- person = Scorer::Person.parse_json_person(comment[:person])
17
- end
18
- file_attachments = Array.new
19
- if comment[:file_attachments]
20
- file_attachments = Scorer::Attachment.parse_attachments(comment[:file_attachments])
21
- end
14
+ person = Scorer::Person.parse_json_person(comment[:person]) if comment[:person]
15
+ person = Scorer::Person.parse_json_person({
16
+ id: '0',
17
+ name: 'Unkown',
18
+ initials: 'Unkown',
19
+ username: 'Unkown',
20
+ email: 'Unkown'
21
+ }) if person.nil?
22
+ file_attachments = []
23
+ file_attachments = Scorer::Attachment.parse_attachments(comment[:file_attachments]) if comment[:file_attachments]
22
24
  comments << new({
23
25
  id: comment[:id].to_i,
24
26
  text: comment[:text],
25
27
  author: person,
26
28
  created_at: DateTime.parse(comment[:created_at].to_s).to_s,
27
29
  updated_at: DateTime.parse(comment[:updated_at].to_s).to_s,
28
- file_attachments: file_attachments,
29
- story: story
30
+ file_attachments: file_attachments
30
31
  })
31
32
  end
32
33
  comments
33
34
  end
34
35
 
35
- def initialize(attributes={})
36
- if attributes[:owner]
37
- self.story = attributes.delete(:owner)
38
- self.project_id = self.story.project_id
39
- self.story_id = self.story.id
40
- end
41
-
42
- update_attributes(attributes)
43
- end
44
-
45
- protected
46
-
47
- def update_attributes(attrs)
48
- attrs.each do |key, value|
49
- self.send("#{key}=", value)
50
- end
51
- end
52
-
53
36
  end
54
37
  end
@@ -1,12 +1,8 @@
1
1
  module Scorer
2
- class Iteration
2
+ class Iteration < Scorer::Base
3
3
 
4
4
  attr_accessor :project_id, :length, :planned, :stories, :story_ids, :number, :team_strength, :finish, :kind, :start
5
5
 
6
- def initialize(attributes={})
7
- update_attributes(attributes)
8
- end
9
-
10
6
  def self.parse_json_iteration(json_iteration, include_done)
11
7
  new({
12
8
  project_id: json_iteration[:project_id].to_i,
@@ -29,11 +25,5 @@ module Scorer
29
25
  PivotalService.stories(project, true, story_ids, Scorer::Story.fields, include_done)
30
26
  end
31
27
 
32
- def update_attributes(attrs)
33
- attrs.each do |key, value|
34
- self.send("#{key}=", value )
35
- end
36
- end
37
-
38
28
  end
39
29
  end
@@ -1,5 +1,5 @@
1
1
  module Scorer
2
- class Person
2
+ class Person < Scorer::Base
3
3
 
4
4
  attr_accessor :name, :id, :initials, :email, :username
5
5
 
@@ -7,10 +7,6 @@ module Scorer
7
7
  ['name', 'id', 'initials', 'email', 'username']
8
8
  end
9
9
 
10
- def initialize(attributes={})
11
- update_attributes(attributes)
12
- end
13
-
14
10
  def self.parse_json_person(json_person)
15
11
  new({
16
12
  id: json_person[:id].to_i,
@@ -21,13 +17,5 @@ module Scorer
21
17
  })
22
18
  end
23
19
 
24
- protected
25
-
26
- def update_attributes(attrs)
27
- attrs.each do |key, value|
28
- self.send("#{key}=", value)
29
- end
30
- end
31
-
32
20
  end
33
21
  end
@@ -1,5 +1,5 @@
1
1
  module Scorer
2
- class Project
2
+ class Project < Scorer::Base
3
3
 
4
4
  attr_accessor :updated_at, :bugs_and_chores_are_estimatable, :enable_planned_mode, :public, :story_ids, :name,
5
5
  :iteration_length, :start_time, :version, :label_ids, :description, :profile_content,
@@ -51,13 +51,5 @@ module Scorer
51
51
  self.labels.split(',')
52
52
  end
53
53
 
54
- protected
55
-
56
- def update_attributes(attrs)
57
- attrs.each do |key, value|
58
- self.send("#{key}=", value.is_a?(Array) ? value.join(',') : value )
59
- end
60
- end
61
-
62
54
  end
63
55
  end
@@ -1,15 +1,11 @@
1
1
  module Scorer
2
- class Story
2
+ class Story < Scorer::Base
3
3
 
4
4
  attr_accessor :project_id, :follower_ids, :updated_at, :current_state, :name, :comment_ids, :url, :story_type,
5
5
  :label_ids, :description, :requested_by_id, :planned_iteration_number, :external_id, :deadline,
6
6
  :owned_by_id, :owned_by, :created_at, :estimate, :kind, :id, :task_ids, :integration_id, :accepted_at,
7
7
  :comments, :tasks, :has_attachments, :requested_by, :labels, :notes, :started_at, :status
8
8
 
9
- def initialize(attributes={})
10
- update_attributes(attributes)
11
- end
12
-
13
9
  def self.fields
14
10
  ['url', 'name', 'description', 'story_type',
15
11
  'estimate', 'current_state', 'requested_by',
@@ -1,25 +1,7 @@
1
1
  module Scorer
2
2
  class Task
3
3
 
4
- attr_accessor :project_id, :story_id, :story, :id, :description, :position, :complete, :created_at
5
-
6
- def initialize(attributes={})
7
- if attributes[:owner]
8
- self.story = attributes.delete(:owner)
9
- self.project_id = self.story.project_id
10
- self.story_id = self.story.id
11
- end
12
-
13
- update_attributes(attributes)
14
- end
15
-
16
- protected
17
-
18
- def update_attributes(attrs)
19
- attrs.each do |key, value|
20
- self.send("#{key}=", value.is_a?(Array) ? value.join(',') : value )
21
- end
22
- end
4
+ attr_accessor :project_id, :story_id, :id, :description, :position, :complete, :created_at
23
5
 
24
6
  end
25
7
  end
@@ -2,16 +2,16 @@
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: pivotal-tracker-api 0.1.9 ruby lib
5
+ # stub: pivotal-tracker-api 0.2.0 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "pivotal-tracker-api"
9
- s.version = "0.1.9"
9
+ s.version = "0.2.0"
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"]
13
13
  s.authors = ["jfox"]
14
- s.date = "2014-11-24"
14
+ s.date = "2015-07-23"
15
15
  s.description = "A ruby gem to communicate with the Picotal Tracker API v5"
16
16
  s.email = "atljeremy@me.com"
17
17
  s.extra_rdoc_files = [
@@ -37,6 +37,7 @@ Gem::Specification.new do |s|
37
37
  "lib/pivotal-tracker-api.rb",
38
38
  "lib/pivotal-tracker-api/activity.rb",
39
39
  "lib/pivotal-tracker-api/attachment.rb",
40
+ "lib/pivotal-tracker-api/base.rb",
40
41
  "lib/pivotal-tracker-api/client.rb",
41
42
  "lib/pivotal-tracker-api/comment.rb",
42
43
  "lib/pivotal-tracker-api/iteration.rb",
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pivotal-tracker-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.9
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - jfox
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-11-24 00:00:00.000000000 Z
11
+ date: 2015-07-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -120,6 +120,7 @@ files:
120
120
  - lib/pivotal-tracker-api.rb
121
121
  - lib/pivotal-tracker-api/activity.rb
122
122
  - lib/pivotal-tracker-api/attachment.rb
123
+ - lib/pivotal-tracker-api/base.rb
123
124
  - lib/pivotal-tracker-api/client.rb
124
125
  - lib/pivotal-tracker-api/comment.rb
125
126
  - lib/pivotal-tracker-api/iteration.rb