to-do 1.2.7 → 1.3.0

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/.travis.yml CHANGED
@@ -3,7 +3,5 @@ rvm:
3
3
  - 1.8.7
4
4
  - 1.9.2
5
5
  - 1.9.3
6
- - rbx-18mode
7
- - rbx-19mode
8
6
  # uncomment this line if your project needs to run something other than `rake`:
9
7
  # script: bundle exec rspec spec
data/README.md CHANGED
@@ -1,17 +1,10 @@
1
- #to-do 1.2.7 [![Build Status](https://secure.travis-ci.org/kristenmills/to-do.png?branch=master)](http://travis-ci.org/kristenmills/to-do)
1
+ #to-do 1.3 [![Build Status](https://secure.travis-ci.org/kristenmills/to-do.png?branch=master)](http://travis-ci.org/kristenmills/to-do)
2
2
 
3
3
  A simple command line todo application written in Ruby.
4
4
 
5
- ##What's new in 1.2.7
6
- * Rewrote tests
7
- * Bug Fixes
8
-
9
- ##What's new in 1.2
10
- * Remove a list
11
- * Better usage messages
12
- * Better documentation using YARD
13
- * Better layout
14
- * SQlite backend
5
+ ##What's new in 1.3
6
+ * Priorities
7
+ * Sorting
15
8
 
16
9
  ##Install
17
10
  gem install to-do
@@ -26,8 +19,13 @@ A simple command line todo application written in Ruby.
26
19
  * Colored display
27
20
  * Undo Completing
28
21
  * Remove lists
22
+ * Sortable
23
+ * Priorities
29
24
 
30
25
  ##How to Use
26
+ This is just basic usage. For more information, view
27
+ todo -h
28
+ todo --help
31
29
 
32
30
  ###Create a new todo list or switch to an existing list
33
31
 
@@ -102,8 +100,6 @@ A simple command line todo application written in Ruby.
102
100
  * Tags
103
101
  * Due Dates
104
102
  * Tab Completion
105
- * Sorting
106
- * Priorites
107
103
  * Reorganizing
108
104
 
109
105
  ##Contributing to to-do
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.2.7
1
+ 1.3.0
data/lib/to-do/cli.rb CHANGED
@@ -14,7 +14,23 @@ module Todo
14
14
  # The option flags
15
15
  OPTIONS = {
16
16
  :is_num => false,
17
- :clear_all => false
17
+ :clear_all => false,
18
+ :change_priority => false,
19
+ :priority => 1,
20
+ :sort => "n"
21
+ }
22
+
23
+ # Usage messages for each of the commnands
24
+ USAGE = {
25
+ :default => "todo [COMMAND] [option] [arguments]",
26
+ :create => "todo create|switch <LIST NAME>",
27
+ :display => "todo [display|d] [-s {p,n}]",
28
+ :add => "todo add|a [-p {high, medium, low}] <TASK>",
29
+ :finish => "todo finish|f [-n <TASK_NUMBER>] [<TASK>]",
30
+ :undo => "todo undo|u [-n <TASK_NUMBER>] [<TASK>]",
31
+ :clear => "todo clear [-a]",
32
+ :remove => "todo remove|rm <LIST NAME>",
33
+ :set => "todo set|s [-p {high, medium, low}] [-n <TASK_NUMBER>] [<TASK>]"
18
34
  }
19
35
 
20
36
  # Displays the list in a human readable form:
@@ -34,11 +50,18 @@ module Todo
34
50
  def display
35
51
  tasks = DATABASE[:Tasks].join(:Task_list, :Tasks__id => :Task_list__Task_id).join(
36
52
  :Lists, :Lists__id => :Task_list__List_id).select(:Tasks__Task_number, :Tasks__Name,
37
- :Tasks__Completed).filter(:Lists__Name => Config[:working_list_name])
38
- tasks = tasks.order(:Task_number)
53
+ :Tasks__Completed, :Tasks__Priority).filter(:Lists__Name => Config[:working_list_name])
54
+ tasks = OPTIONS[:sort] == "n" ? tasks.order(:Task_number) : tasks.order(:Priority, :Task_number)
39
55
  list = DATABASE[:Lists][:Name=>Config[:working_list_name]]
