tracker-ical 0.0.2 → 0.0.3

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.
data/CHANGELOG.rdoc CHANGED
@@ -1,3 +1,7 @@
1
+ = 0.0.3
2
+ Supports SSL accounts
3
+ Upgraded to bundler for development
4
+ Fixed bug with point totals
1
5
  = 0.0.2
2
6
  Releases are now included in the iCal feed
3
7
  Iterations display the total number of points in each
data/Gemfile ADDED
@@ -0,0 +1,15 @@
1
+ source "http://rubygems.org"
2
+ # Add dependencies required to use your gem here.
3
+ # Example:
4
+ # gem "activesupport", ">= 2.3.5"
5
+ gem 'icalendar', '>= 1.1.6'
6
+ gem 'pivotal-tracker', '>=0.2.0'
7
+
8
+ # Add dependencies to develop your gem here.
9
+ # Include everything needed to run rake, tests, features, etc.
10
+ group :development do
11
+ gem "rspec", "~> 2.5.0"
12
+ gem "bundler", "~> 1.0.10"
13
+ gem "jeweler", "~> 1.5.2"
14
+ gem "rcov", ">= 0"
15
+ end
data/Gemfile.lock ADDED
@@ -0,0 +1,44 @@
1
+ GEM
2
+ remote: http://rubygems.org/
3
+ specs:
4
+ builder (3.0.0)
5
+ diff-lcs (1.1.2)
6
+ git (1.2.5)
7
+ happymapper (0.3.2)
8
+ libxml-ruby (~> 1.1.3)
9
+ icalendar (1.1.6)
10
+ jeweler (1.5.2)
11
+ bundler (~> 1.0.0)
12
+ git (>= 1.2.5)
13
+ rake
14
+ libxml-ruby (1.1.4)
15
+ mime-types (1.16)
16
+ nokogiri (1.4.3.1)
17
+ pivotal-tracker (0.3.1)
18
+ builder
19
+ happymapper (>= 0.3.2)
20
+ nokogiri (~> 1.4.3.1)
21
+ rest-client (~> 1.6.0)
22
+ rake (0.8.7)
23
+ rcov (0.9.9)
24
+ rest-client (1.6.1)
25
+ mime-types (>= 1.16)
26
+ rspec (2.5.0)
27
+ rspec-core (~> 2.5.0)
28
+ rspec-expectations (~> 2.5.0)
29
+ rspec-mocks (~> 2.5.0)
30
+ rspec-core (2.5.1)
31
+ rspec-expectations (2.5.0)
32
+ diff-lcs (~> 1.1.2)
33
+ rspec-mocks (2.5.0)
34
+
35
+ PLATFORMS
36
+ ruby
37
+
38
+ DEPENDENCIES
39
+ bundler (~> 1.0.10)
40
+ icalendar (>= 1.1.6)
41
+ jeweler (~> 1.5.2)
42
+ pivotal-tracker (>= 0.2.0)
43
+ rcov
44
+ rspec (~> 2.5.0)
data/README.rdoc CHANGED
@@ -1,15 +1,26 @@
1
1
  = tracker-ical
2
2
 
