timetrap 1.8.0 → 1.8.1

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.
Files changed (6) hide show
  1. data/Gemfile +1 -1
  2. data/README.md +8 -1
  3. data/VERSION.yml +1 -1
  4. data/lib/timetrap/cli.rb +13 -0
  5. data/timetrap.gemspec +11 -12
  6. metadata +107 -179
data/Gemfile CHANGED
@@ -4,7 +4,7 @@ gem 'sequel', ">= 3.9.0"
4
4
  gem 'sqlite3', "~> 1.3.3"
5
5
  gem 'chronic', ">= 0.6.4"
6
6
  gem 'getopt-declare', ">= 1.28"
7
- gem 'json', "~>1.4.6"
7
+ gem 'json', ">= 1.4.6"
8
8
  gem 'icalendar', "~>1.1.5"
9
9
  gem 'rake'
10
10
 
data/README.md CHANGED
@@ -223,7 +223,7 @@ Timetrap Formatters Repository
223
223
  ------------------------------
224
224
 
225
225
  A community focused repository of custom formatters is available at
226
- https://github.com/sam/timetrap_formatters.
226
+ https://github.com/samg/timetrap_formatters.
227
227
 
228
228
  Commands
229
229
  --------
@@ -318,6 +318,13 @@ Commands
318
318
 
319
319
  usage: ``t week [--ids] [--end DATE] [--format FMT] [TIMESHEET | all]``
320
320
 
321
+ **month**
322
+ Shortcut for display with start date set to the beginning of this month
323
+ (or a specified month) and end date set to the end of the month.
324
+
325
+ usage: ``t month [--ids] [--start MONTH] [--format FMT] [TIMESHEET | all]``
326
+
327
+
321
328
  Global Options
322
329
  --------
323
330
 
@@ -1,4 +1,4 @@
1
1
  ---
2
2
  :major: 1
3
3
  :minor: 8
4
- :patch: 0
4
+ :patch: 1
@@ -87,6 +87,10 @@ COMMAND is one of:
87
87
  * week - Shortcut for display with start date set to monday of this week.
88
88
  usage: t week [--ids] [--end DATE] [--format FMT] [SHEET | all]
89
89
 
90
+ * month - Shortcut for display with start date set to the beginning of either
91
+ this month or a specified month.
92
+ usage: t month [--ids] [--start MONTH] [--format FMT] [SHEET | all]
93
+
90
94
  OTHER OPTIONS
91
95
 
92
96
  -h, --help Display this help.
@@ -337,6 +341,15 @@ COMMAND is one of:
337
341
  display
338
342
  end
339
343
 
344
+ def month
345
+ d = Chronic.parse( "last #{args['-s'] || Date.today.strftime("%B")}" ).to_date
346
+ beginning_of_month = Date.new( d.year, d.month )
347
+ end_of_month = Date.new( d.year, d.month+1 ) - 1
348
+ args['-s'] = beginning_of_month.to_s
349
+ args['-e'] = end_of_month.to_s
350
+ display
351
+ end
352
+
340
353
  private
341
354
 
342
355
  def unused_args
@@ -4,15 +4,14 @@
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
- s.name = %q{timetrap}
8
- s.version = "1.8.0"
7
+ s.name = "timetrap"
8
+ s.version = "1.8.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Sam Goldstein"]
12
- s.date = %q{2012-01-01}
13
- s.default_executable = %q{t}
14
- s.description = %q{Command line time tracker}
15
- s.email = %q{sgrock@gmail.com}
12
+ s.date = "2012-04-04"
13
+ s.description = "Command line time tracker"
14
+ s.email = "sgrock@gmail.com"
16
15
  s.executables = ["t"]
17
16
  s.extra_rdoc_files = [
18
17
  "LICENSE.txt",
@@ -44,11 +43,11 @@ Gem::Specification.new do |s|
44
43
  "spec/timetrap_spec.rb",
45
44
  "timetrap.gemspec"
46
45
  ]