40
56
  count = list.nil? ? 0 : list[:Total]
41
57
  completed_count = tasks.filter(:Completed=>1).count
58
+
59
+ priority = {
60
+ 0 => "**",
61
+ 1 => "*",
62
+ 2 => ""
63
+ }
64
+ #print out the header
42
65
  Config[:width].times do
43
66
  print "*".colorize(:light_red)
44
67
  end
@@ -52,23 +75,29 @@ module Todo
52
75
  end
53
76
  puts
54
77
  puts
78
+
79
+ #prints out incomplete tasks
55
80
  puts "Todo:".colorize(:light_green)
56
81
  tasks.each do |task|
57
82
  next if task[:Completed] == 1
58
- printf "%4d. ".to_s.colorize(:light_yellow), task[:Task_number]
59
- split_v = split task[:Name], Config[:width] - 6
83
+ printf "%2s".colorize(:light_magenta), priority[task[:Priority]]
84
+ printf "%3d. ".colorize(:light_yellow), task[:Task_number]
85
+ split_v = split task[:Name], Config[:width] - 7
60
86
  puts split_v[0]
61
87
  split_v.shift
62
88
  split_v.each do |line|
63
89
  printf " %s\n", line
64
90
  end
65
91
  end
92
+
93
+ #Prints out complete tasks
66
94
  print "\nCompleted:".colorize(:light_green)
67
95
  printf "%#{Config[:width]+4}s\n", "#{completed_count}/#{count}".colorize(:light_cyan)
68
96
  tasks.each do |task|
69
97
  next if task[:Completed] == 0
70
- printf "%4d. ".to_s.colorize(:light_yellow), task[:Task_number]
71
- split_v = split task[:Name], Config[:width]-6
98
+ printf "%2s".colorize(:light_magenta), priority[task[:Priority]]
99
+ printf "%3d. ".to_s.colorize(:light_yellow), task[:Task_number]
100
+ split_v = split task[:Name], Config[:width]-7
72
101
  puts split_v[0]
73
102
  split_v.shift
74
103
  split_v.each do |line|
@@ -83,26 +112,82 @@ module Todo
83
112
  OptionParser.new do |opts|
84
113
  version_path = File.expand_path("../../VERSION", File.dirname(__FILE__))
85
114
  opts.version = File.exist?(version_path) ? File.read(version_path) : ""