3
- Pivotal iterations and releases output as iCal feed
3
+ PivotalTracker iterations and releases output as an iCalendar feed.
4
+
5
+ == Requirements
6
+
7
+ * PivotalTracker account with API access. Signup at Pivotal[https://www.pivotaltracker.com/signup/new].
8
+ * API token for the account
9
+
10
+ == Configuration
11
+ TrackerIcal.token('myusername@email.com', 'secretpassword') # Automatically fetch API Token from PivotalTracker
12
+ TrackerIcal.token = 'jkfduisj97823974j2kl24899234' # Manually set API Token for PivotalTracker
13
+ TrackerIcal.use_ssl = true # Set to true if account requires SSL. Default is false
4
14
 
5
15
  == Usage
6
- TrackerIcal.token('myusername@email.com', 'secretpassword') # Automatically fetch API Token
7
- TrackerIcal.token = 'jkfduisj97823974j2kl24899234' # Manually set API Token
16
+ TrackerIcal.create_calendar_for_project_id(project_id) #Pass the project_id of the PivotalTracker project to generate iCal string for
8
17
 
9
- TrackerIcal.create_calendar_for_project_id(project_id) #Pass the projectID of the Pivotal Project to generate iCal string for
18
+ TrackerIcal.create_ics_file_for_project_id(filepath,project_id) #Generates an ics file at the specified filepath for the PivotalTracker project with project_id
10
19
 
11
- TrackerIcal.create_ics_file_for_project_id(filepath,project_id) #Generates an ics file at the specified filepath for the Pivotal project with project_id
20
+ == Changelog
12
21
 
22
+ See CHANGELOG for details
23
+
13
24
  == Note on Patches/Pull Requests
14
25
 
15
26
  * Fork the project.
data/Rakefile CHANGED
@@ -10,9 +10,7 @@ begin
10
10
  gem.email = "niels@meerwerks.com"
11
11
  gem.homepage = "http://github.com/nielsm/tracker-ical"
12
12
  gem.authors = ["Niels Meersschaert"]
13
- gem.add_development_dependency "rspec", ">= 1.2.9"
14
- gem.add_dependency('icalendar', '>= 1.1.5')
15
- gem.add_dependency('pivotal-tracker', '>=0.2.0')
13
+ gem.extra_rdoc_files = ["README.rdoc", "VERSION", "CHANGELOG.rdoc"]
16
14
  # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
17
15
  end
18
16
  Jeweler::GemcutterTasks.new
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.2
1
+ 0.0.3
@@ -1,5 +1,5 @@
1
- module PivotalTracker
2
- class Story
1
+ module PivotalTracker #:nodoc:[all]
2
+ class Story #:nodoc:[all]
3
3
 
4
4
  element :deadline, DateTime
5
5
  end
data/lib/tracker-ical.rb CHANGED
@@ -4,14 +4,23 @@ require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'story')
4
4
 
5
5
  class TrackerIcal
6
6
 
7
+ #Set the PivotalTracker token to be used for interating with the Pivotal API
7
8
  def self.token=(token)
8
9
  PivotalTracker::Client.token=token
9
10
  end
11
+
12
+ #Set if PivotalTracker API should be accessed via SSL for all requests
13
+ def self.use_ssl=(ssl=true)
14
+ PivotalTracker::Client.use_ssl = ssl
15
+ end
10
16
 
17
+ #Retrieves the PivotalTracker token for a given username and password, enabling further interaction with the Pivotal API
11
18
  def self.token(username,password)
12
19
  PivotalTracker::Client.token(username,password)
13
20
  end
14
- #Returns an ics formatted string of all the milestones in the project
21
+
22
+ #Returns an ics formatted string of all the iterations and releases in the project
23
+ #If a release does not have a deadline, it will not be included in the output
15
24
  def self.create_calendar_for_project_id(project_id)
16
25
  project = PivotalTracker::Project.find(project_id)
17
26
  releases = project.stories.all(:story_type => 'release')
@@ -30,6 +39,7 @@ class TrackerIcal
30
39
  return calendar.to_ical
31
40
  end
32
41
 
42
+ #Creates an ics file at the specified filepath containing the iterations and releases with deadlines for the project_id
33
43
  def self.create_ics_file_for_project_id(filepath,project_id)
34
44
  file = File.new(filepath,"w+")
35
45
  file.write(self.create_calendar_for_project_id(project_id))
@@ -50,8 +60,12 @@ class TrackerIcal
50
60
  end
51
61
 
52
62
  def self.iteration_points(iteration)
63
+ points = {}
53
64
  point_array = iteration.stories.collect(&:estimate).compact
54
- eval point_array.join('+')
65
+ accepted_point_array = iteration.stories.select{|story|story.current_state == 'accepted'}.collect(&:estimate).compact
66
+ points[:total] = eval point_array.join('+')
67
+ points[:accepted] = eval accepted_point_array.join('+')
68
+ return points
55
69
  end
56
70
 
57
71
  def self.iteration_event(project,calendar,iter)
@@ -66,7 +80,7 @@ class TrackerIcal
66
80
  calendar.event do
67
81
  dtstart Date.new(iter.start.year,iter.start.month,iter.start.day)
68
82
  dtend Date.new(iter.finish.year,iter.finish.month,iter.finish.day)
69
- summary "#{project.name}: Iteration #{iter.number} (#{points} points)"
83
+ summary "#{project.name}: Iteration #{iter.number} (#{points[:accepted].to_i}/#{points[:total].to_i} points)"
70
84
  description stories.join("\n")
71
85
  end
72
86
  end
data/tracker-ical.gemspec CHANGED
@@ -1,63 +1,72 @@
1
1
  # Generated by jeweler
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{tracker-ical}
8
- s.version = "0.0.2"
8
+ s.version = "0.0.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Niels Meersschaert"]
12
- s.date = %q{2010-07-10}
12
+ s.date = %q{2011-04-13}
13
13
  s.description = %q{Get your iterations and releases in iCalendar format}