47
- s.homepage = %q{http://github.com/samg/timetrap/tree/master}
46
+ s.homepage = "http://github.com/samg/timetrap/tree/master"
48
47
  s.rdoc_options = ["--inline-source", "--charset=UTF-8"]
49
48
  s.require_paths = ["lib"]
50
- s.rubygems_version = %q{1.5.3}
51
- s.summary = %q{Command line time tracker}
49
+ s.rubygems_version = "1.8.10"
50
+ s.summary = "Command line time tracker"
52
51
 
53
52
  if s.respond_to? :specification_version then
54
53
  s.specification_version = 3
@@ -58,7 +57,7 @@ Gem::Specification.new do |s|
58
57
  s.add_runtime_dependency(%q<sqlite3>, ["~> 1.3.3"])
59
58
  s.add_runtime_dependency(%q<chronic>, [">= 0.6.4"])
60
59
  s.add_runtime_dependency(%q<getopt-declare>, [">= 1.28"])
61
- s.add_runtime_dependency(%q<json>, ["~> 1.4.6"])
60
+ s.add_runtime_dependency(%q<json>, [">= 1.4.6"])
62
61
  s.add_runtime_dependency(%q<icalendar>, ["~> 1.1.5"])
63
62
  s.add_runtime_dependency(%q<rake>, [">= 0"])
64
63
  s.add_development_dependency(%q<jeweler>, [">= 0"])
@@ -71,7 +70,7 @@ Gem::Specification.new do |s|
71
70
  s.add_dependency(%q<sqlite3>, ["~> 1.3.3"])
72
71
  s.add_dependency(%q<chronic>, [">= 0.6.4"])
73
72
  s.add_dependency(%q<getopt-declare>, [">= 1.28"])
74
- s.add_dependency(%q<json>, ["~> 1.4.6"])
73
+ s.add_dependency(%q<json>, [">= 1.4.6"])
75
74
  s.add_dependency(%q<icalendar>, ["~> 1.1.5"])
76
75
  s.add_dependency(%q<rake>, [">= 0"])
77
76
  s.add_dependency(%q<jeweler>, [">= 0"])
@@ -85,7 +84,7 @@ Gem::Specification.new do |s|
85
84
  s.add_dependency(%q<sqlite3>, ["~> 1.3.3"])
86
85
  s.add_dependency(%q<chronic>, [">= 0.6.4"])
87
86
  s.add_dependency(%q<getopt-declare>, [">= 1.28"])
88
- s.add_dependency(%q<json>, ["~> 1.4.6"])
87
+ s.add_dependency(%q<json>, [">= 1.4.6"])
89
88
  s.add_dependency(%q<icalendar>, ["~> 1.1.5"])
90
89
  s.add_dependency(%q<rake>, [">= 0"])
91
90
  s.add_dependency(%q<jeweler>, [">= 0"])
metadata CHANGED
@@ -1,219 +1,157 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: timetrap
3
- version: !ruby/object:Gem::Version
4
- hash: 55
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.8.1
5
5
  prerelease:
6
- segments:
7
- - 1
8
- - 8
9
- - 0
10
- version: 1.8.0
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Sam Goldstein
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2012-01-01 00:00:00 -08:00
19
- default_executable: t
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2012-04-04 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: sequel
23
- version_requirements: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &70257588611440 !ruby/object:Gem::Requirement
24
17
  none: false
25
- requirements:
26
- - - ">="
27
- - !ruby/object:Gem::Version
28
- hash: 35
29
- segments:
30
- - 3
31
- - 9
32
- - 0
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
33
21
  version: 3.9.0
34
- prerelease: false
35
22
  type: :runtime
36
- requirement: *id001
37
- - !ruby/object:Gem::Dependency
23
+ prerelease: false
24
+ version_requirements: *70257588611440
25
+ - !ruby/object:Gem::Dependency
38
26
  name: sqlite3
39
- version_requirements: &id002 !ruby/object:Gem::Requirement
27
+ requirement: &70257588610880 !ruby/object:Gem::Requirement
40
28
  none: false
41
- requirements:
29
+ requirements:
42
30
  - - ~>
43
- - !ruby/object:Gem::Version
44
- hash: 29
45
- segments:
46
- - 1
47
- - 3
48
- - 3
31
+ - !ruby/object:Gem::Version
49
32
  version: 1.3.3
50
- prerelease: false
51
33
  type: :runtime
52
- requirement: *id002
53
- - !ruby/object:Gem::Dependency
34
+ prerelease: false
35
+ version_requirements: *70257588610880
36
+ - !ruby/object:Gem::Dependency
54
37
  name: chronic
55
- version_requirements: &id003 !ruby/object:Gem::Requirement
38
+ requirement: &70257588636460 !ruby/object:Gem::Requirement
56
39
  none: false
57
- requirements:
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- hash: 15
61
- segments:
62
- - 0
63
- - 6
64
- - 4
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
65
43
  version: 0.6.4
66
- prerelease: false
67
44
  type: :runtime
68
- requirement: *id003
69
- - !ruby/object:Gem::Dependency
45
+ prerelease: false
46
+ version_requirements: *70257588636460
47
+ - !ruby/object:Gem::Dependency
70
48
  name: getopt-declare
71
- version_requirements: &id004 !ruby/object:Gem::Requirement
49
+ requirement: &70257588635400 !ruby/object:Gem::Requirement
72
50
  none: false
73
- requirements:
74
- - - ">="
75
- - !ruby/object:Gem::Version
76
- hash: 55
77
- segments:
78
- - 1
79
- - 28
80
- version: "1.28"
81
- prerelease: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '1.28'
82
55
  type: :runtime
83
- requirement: *id004
84
- - !ruby/object:Gem::Dependency
56
+ prerelease: false
57
+ version_requirements: *70257588635400
58
+ - !ruby/object:Gem::Dependency
85
59
  name: json
86
- version_requirements: &id005 !ruby/object:Gem::Requirement
60
+ requirement: &70257588634220 !ruby/object:Gem::Requirement
87
61
  none: false
88
- requirements:
89
- - - ~>
90
- - !ruby/object:Gem::Version
91
- hash: 11
92
- segments:
93
- - 1
94
- - 4
95
- - 6
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
96
65
  version: 1.4.6
97
- prerelease: false
98
66
  type: :runtime
99
- requirement: *id005
100
- - !ruby/object:Gem::Dependency
67
+ prerelease: false
68
+ version_requirements: *70257588634220
69
+ - !ruby/object:Gem::Dependency
101
70
  name: icalendar
102
- version_requirements: &id006 !ruby/object:Gem::Requirement
71
+ requirement: &70257588633020 !ruby/object:Gem::Requirement
103
72
  none: false
104
- requirements:
73
+ requirements:
105
74
  - - ~>
106
- - !ruby/object:Gem::Version
107
- hash: 25
108
- segments:
109
- - 1
110
- - 1
111
- - 5
75
+ - !ruby/object:Gem::Version
112
76
  version: 1.1.5
113
- prerelease: false
114
77
  type: :runtime
115
- requirement: *id006
116
- - !ruby/object:Gem::Dependency
78
+ prerelease: false
79
+ version_requirements: *70257588633020
80
+ - !ruby/object:Gem::Dependency
117
81
  name: rake
118
- version_requirements: &id007 !ruby/object:Gem::Requirement
82
+ requirement: &70257588632140 !ruby/object:Gem::Requirement
119
83
  none: false
120
- requirements:
121
- - - ">="
122
- - !ruby/object:Gem::Version
123
- hash: 3
124
- segments:
125
- - 0
126
- version: "0"
127
- prerelease: false
84
+ requirements:
85
+ - - ! '>='
86
+ - !ruby/object:Gem::Version
87
+ version: '0'
128
88
  type: :runtime
129
- requirement: *id007
130
- - !ruby/object:Gem::Dependency
89
+ prerelease: false
90
+ version_requirements: *70257588632140
91
+ - !ruby/object:Gem::Dependency
131
92
  name: jeweler
132
- version_requirements: &id008 !ruby/object:Gem::Requirement
93
+ requirement: &70257588631220 !ruby/object:Gem::Requirement
133
94
  none: false
134
- requirements:
135
- - - ">="
136
- - !ruby/object:Gem::Version
137
- hash: 3
138
- segments:
139
- - 0
140
- version: "0"
141
- prerelease: false
95
+ requirements:
96
+ - - ! '>='
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
142
99
  type: :development
143
- requirement: *id008
144
- - !ruby/object:Gem::Dependency
100
+ prerelease: false
101
+ version_requirements: *70257588631220
102
+ - !ruby/object:Gem::Dependency
145
103
  name: sequel
146
- version_requirements: &id009 !ruby/object:Gem::Requirement
104
+ requirement: &70257588630640 !ruby/object:Gem::Requirement
147
105
  none: false
148
- requirements:
149
- - - ">="
150
- - !ruby/object:Gem::Version
151
- hash: 35
152
- segments:
153
- - 3
154
- - 9
155
- - 0
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
156
109
  version: 3.9.0
157
- prerelease: false
158
110
  type: :runtime
159
- requirement: *id009
160
- - !ruby/object:Gem::Dependency
111
+ prerelease: false
112
+ version_requirements: *70257588630640
113
+ - !ruby/object:Gem::Dependency
161
114
  name: sqlite3
162
- version_requirements: &id010 !ruby/object:Gem::Requirement
115
+ requirement: &70257588630160 !ruby/object:Gem::Requirement
163
116
  none: false
164
- requirements:
117
+ requirements:
165
118
  - - ~>
166
- - !ruby/object:Gem::Version
167
- hash: 29
168
- segments:
169
- - 1
170
- - 3
171
- - 3
119
+ - !ruby/object:Gem::Version
172
120
  version: 1.3.3
173
- prerelease: false
174
121
  type: :runtime
175
- requirement: *id010
176
- - !ruby/object:Gem::Dependency
122
+ prerelease: false
123
+ version_requirements: *70257588630160
124
+ - !ruby/object:Gem::Dependency
177
125
  name: chronic
178
- version_requirements: &id011 !ruby/object:Gem::Requirement
126
+ requirement: &70257588643640 !ruby/object:Gem::Requirement
179
127
  none: false
180
- requirements:
181
- - - ">="
182
- - !ruby/object:Gem::Version
183
- hash: 15
184
- segments:
185
- - 0
186
- - 6
187
- - 4
128
+ requirements:
129
+ - - ! '>='
130
+ - !ruby/object:Gem::Version
188
131
  version: 0.6.4
189
- prerelease: false
190
132
  type: :runtime
191
- requirement: *id011
192
- - !ruby/object:Gem::Dependency
133
+ prerelease: false
134
+ version_requirements: *70257588643640
135
+ - !ruby/object:Gem::Dependency
193
136
  name: getopt-declare
194
- version_requirements: &id012 !ruby/object:Gem::Requirement
137
+ requirement: &70257588638940 !ruby/object:Gem::Requirement
195
138
  none: false
196
- requirements:
197
- - - ">="
198
- - !ruby/object:Gem::Version
199
- hash: 55
200
- segments:
201
- - 1
202
- - 28
203
- version: "1.28"
204
- prerelease: false
139
+ requirements:
140
+ - - ! '>='
141
+ - !ruby/object:Gem::Version
142
+ version: '1.28'
205
143
  type: :runtime
206
- requirement: *id012
144
+ prerelease: false
145
+ version_requirements: *70257588638940
207
146
  description: Command line time tracker
208
147
  email: sgrock@gmail.com
209
- executables:
148
+ executables:
210
149
  - t
211
150
  extensions: []
212
-
213
- extra_rdoc_files:
151
+ extra_rdoc_files:
214
152
  - LICENSE.txt
215
153
  - README.md
216
- files:
154
+ files:
217
155
  - .rspec
218
156
  - CONTRIBUTORS
219
157
  - Gemfile
@@ -238,40 +176,30 @@ files:
238
176
  - lib/timetrap/timer.rb
239
177
  - spec/timetrap_spec.rb
240
178
  - timetrap.gemspec
241
- has_rdoc: true
242
179
  homepage: http://github.com/samg/timetrap/tree/master
243
180
  licenses: []
244
-
245
181
  post_install_message:
246
- rdoc_options:
182
+ rdoc_options:
247
183
  - --inline-source
248
184
  - --charset=UTF-8
249
- require_paths:
185
+ require_paths:
250
186
  - lib
251
- required_ruby_version: !ruby/object:Gem::Requirement
187
+ required_ruby_version: !ruby/object:Gem::Requirement
252
188
  none: false
253
- requirements:
254
- - - ">="
255
- - !ruby/object:Gem::Version
256
- hash: 3
257
- segments:
258
- - 0
259
- version: "0"
260
- required_rubygems_version: !ruby/object:Gem::Requirement
189
+ requirements:
190
+ - - ! '>='
191
+ - !ruby/object:Gem::Version
192
+ version: '0'
193
+ required_rubygems_version: !ruby/object:Gem::Requirement
261
194
  none: false
262
- requirements:
263
- - - ">="
264
- - !ruby/object:Gem::Version
265
- hash: 3
266
- segments:
267
- - 0
268
- version: "0"
195
+ requirements:
196
+ - - ! '>='
197
+ - !ruby/object:Gem::Version
198
+ version: '0'
269
199
  requirements: []
270
-
271
200
  rubyforge_project:
272
- rubygems_version: 1.5.3
201
+ rubygems_version: 1.8.10
273
202
  signing_key:
274
203
  specification_version: 3
275
204
  summary: Command line time tracker
276
205
  test_files: []
277
-