86
- opts.banner = "Usage: todo [COMMAND] [option] [arguments]"
87
- opts.separator "Commands:"
88
- opts.separator " create, switch <list name> creates a new list or switches to an existing one"
89
- opts.separator " <blank>, display, d displays the current list"
90
- opts.separator " add, a <task> adds the task to the current list"
91
- opts.separator " finish, f [option] <task> marks the task as completed"
92
- opts.separator " undo, u [option] <task> undos a completed task"
93
- opts.separator " clear [option] clears completed tasks"
94
- opts.separator " remove, rm <list name> removes the list completely (cannot undo)"
95
- opts.separator "Options: "
96
- opts.on('-n', 'with finish or undo, references a task by its number') do
115
+ opts.banner = "Todo: A simple command line todo application\n\n".colorize(:light_green) +
116
+ " usage:".colorize(:light_cyan) + " todo [COMMAND] [option] [arguments]".colorize(:light_red)
117
+ opts.separator ""
118
+ opts.separator "Commands:".colorize(:light_green)
119
+
120
+ #todo create, switch
121
+ opts.separator " *".colorize(:light_cyan) + " create, switch".colorize(:light_yellow) + " creates a new list or switches to an existing one".colorize(:light_magenta)
122
+ opts.separator " usage: ".colorize(:light_cyan) + USAGE[:create].colorize(:light_red)
123
+
124
+ # todo display, d
125
+ opts.separator ""
126
+ opts.separator " *".colorize(:light_cyan) + " display, d".colorize(:light_yellow) + " displays the current list".colorize(:light_magenta)
127
+ opts.separator " usage: ".colorize(:light_cyan) + USAGE[:display].colorize(:light_red)
128
+ opts.on('-s TYPE', [:p, :n], "sorts the task by ") do |s|
129
+ OPTIONS[:sort] = s
130
+ end
131
+
132
+ #todo add, a
133
+ opts.separator ""
134
+ opts.separator " *".colorize(:light_cyan) + " add, a".colorize(:light_yellow) + " adds the task to the current list".colorize(:light_magenta)
135
+ opts.separator " usage: ".colorize(:light_cyan) + USAGE[:add].colorize(:light_red)
136
+ opts.on('-p PRIORITY', ["high", "medium", "low"], 'set the priority of the task to one of the following.\n' +
137
+ ' Default is medium') do |p|
138
+ priorities = {
139
+ "high" => 0,
140
+ "medium" => 1,
141
+ "low" => 2
142
+ }
143
+ OPTIONS[:change_priority] = true
144
+ OPTIONS[:priority] = priorities[p]
145
+ end
146
+
147
+ #todo finish, f
148
+ opts.separator ""
149
+ opts.separator " *".colorize(:light_cyan) + " finish , f".colorize(:light_yellow) + " marks a task as finished".colorize(:light_magenta)
150
+ opts.separator " usage: ".colorize(:light_cyan) + USAGE[:finish].colorize(:light_red)
151
+ opts.on('-n', 'references a task by its number') do |n|
97
152
  OPTIONS[:is_num] = true
98
153
  end
99
- opts.on('-a', 'with clear, resets the entire list') do
154
+
155
+ #todo undo, u
156
+ opts.separator ""
157
+ opts.separator " *".colorize(:light_cyan) + " undo, u".colorize(:light_yellow) + " undos a completed task".colorize(:light_magenta)
158
+ opts.separator " usage: ".colorize(:light_cyan) + USAGE[:undo].colorize(:light_red)
159
+ opts.separator " -n references a task by its number"
160
+
161
+ #todo clear
162
+ opts.separator ""
163
+ opts.separator " *".colorize(:light_cyan) + " clear".colorize(:light_yellow) + " clears a completed tasks".colorize(:light_magenta)
164
+ opts.separator " usage: ".colorize(:light_cyan) + USAGE[:clear].colorize(:light_red)
165
+ opts.on('-a', 'resets the entire list') do
100
166
  OPTIONS[:clear_all] = true
101
167
  end
168
+
169
+ #todo remove, rm
170
+ opts.separator ""
171
+ opts.separator " *".colorize(:light_cyan) + " remove, rm".colorize(:light_yellow) + " removes the list completely.".colorize(:light_magenta)
172
+ opts.separator " usage: ".colorize(:light_cyan) + USAGE[:remove].colorize(:light_red)
173
+
174
+ #todo set, s
175
+ opts.separator ""
176
+ opts.separator " *".colorize(:light_cyan) + " set, s".colorize(:light_yellow) + " adds additional information to a task".colorize(:light_magenta)
177
+ opts.separator " usage: ".colorize(:light_cyan) + USAGE[:set].colorize(:light_red)
178
+ opts.separator " -p TYPE set the priority of the task to one of the following.\n" +
179
+ " Default is medium"
180
+ opts.separator " -n references a task by its number"
181
+
182
+ opts.separator ""
183
+ opts.separator "Other Options: ".colorize(:light_green)
184
+
185
+ #todo -h
102
186
  opts.on('-h', '--help', 'displays this screen' ) do
103
187
  puts opts
104
188
  exit
105
189
  end
190
+ #todo -w
106
191
  opts.on('-w', "displays the name of the current list") do
107
192
  if Config[:working_list_exists]
108
193
  puts "Working list is #{Config[:working_list_name]}"
@@ -112,6 +197,7 @@ module Todo
112
197
  end
113
198
  exit
114
199
  end
200
+
115
201
  end
