timetrap 1.8.0 → 1.8.1

Sign up to get free protection for your applications and to get access to all the features.
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
-