14
14
  s.email = %q{niels@meerwerks.com}
15
15
  s.extra_rdoc_files = [
16
- "LICENSE",
17
- "README.rdoc"
16
+ "CHANGELOG.rdoc",
17
+ "README.rdoc",
18
+ "VERSION"
18
19
  ]
19
20
  s.files = [
20
21
  ".document",
21
- ".gitignore",
22
- "CHANGELOG.rdoc",
23
- "LICENSE",
24
- "README.rdoc",
25
- "Rakefile",
26
- "VERSION",
27
- "lib/pivotal-tracker/story.rb",
28
- "lib/tracker-ical.rb",
29
- "spec/spec.opts",
30
- "spec/spec_helper.rb",
31
- "spec/tracker-ical_spec.rb",
32
- "tracker-ical.gemspec"
22
+ "CHANGELOG.rdoc",
23
+ "Gemfile",
24
+ "Gemfile.lock",
25
+ "LICENSE",
26
+ "README.rdoc",
27
+ "Rakefile",
28
+ "VERSION",
29
+ "lib/pivotal-tracker/story.rb",
30
+ "lib/tracker-ical.rb",
31
+ "spec/spec.opts",
32
+ "spec/spec_helper.rb",
33
+ "spec/tracker-ical_spec.rb",
34
+ "tracker-ical.gemspec"
33
35
  ]