116
202
  end
117
203
 
@@ -124,7 +210,7 @@ module Todo
124
210
  display
125
211
  else
126
212
  puts "Working List does not exist yet. Please create one"
127
- puts "todo create <list name>"
213
+ puts "Usage: #{USAGE[:create]}"
128
214
  end
129
215
  when "create", "switch"
130
216
  if ARGV.count > 0
@@ -135,34 +221,34 @@ module Todo
135
221
  puts
136
222
  display
137
223
  else
138
- puts "Usage: todo #{ARGV[0]} <listname>"
224
+ puts "Usage: #{USAGE[:create]}"
139
225
  end
140
226
  when "add", "a"
141
227
  if Config[:working_list_exists]
142
- ARGV.count > 1 ? Tasks.add(ARGV[1..-1].join(' ')) : puts("Usage: todo add <task name>")
228
+ ARGV.count > 1 ? Tasks.add(ARGV[1..-1].join(' '), OPTIONS[:priority]) : puts("Usage: #{USAGE[:add]}")
143
229
  puts
144
230
  display
145
231
  else
146
232
  puts "Working List does not exist yet. Please create one"
147
- puts "todo create <list name>"
233
+ puts "Usage: #{USAGE[:create]}"
148
234
  end
149
235
  when "finish", "f"
150
236
  if Config[:working_list_exists]
151
- ARGV.count > 1 ? Tasks.finish(ARGV[1..-1].join(' '), OPTIONS[:is_num]) : puts("Usage: todo finish <task name>")
237
+ ARGV.count > 1 ? Tasks.finish(ARGV[1..-1].join(' '), OPTIONS[:is_num]) : puts("Usage: #{USAGE[:finish]}")
152
238
  puts
153
239
  display
154
240
  else
155
241
  puts "Working List does not exist yet. Please create one"
156
- puts "todo create <list name>"
242
+ puts "Usage: #{USAGE[:create]}"
157
243
  end
158
244
  when "undo", "u"
159
245
  if Config[:working_list_exists]
160
- ARGV.count > 1 ? Tasks.undo(ARGV[1..-1].join(' '), OPTIONS[:is_num]) : puts("Usage: todo undo <task name>")
246
+ ARGV.count > 1 ? Tasks.undo(ARGV[1..-1].join(' '), OPTIONS[:is_num]) : puts("Usage: #{USAGE[:undo]}")
161
247
  puts
162
248
  display
163
249
  else
164
250
  puts "Working List does not exist yet. Please create one"
165
- puts "todo create <list name>"
251
+ puts "Usage: #{USAGE[:create]}"
166
252
  end
167
253
  when "clear"
168
254
  if Config[:working_list_exists]
@@ -171,14 +257,28 @@ module Todo
171
257
  display
172
258
  else
173
259
  puts "Working List does not exist yet. Please create one"
174
- puts "todo create <list name>"
260
+ puts "Usage: #{USAGE[:create]}"
175
261
  end
176
262
  when "remove", "r"
177
263
  if ARGV.count > 1
178
264
  Tasks.clear true, ARGV[1..-1].map{|word| word.capitalize}.join(' ')
179
265
  else
180
- puts "Usage todo remove <list name>"
266
+ puts "Usage: #{USAGE[:remove]}"
181
267
  end
268
+ when "set", "s"
269
+ if Config[:working_list_exists]
270
+ if ARGV.count > 1
271
+ if OPTIONS[:change_priority]
272
+ Tasks.set_priority OPTIONS[:priority], ARGV[1..-1].join(' '), OPTIONS[:is_num]
273
+ end
274
+ display
275
+ else
276
+ puts "Usage: #{USAGE[:set]}"
277
+ end
278
+ else
279
+ puts "Working List does not exist yet. Please create one"
280
+ puts "Usage: #{USAGE[:create]}"
281
+ end
182
282
  else
183
283
  puts "Invalid command. See todo -h for help."
184
284
  end
@@ -187,7 +287,7 @@ module Todo
187
287
  display
188
288
  else
189
289
  puts "Working List does not exist yet. Please create one"
190
- puts "todo create <list name>"
290
+ puts "Usage: #{USAGE[:create]}"
191
291
  end
192
292
  end
193
293
  end
@@ -198,7 +298,7 @@ module Todo
198
298
  begin
199
299
  optparse.parse!
200
300
  commands_parser
201
- rescue OptionParser::InvalidOption => e
301
+ rescue OptionParser::InvalidOption, OptionParser::InvalidArgument => e
202
302
  puts "#{e}. See todo -h for help."
203
303
  end
204
304
  end
@@ -239,5 +339,4 @@ module Todo
239
339
  end
240
340
 
241
341
  end
242
- end
243
-
342
+ end
@@ -0,0 +1,7 @@
1
+ require 'sequel'
2
+
3
+ Sequel.migration do
4
+ change do
5
+ add_column :Tasks, :Priority, :Integer, :default=>1
6
+ end
7
+ end
data/lib/to-do/tasks.rb CHANGED
@@ -3,21 +3,24 @@ module Todo
3
3
  # The module that contains methods for manipulating the database
4
4
  module Tasks
5
5
  extend self
6
+
7
+ # The Database
6
8
  DATABASE = Sequel.sqlite Todo::Config[:task_database]
7
9
 
8
10
  # Adds the tast to the list
9
11
  #
10
12
  # @param [String] task the task to add to the list
11
- def add task
13
+ # @param [Integer] priority the priority of the task
14
+ def add task, priority=1
12
15
  list = DATABASE[:Lists].select(:Total, :Id)[:Name=>Todo::Config[:working_list_name]]
13
16
  if !list
14
17
  DATABASE[:Lists] << {:Name => Config[:working_list_name], :Total => 0}
15
18
  list = DATABASE[:Lists].select(:Total, :Id)[:Name=>Todo::Config[:working_list_name]]
16
19
  end
17
20
  count = list[:Total]+1
18
- DATABASE[:Tasks] << {:Task_number => count, :Name => task, :Completed => 0}
21
+ DATABASE[:Tasks] << {:Task_number => count, :Name => task, :Completed => 0, :Priority => priority}
19
22
  list_id = list[:Id]
20
- task_id = DATABASE[:Tasks][:Name=>task][:Id]
23
+ task_id = DATABASE[:Tasks].with_sql("SELECT last_insert_rowid() FROM Tasks")
21
24
  DATABASE[:Task_list] << {:Task_id => task_id, :List_id => list_id}
22
25
  DATABASE[:Lists].filter(:Id => list_id).update(:Total => count)
23
26
  end
@@ -103,5 +106,33 @@ module Todo
103
106
  end
104
107
  end
105
108
  end
109
+
110
+ # Sets the priority of a task
111
+ #
112
+ # @param priority [Integer] the new priority
113
+ # @param tasks either a task number or a task name to change the priority of
114
+ # @param [Bool] is_num if the task param represents the task number, true.
115
+ # false if it is the task name
116
+ def set_priority priority, task, is_num
117
+ list_id = DATABASE[:Lists][:Name => Config[:working_list_name]][:Id]
118
+ names =DATABASE[:Tasks].join(:Task_list, :Tasks__Id => :Task_list__Task_Id).join(
119
+ :Lists, :Lists__Id => :Task_list__List_id).select(:Tasks__Id, :Tasks__Task_number,
120
+ :Tasks__Name).filter(:Lists__Name => Config[:working_list_name])
121
+ if is_num
122
+ found_task = names[:Task_number => task]
123
+ if found_task
124
+ DATABASE[:Tasks].filter(:Id => found_task[:Id]).update(:Priority => priority)
125
+ else
126
+ puts "Task ##{task} is not in the list."
127
+ end
128
+ else
129
+ found_task = names.with_sql("SELECT * FROM :table WHERE Name = :task COLLATE NOCASE",:table=>names, :task=>task).first
130
+ if found_task
131
+ DATABASE[:Tasks].filter(:Id => found_task[:Id]).update(:Priority => priority)
132
+ else
133
+ puts "Task '#{task}' is not in the list."
134
+ end
135
+ end
136
+ end
106
137
  end