34
36
  s.homepage = %q{http://github.com/nielsm/tracker-ical}
35
- s.rdoc_options = ["--charset=UTF-8"]
36
37
  s.require_paths = ["lib"]
37
- s.rubygems_version = %q{1.3.7}
38
+ s.rubygems_version = %q{1.5.0}
38
39
  s.summary = %q{Pivotal Tracker meets iCal}
39
40
  s.test_files = [
40
41
  "spec/spec_helper.rb",
41
- "spec/tracker-ical_spec.rb"
42
+ "spec/tracker-ical_spec.rb"
42
43
  ]
43
44
 
44
45
  if s.respond_to? :specification_version then
45
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
46
46
  s.specification_version = 3
47
47
 
48
48
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
49
- s.add_development_dependency(%q<rspec>, [">= 1.2.9"])
50
- s.add_runtime_dependency(%q<icalendar>, [">= 1.1.5"])
49
+ s.add_runtime_dependency(%q<icalendar>, [">= 1.1.6"])
51
50
  s.add_runtime_dependency(%q<pivotal-tracker>, [">= 0.2.0"])
51
+ s.add_development_dependency(%q<rspec>, ["~> 2.5.0"])
52
+ s.add_development_dependency(%q<bundler>, ["~> 1.0.10"])
53
+ s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
54
+ s.add_development_dependency(%q<rcov>, [">= 0"])
52
55
  else
53
- s.add_dependency(%q<rspec>, [">= 1.2.9"])
54
- s.add_dependency(%q<icalendar>, [">= 1.1.5"])
56
+ s.add_dependency(%q<icalendar>, [">= 1.1.6"])
55
57
  s.add_dependency(%q<pivotal-tracker>, [">= 0.2.0"])
58
+ s.add_dependency(%q<rspec>, ["~> 2.5.0"])
59
+ s.add_dependency(%q<bundler>, ["~> 1.0.10"])
60
+ s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
61
+ s.add_dependency(%q<rcov>, [">= 0"])
56
62
  end
57
63
  else
58
- s.add_dependency(%q<rspec>, [">= 1.2.9"])
59
- s.add_dependency(%q<icalendar>, [">= 1.1.5"])
64
+ s.add_dependency(%q<icalendar>, [">= 1.1.6"])
60
65
  s.add_dependency(%q<pivotal-tracker>, [">= 0.2.0"])
66
+ s.add_dependency(%q<rspec>, ["~> 2.5.0"])
67
+ s.add_dependency(%q<bundler>, ["~> 1.0.10"])
68
+ s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
69
+ s.add_dependency(%q<rcov>, [">= 0"])
61
70
  end
62
71
  end
63
72
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tracker-ical
3
3
  version: !ruby/object:Gem::Version
4
- hash: 27
5
- prerelease: false
4
+ hash: 25
5
+ prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 2
10
- version: 0.0.2
9
+ - 3
10
+ version: 0.0.3
11
11
  platform: ruby
12
12
  authors:
13
13
  - Niels Meersschaert
@@ -15,57 +15,103 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-07-10 00:00:00 -04:00
18
+ date: 2011-04-13 00:00:00 -04:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- name: rspec
23
22
  prerelease: false
23
+ type: :runtime
24
24
  requirement: &id001 !ruby/object:Gem::Requirement
25
25
  none: false
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- hash: 13
29
+ hash: 31
30
30
  segments:
31
31
  - 1
32
- - 2
33
- - 9
34
- version: 1.2.9
35
- type: :development
32
+ - 1
33
+ - 6
34
+ version: 1.1.6
35
+ name: icalendar
36
36
  version_requirements: *id001
37
37
  - !ruby/object:Gem::Dependency
38
- name: icalendar
39
38
  prerelease: false
39
+ type: :runtime
40
40
  requirement: &id002 !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
43
  - - ">="
44
44
  - !ruby/object:Gem::Version
45
- hash: 25
45
+ hash: 23
46
46
  segments:
47
- - 1
48
- - 1
49
- - 5
50
- version: 1.1.5
51
- type: :runtime
47
+ - 0
48
+ - 2
49
+ - 0
50
+ version: 0.2.0
51
+ name: pivotal-tracker
52
52
  version_requirements: *id002
53
53
  - !ruby/object:Gem::Dependency
54
- name: pivotal-tracker
55
54
  prerelease: false
55
+ type: :development
56
56
  requirement: &id003 !ruby/object:Gem::Requirement
57
57
  none: false
58
58
  requirements:
59
- - - ">="
59
+ - - ~>
60
60
  - !ruby/object:Gem::Version
61
- hash: 23
61
+ hash: 27
62
62
  segments:
63
- - 0
64
63
  - 2
64
+ - 5
65
65
  - 0
66
- version: 0.2.0
67
- type: :runtime
66
+ version: 2.5.0
67
+ name: rspec
68
68
  version_requirements: *id003
69
+ - !ruby/object:Gem::Dependency
70
+ prerelease: false
71
+ type: :development
72
+ requirement: &id004 !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ hash: 3
78
+ segments:
79
+ - 1
80
+ - 0
81
+ - 10
82
+ version: 1.0.10
83
+ name: bundler
84
+ version_requirements: *id004
85
+ - !ruby/object:Gem::Dependency
86
+ prerelease: false
87
+ type: :development
88
+ requirement: &id005 !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ hash: 7
94
+ segments:
95
+ - 1
96
+ - 5
97
+ - 2
98
+ version: 1.5.2
99
+ name: jeweler
100
+ version_requirements: *id005
101
+ - !ruby/object:Gem::Dependency
102
+ prerelease: false
103
+ type: :development
104
+ requirement: &id006 !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ hash: 3
110
+ segments:
111
+ - 0
112
+ version: "0"
113
+ name: rcov
114
+ version_requirements: *id006
69
115
  description: Get your iterations and releases in iCalendar format
70
116
  email: niels@meerwerks.com
71
117
  executables: []
@@ -73,12 +119,14 @@ executables: []
73
119
  extensions: []
74
120
 
75
121
  extra_rdoc_files:
76
- - LICENSE
122
+ - CHANGELOG.rdoc
77
123
  - README.rdoc
124
+ - VERSION
78
125
  files:
79
126
  - .document
80
- - .gitignore
81
127
  - CHANGELOG.rdoc
128
+ - Gemfile
129
+ - Gemfile.lock
82
130
  - LICENSE
83
131
  - README.rdoc
84
132
  - Rakefile
@@ -94,8 +142,8 @@ homepage: http://github.com/nielsm/tracker-ical
94
142
  licenses: []
95
143
 
96
144
  post_install_message:
97
- rdoc_options:
98
- - --charset=UTF-8
145
+ rdoc_options: []
146
+
99
147
  require_paths:
100
148
  - lib
101
149
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -119,7 +167,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
119
167
  requirements: []
120
168
 
121
169
  rubyforge_project:
122
- rubygems_version: 1.3.7
170
+ rubygems_version: 1.5.0
123
171
  signing_key:
124
172
  specification_version: 3
125
173
  summary: Pivotal Tracker meets iCal
data/.gitignore DELETED
@@ -1,21 +0,0 @@
1
- ## MAC OS
2
- .DS_Store
3
-
4
- ## TEXTMATE
5
- *.tmproj
6
- tmtags
7
-
8
- ## EMACS
9
- *~
10
- \#*
11
- .\#*
12
-
13
- ## VIM
14
- *.swp
15
-
16
- ## PROJECT::GENERAL
17
- coverage
18
- rdoc
19
- pkg
20
-
21
- ## PROJECT::SPECIFIC