107
138
  end
data/to-do.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "to-do"
8
- s.version = "1.2.7"
8
+ s.version = "1.3.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Kristen Mills"]
12
- s.date = "2012-07-27"
12
+ s.date = "2012-07-30"
13
13
  s.description = "A simple command line todo application"
14
14
  s.email = "kristen@kristen-mills.com"
15
15
  s.executables = ["todo"]
@@ -31,6 +31,7 @@ Gem::Specification.new do |s|
31
31
  "lib/to-do/config.rb",
32
32
  "lib/to-do/dbmigrations/001_create_tables.rb",
33
33
  "lib/to-do/dbmigrations/002_rename_name_column.rb",
34
+ "lib/to-do/dbmigrations/003_priorities.rb",
34
35
  "lib/to-do/old/list.rb",
35
36
  "lib/to-do/tasks.rb",
36
37
  "test/helper.rb",
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: to-do
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.7
4
+ version: 1.3.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-07-27 00:00:00.000000000 Z
12
+ date: 2012-07-30 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: shoulda
16
- requirement: &70314823379720 !ruby/object:Gem::Requirement
16
+ requirement: &70152148957820 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70314823379720
24
+ version_requirements: *70152148957820
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: sqlite3
27
- requirement: &70314823378420 !ruby/object:Gem::Requirement
27
+ requirement: &70152148957040 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70314823378420
35
+ version_requirements: *70152148957040
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: sequel
38
- requirement: &70314823376420 !ruby/object:Gem::Requirement
38
+ requirement: &70152148972400 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '3.12'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *70314823376420
46
+ version_requirements: *70152148972400
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: bundler
49
- requirement: &70314823405820 !ruby/object:Gem::Requirement
49
+ requirement: &70152148971900 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.0.0
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *70314823405820
57
+ version_requirements: *70152148971900
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: jeweler
60
- requirement: &70314823404800 !ruby/object:Gem::Requirement
60
+ requirement: &70152148971240 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: 1.8.4
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *70314823404800
68
+ version_requirements: *70152148971240
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: simplecov
71
- requirement: &70314823403820 !ruby/object:Gem::Requirement
71
+ requirement: &70152148970480 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: '0'
77
77
  type: :runtime
78
78
  prerelease: false
79
- version_requirements: *70314823403820
79
+ version_requirements: *70152148970480
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: colorize
82
- requirement: &70314823402360 !ruby/object:Gem::Requirement
82
+ requirement: &70152148969680 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: '0'
88
88
  type: :runtime
89
89
  prerelease: false
90
- version_requirements: *70314823402360
90
+ version_requirements: *70152148969680
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: yard
93
- requirement: &70314823401780 !ruby/object:Gem::Requirement
93
+ requirement: &70152148968700 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ! '>='
@@ -98,7 +98,7 @@ dependencies:
98
98
  version: '0'
99
99
  type: :development
100
100
  prerelease: false
101
- version_requirements: *70314823401780
101
+ version_requirements: *70152148968700
102
102
  description: A simple command line todo application
103
103
  email: kristen@kristen-mills.com
104
104
  executables:
@@ -121,6 +121,7 @@ files:
121
121
  - lib/to-do/config.rb
122
122
  - lib/to-do/dbmigrations/001_create_tables.rb
123
123
  - lib/to-do/dbmigrations/002_rename_name_column.rb
124
+ - lib/to-do/dbmigrations/003_priorities.rb
124
125
  - lib/to-do/old/list.rb
125
126
  - lib/to-do/tasks.rb
126
127
  - test/helper.rb
@@ -141,7 +142,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
141
142
  version: '0'
142
143
  segments:
143
144
  - 0
144
- hash: 2924756363788007628
145
+ hash: -4015950886949104978
145
146
  required_rubygems_version: !ruby/object:Gem::Requirement
146
147
  none: false
147
148
  requirements: