to-do 1.1.2 → 1.2.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/Gemfile CHANGED
@@ -7,8 +7,12 @@ source "http://rubygems.org"
7
7
  # Include everything needed to run rake, tests, features, etc.
8
8
  gem "shoulda", ">= 0"
9
9
  gem "rdoc", "~> 3.12"
10
+
10
11
  gem "bundler", "~> 1.0.0"
11
12
  gem "jeweler", "~> 1.8.4"
12
13
  gem "simplecov", ">= 0"
13
14
  gem "colorize", ">= 0"
14
15
 
16
+ group :development do
17
+ gem "yard", ">= 0"
18
+ end
data/README.md CHANGED
@@ -1,16 +1,12 @@
1
- #to-do 1.1.2
1
+ #to-do 1.2
2
2
 
3
3
  A simple command line todo application.
4
4
 
5
- ##What's new in 1.1.2
6
- * Bug fixes
7
5
 
8
- ##What's new in 1.1
9
- * Command shortcuts
10
- * Undo completing an item
11
- * Colored Display
12
- * Display list more often
13
- * Bug fixes
6
+ ##What's new in 1.2
7
+ * Remove a list
8
+ * Better usage messages
9
+ * Better documentation using YARD
14
10
 
15
11
  ##Install
16
12
  gem install to-do
@@ -24,6 +20,7 @@ A simple command line todo application.
24
20
  * Display list
25
21
  * Colored display
26
22
  * Undo completing
23
+ * Removelists
27
24
 
28
25
  ##How to Use
29
26
 
@@ -34,7 +31,7 @@ A simple command line todo application.
34
31
 
35
32
  ###Add some tasks to the current list
36
33
 
37
- todo add Cook dinner
34
+ todo add Cook Dinner
38
35
  todo add Write Paper
39
36
  todo a Do Laundy
40
37
  todo a Clean Things
@@ -45,7 +42,7 @@ A simple command line todo application.
45
42
  todo d
46
43
 
47
44
  ********************************
48
- * My New Todo List *
45
+ My New Todo List
49
46
  ********************************
50
47
 
51
48
  1. Cook Dinner
@@ -60,7 +57,7 @@ A simple command line todo application.
60
57
  todo f Clean Things
61
58
 
62
59
  ********************************
63
- * My New Todo List *
60
+ My New Todo List
64
61
  ********************************
65
62
 
66
63
  1. Cook Dinner
@@ -82,20 +79,28 @@ A simple command line todo application.
82
79
 
83
80
  todo clear -a
84
81
 
82
+ ###Delete a list
83
+
84
+ todo remove My New Todo List
85
+ todo rm My Existing list
86
+
85
87
  ###View usage details
86
88
 
87
89
  todo -h
88
90
  todo --help
89
91
 
90
- ###View verison
92
+ ###View version
91
93
  todo -v
92
94
  todo --version
93
95
 
94
96
  ##Future Plans
95
- * Delete list
96
97
  * Tags
97
98
  * Due Dates
98
99
  * Tab Completion
100
+ * YAML Record
101
+ * Sorting
102
+ * Priorites
103
+ * Reorganizing
99
104
 
100
105
  ##Contributing to to-do
101
106
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.2
1
+ 1.2.0
data/lib/to-do/cli.rb CHANGED
@@ -1,17 +1,40 @@
1
1
  require 'optparse'
2
2
  require 'yaml'
3
3
  require 'colorize'
4
- $data = ENV["HOME"]+"/.todo/lists/"
5
- $settings = ENV["HOME"]+"/.todo/config.yml"
6
4
 
7
- module Todo
8
- module CLI
5
+ module Todo
6
+ # CLI is the module that contains the methods to display the list as well as
7
+ # the methods to parse command line arguments.
8
+ module CLI
9
9
  extend self
10
- # Displays the given todo list
11
- WORKING_LIST=YAML.load_file(File.join(Config[:lists_directory],
12
- Config[:working_list_name]+'.yml')) if File.exists?(File.join(Config[:lists_directory],
13
- Config[:working_list_name]+'.yml'))
10
+ WORKING_LIST = ""
11
+ if File.exists?(File.join(Config[:lists_directory], Config[:working_list_name]+'.yml'))
12
+ # The current working list
13
+ WORKING_LIST=YAML.load_file(File.join(Config[:lists_directory], Config[:working_list_name]+'.yml'))
14
+ end
15
+
16
+ # The option flags
17
+ OPTIONS = {
18
+ :is_num => false,
19
+ :clear_all => false
20
+ }
14
21
 
22
+ # Displays the list in a human readable form:
23
+ #
24
+ # @example
25
+ # ********************************
26
+ # List name
27
+ # ********************************
28
+ #
29
+ # Todo:
30
+ # 1. Task 1
31
+ # 2. Task 2
32
+ #
33
+ # Completed: 2/4
34
+ # 3. Task 3
35
+ # 4. Task 4
36
+ #
37
+ # @param [List] list the list you want to display.
15
38
  def display list = WORKING_LIST
16
39
  puts "********************************".colorize(:light_red)
17
40
  puts list.name.center(32).colorize(:light_cyan)
@@ -31,13 +54,9 @@ module Todo
31
54
  puts
32
55
  end
33
56
 
34
- #use option parser to parse command line arguments
35
- def parse
36
- options = {
37
- :is_num => false,
38
- :clear_all => false
39
- }
40
- optparse = OptionParser.new do |opts|
57
+ # Helper method for parsing the options using OptionParser
58
+ def option_parser
59
+ OptionParser.new do |opts|
41
60
  version_path = File.expand_path("../../VERSION", File.dirname(__FILE__))
42
61
  opts.version = File.exist?(version_path) ? File.read(version_path) : ""
43
62
  opts.banner = "Usage: todo [COMMAND] [option] [arguments]"
@@ -47,36 +66,60 @@ module Todo
47
66
  opts.separator " finish, f [option] <task> marks the task as completed"
48
67
  opts.separator " clear [option] clears completed tasks"
49
68
  opts.separator " undo, u [option] <task> undos a completed task"
50
- opts.separator " create, switch <list_name> creates a new list or switches to an existing one"
69
+ opts.separator " create, switch <list name> creates a new list or switches to an existing one"
70
+ opts.separator " remove, rm <list name> removes the list completely (cannot undo)"
51
71
  opts.separator "Options: "
52
72
  opts.on('-n', 'with finish or undo, references a task by its number') do
53
- options[:is_num] = true
73
+ OPTIONS[:is_num] = true
54
74
  end
55
75
  opts.on('-a', 'with clear, resets the entire list') do
56
- options[:clear_all] = true
76
+ OPTIONS[:clear_all] = true
57
77
  end
58
78
  opts.on('-h', '--help', 'displays this screen' ) do
59
79
  puts opts
60
- return
80
+ exit
61
81
  end
62
82
  opts.on('-w', "displays the name of the current list") do
63
83
  puts "Working list is #{WORKING_LIST.name}"
64
- return
84
+ exit
65
85
  end
66
86
  end
67
- optparse.parse!
87
+ end
88
+
89
+ # Helper method for parsing commands.
90
+ def commands_parser
68
91
  if ARGV.count > 0
69
92
  case ARGV[0]
70
93
  when "add", "a"
71
- ARGV.count > 1 ? WORKING_LIST.add(ARGV[1..-1].join(' ')) : puts("Invalid Command")
72
- self.display
94
+ if Config[:working_list_exists]
95
+ ARGV.count > 1 ? WORKING_LIST.add(ARGV[1..-1].join(' ')) : puts("Usage: todo add <task name>")
96
+ display
97
+ else
98
+ puts "Working List does not exist yet. Please create one"
99
+ puts "todo create <list name>"
100
+ end
73
101
  when "finish", "f"
74
- WORKING_LIST.finish ARGV[1..-1].join(' '), options[:is_num]
75
- self.display
102
+ if Config[:working_list_exists]
103
+ WORKING_LIST.finish ARGV[1..-1].join(' '), OPTIONS[:is_num]
104
+ display
105
+ else
106
+ puts "Working List does not exist yet. Please create one"
107
+ puts "todo create <list name>"
108
+ end
76
109
  when "clear"
77
- WORKING_LIST.clear options[:clear_all]
110
+ if Config[:working_list_exists]
111
+ WORKING_LIST.clear OPTIONS[:clear_all]
112
+ else
113
+ puts "Working List does not exist yet. Please create one"
114
+ puts "todo create <list name>"
115
+ end
78
116
  when "display", "d"
79
- self.display
117
+ if Config[:working_list_exists]
118
+ display
119
+ else
120
+ puts "Working List does not exist yet. Please create one"
121
+ puts "todo create <list name>"
122
+ end
80
123
  when "create", "switch"
81
124
  if File.exists?(File.join(Config[:lists_directory], ARGV[1..-1].join('_').downcase + '.yml'))
82
125
  Config[:working_list_name] = ARGV[1..-1].join('_').downcase
@@ -84,24 +127,45 @@ module Todo
84
127
  new_list = YAML.load_file(File.join(Config[:lists_directory],
85
128
  Config[:working_list_name]+'.yml')) if File.exists?(File.join(Config[:lists_directory],
86
129
  Config[:working_list_name]+'.yml'))
87
- self.display new_list
130
+ display new_list
88
131
  else
89
- ARGV.count > 1 ? List.new(ARGV[1..-1].join(' ')) : puts("Invalid Command")
132
+ ARGV.count > 1 ? List.new(ARGV[1..-1].join(' ')) : puts("Usage: todo create <list_name> ")
90
133
  new_list = YAML.load_file(File.join(Config[:lists_directory],
91
134
  Config[:working_list_name]+'.yml')) if File.exists?(File.join(Config[:lists_directory],
92
135
  Config[:working_list_name]+'.yml'))
93
- self.display new_list
136
+ display new_list
94
137
  end
95
138
  when "undo", "u"
96
- WORKING_LIST.undo ARGV[1..-1].join(' '), options[:is_num]
97
- self.display
139
+ if Config[:working_list_exists]
140
+ WORKING_LIST.undo ARGV[1..-1].join(' '), OPTIONS[:is_num]
141
+ display
142
+ else
143
+ puts "Working List does not exist yet. Please create one"
144
+ puts "todo create <list name>"
145
+ end
146
+ when "remove", "r"
147
+ if ARGV.count > 1
148
+ List.remove ARGV[1..-1].join(' ')
149
+ end
98
150
  else
99
- puts "Invalid Command"
151
+ puts "Invalid command. See todo -h for help."
100
152
  end
101
153
  else
102
- #if no ARGs are given, do what "display" would do
103
- self.display
154
+ if Config[:working_list_exists]
155
+ display
156
+ else
157
+ puts "Working List does not exist yet. Please create one"
158
+ puts "todo create <list name>"
159
+ end
104
160
  end
105
161
  end
162
+
163
+ # Parses the commands and options
164
+ def parse
165
+ optparse = option_parser
166
+ optparse.parse!
167
+ commands_parser
168
+ end
169
+
106
170
  end
107
171
  end
data/lib/to-do/config.rb CHANGED
@@ -1,29 +1,47 @@
1
1
  require 'yaml'
2
- # The module that monitors the config.
3
- # similar to SSam Goldstein's config.rb for time trap
4
- # https://github.com/samg/timetrap/
2
+
5
3
  module Todo
4
+ # The module that contains the methods relevant to configurations and custom
5
+ # configuration in config.yml
6
+ #
7
+ # similar to Sam Goldstein's config.rb for timetrap
8
+ # @see https://github.com/samg/timetrap/
6
9
  module Config
7
10
  extend self
11
+ # The path to the the config file
8
12
  PATH = File.join(ENV['HOME'], '.to-do', 'config.yml')
9
13
 
10
- #default values
14
+ # Default config key value pairs
15
+ #
16
+ # @return [Hash<Symbol,Object>] the default configurations in a hash
11
17
  def defaults
12
18
  {
13
19
  # the location of all all your list yaml files
14
20
  :lists_directory => File.join(ENV["HOME"],".to-do","lists"),
15
21
  # the current working list
16
- :working_list_name => "default_list"
22
+ :working_list_name => "default_list",
23
+ # does the working list actually exist
24
+ :working_list_exists => false
17
25
  }
18
26
  end
19
27
 
20
- #accessor for values in the config
28
+ # Overloading [] operator
29
+ #
30
+ # Accessor for values in the config
31
+ #
32
+ # @param [Symbol] key the key in the config hash
33
+ # @return [Object] the value associated with that key
21
34
  def [] key
22
35
  fileval = YAML.load_file PATH
23
36
  defaults.merge(fileval)[key]
24
37
  end
25
38
 
26
- #setter for keys in config
39
+ # Overloading []= operator
40
+ #
41
+ # Setter for values in the Config hash
42
+ #
43
+ # @param [Symbol] key the key you are setting a value for
44
+ # @param [Object] value the value you associated with the key
27
45
  def []= key, value
28
46
  fileval = YAML.load_file PATH
29
47
  configs = defaults.merge(fileval)
@@ -33,7 +51,7 @@ module Todo
33
51
  end
34
52
  end
35
53
 
36
- #writes the config file path
54
+ # Writes the configs to the file config.yml
37
55
  def write
38
56
  configs = if File.exist? PATH
39
57
  defaults.merge(YAML.load_file PATH)
data/lib/to-do/list.rb CHANGED
@@ -1,11 +1,15 @@
1
1
  require 'yaml'
2
2
  require File.join(File.dirname(__FILE__), 'config')
3
-
3
+ require 'fileutils'
4
4
  module Todo
5
+
6
+ # The Class that represents a list of tasks
5
7
  class List
6
8
  attr_accessor :tasks, :completed_tasks, :count, :completed_count, :name
7
9
 
8
- #Create a new list
10
+ # Creates a new list and sets it to be the working list
11
+ #
12
+ # @param [String] name the name of the list
9
13
  def initialize name
10
14
  @tasks = Hash.new
11
15
  @completed_tasks = Hash.new
@@ -17,11 +21,12 @@ module Todo
17
21
  end
18
22
  update
19
23
  Config[:working_list_name] = name.downcase.gsub(/ /, '_')
24
+ Config[:working_list_exists] = true
20
25
  Config.write
21
26
  puts "Created List #{name}."
22
27
  end
23
28
 
24
- # updates the yaml
29
+ # Updates the yaml file
25
30
  def update
26
31
  path = File.join(Config[:lists_directory], @name.downcase.gsub(/ /, '_') +'.yml')
27
32
  File.open(path, 'w') do |fh|
@@ -29,7 +34,9 @@ module Todo
29
34
  end
30
35
  end
31
36
 
32
- # adds the tast to the list
37
+ # Adds the tast to the list
38
+ #
39
+ # @param [String] task the task to add to the list
33
40
  def add task
34
41
  @count+=1
35
42
  @tasks[@count] = task
@@ -38,7 +45,12 @@ module Todo
38
45
  end
39
46
 
40
47
  # finish the task. task is either a case insensitive task on the list or
41
- # the task number
48
+ # the task number. Prints out either the task is not in the list or that i
49
+ # succesfully finished the task
50
+ #
51
+ # @param task either a task number or task name to finish
52
+ # @param [Bool] is_num if the task param represents the task number, true.
53
+ # false if it is the task name
42
54
  def finish task, is_num
43
55
  if is_num
44
56
  if !@tasks[task.to_i].nil?
@@ -69,6 +81,13 @@ module Todo
69
81
  update
70
82
  end
71
83
 
84
+ # undos finishing a task. task is either a case insensitive task on the list or
85
+ # the task number. Prints out either the task is not in the list or that i
86
+ # succesfully undoed finished the task
87
+ #
88
+ # @param task either a task number or task name to finish
89
+ # @param [Bool] is_num if the task param represents the task number, true.
90
+ # false if it is the task name
72
91
  def undo task, is_num
73
92
  if is_num
74
93
  if !@completed_tasks[task.to_i].nil?
@@ -99,13 +118,16 @@ module Todo
99
118
  update
100
119
  end
101
120
 
102
- #clears the completed tasks
121
+ # clears just the completed tasks
103
122
  def clear_completed
104
123
  @completed_tasks = Hash.new
105
124
  update
106
125
  end
107
126
 
108
- #clears all of the tasks and resets the count to 0
127
+ # clears the task in the list
128
+ #
129
+ # @param [Bool] clear_all if true, clears all completed and uncompleted tasks
130
+ # and resets the count. if false, just clears the completed tasks
109
131
  def clear clear_all
110
132
  clear_completed
111
133
  if clear_all
@@ -118,6 +140,22 @@ module Todo
118
140
  end
119
141
  update
120
142
  end
143
+
144
+ # Class method that removes a list from the your lists.
145
+ #
146
+ # @param [string] name name of the list that you are trying to remove
147
+ def self.remove name
148
+ underscore_name = name.downcase.gsub(/ /, '_')
149
+ begin
150
+ FileUtils.rm File.join(Config[:lists_directory], underscore_name +'.yml')
151
+ puts "Removed list #{name}"
152
+ rescue
153
+ puts "List doesn't exist"
154
+ end
155
+ if underscore_name == Config[:working_list_name]
156
+ Config[:working_list_exists] = false
157
+ end
158
+ end
121
159
  end
122
160
  end
123
161
 
data/lib/to-do.rb CHANGED
@@ -1,9 +1,15 @@
1
+ require 'rdoc'
1
2
  require File.join(File.dirname(__FILE__), 'to-do', 'config')
2
3
  require File.join(File.dirname(__FILE__), 'to-do', 'list')
3
4
  if !File.exists?(File.join(ENV['HOME'], '.to-do'))
4
5
  Dir.mkdir(File.join(ENV['HOME'], '.to-do'))
5
6
  Todo::Config.write
6
7
  Dir.mkdir(Todo::Config[:lists_directory])
7
- Todo::List.new "Default List"
8
+ #Todo::List.new "Default List"
8
9
  end
9
10
  require File.join(File.dirname(__FILE__), 'to-do', 'cli')
11
+
12
+ # Todo is the main namespace that all of the other modules and classes are a
13
+ # part of
14
+ module Todo
15
+ end
data/test/test_to-do.rb CHANGED
@@ -65,7 +65,7 @@ class TestToDo < Test::Unit::TestCase
65
65
  end
66
66
 
67
67
  teardown do
68
- #remove list when I create that functionality
68
+ Todo::List.remove "Test List"
69
69
  Todo::Config[:working_list_name] = @list_name
70
70
  end
71
71
  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.1.2"
8
+ s.version = "1.2.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-14"
12
+ s.date = "2012-07-15"
13
13
  s.description = "A simple command line todo application"
14
14
  s.email = "kristen@kristen-mills.com"
15
15
  s.executables = ["todo"]
@@ -20,7 +20,6 @@ Gem::Specification.new do |s|
20
20
  s.files = [
21
21
  ".document",
22
22
  "Gemfile",
23
- "Gemfile.lock",
24
23
  "LICENSE.txt",
25
24
  "README.md",
26
25
  "Rakefile",
@@ -50,6 +49,7 @@ Gem::Specification.new do |s|
50
49
  s.add_runtime_dependency(%q<jeweler>, ["~> 1.8.4"])
51
50
  s.add_runtime_dependency(%q<simplecov>, [">= 0"])
52
51
  s.add_runtime_dependency(%q<colorize>, [">= 0"])
52
+ s.add_development_dependency(%q<yard>, [">= 0"])
53
53
  else
54
54
  s.add_dependency(%q<shoulda>, [">= 0"])
55
55
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
@@ -57,6 +57,7 @@ Gem::Specification.new do |s|
57
57
  s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
58
58
  s.add_dependency(%q<simplecov>, [">= 0"])
59
59
  s.add_dependency(%q<colorize>, [">= 0"])
60
+ s.add_dependency(%q<yard>, [">= 0"])
60
61
  end
61
62
  else
62
63
  s.add_dependency(%q<shoulda>, [">= 0"])
@@ -65,6 +66,7 @@ Gem::Specification.new do |s|
65
66
  s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
66
67
  s.add_dependency(%q<simplecov>, [">= 0"])
67
68
  s.add_dependency(%q<colorize>, [">= 0"])
69
+ s.add_dependency(%q<yard>, [">= 0"])
68
70
  end
69
71
  end
70
72
 
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.1.2
4
+ version: 1.2.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-14 00:00:00.000000000 Z
12
+ date: 2012-07-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: shoulda
16
- requirement: &70122750458400 !ruby/object:Gem::Requirement
16
+ requirement: &70154354563460 !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: *70122750458400
24
+ version_requirements: *70154354563460
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rdoc
27
- requirement: &70122750457900 !ruby/object:Gem::Requirement
27
+ requirement: &70154354562980 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '3.12'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70122750457900
35
+ version_requirements: *70154354562980
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: bundler
38
- requirement: &70122750457400 !ruby/object:Gem::Requirement
38
+ requirement: &70154354562500 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 1.0.0
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *70122750457400
46
+ version_requirements: *70154354562500
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: jeweler
49
- requirement: &70122750456700 !ruby/object:Gem::Requirement
49
+ requirement: &70154354586060 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.8.4
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *70122750456700
57
+ version_requirements: *70154354586060
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: simplecov
60
- requirement: &70122750455960 !ruby/object:Gem::Requirement
60
+ requirement: &70154354585580 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '0'
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *70122750455960
68
+ version_requirements: *70154354585580
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: colorize
71
- requirement: &70122750455260 !ruby/object:Gem::Requirement
71
+ requirement: &70154354585100 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,7 +76,18 @@ dependencies:
76
76
  version: '0'
77
77
  type: :runtime
78
78
  prerelease: false
79
- version_requirements: *70122750455260
79
+ version_requirements: *70154354585100
80
+ - !ruby/object:Gem::Dependency
81
+ name: yard
82
+ requirement: &70154354584620 !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ! '>='
86
+ - !ruby/object:Gem::Version
87
+ version: '0'
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: *70154354584620
80
91
  description: A simple command line todo application
81
92
  email: kristen@kristen-mills.com
82
93
  executables:
@@ -88,7 +99,6 @@ extra_rdoc_files:
88
99
  files:
89
100
  - .document
90
101
  - Gemfile
91
- - Gemfile.lock
92
102
  - LICENSE.txt
93
103
  - README.md
94
104
  - Rakefile
@@ -116,7 +126,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
116
126
  version: '0'
117
127
  segments:
118
128
  - 0
119
- hash: 3550105451253750040
129
+ hash: 3446128004627456738
120
130
  required_rubygems_version: !ruby/object:Gem::Requirement
121
131
  none: false
122
132
  requirements:
data/Gemfile.lock DELETED
@@ -1,35 +0,0 @@
1
- GEM
2
- remote: http://rubygems.org/
3
- specs:
4
- colorize (0.5.8)
5
- git (1.2.5)
6
- jeweler (1.8.4)
7
- bundler (~> 1.0)
8
- git (>= 1.2.5)
9
- rake
10
- rdoc
11
- json (1.7.3)
12
- multi_json (1.3.6)
13
- rake (0.9.2.2)
14
- rdoc (3.12)
15
- json (~> 1.4)
16
- shoulda (3.0.1)
17
- shoulda-context (~> 1.0.0)
18
- shoulda-matchers (~> 1.0.0)
19
- shoulda-context (1.0.0)
20
- shoulda-matchers (1.0.0)
21
- simplecov (0.6.4)
22
- multi_json (~> 1.0)
23
- simplecov-html (~> 0.5.3)
24
- simplecov-html (0.5.3)
25
-
26
- PLATFORMS
27
- ruby
28
-
29
- DEPENDENCIES
30
- bundler (~> 1.0.0)
31
- colorize
32
- jeweler (~> 1.8.4)
33
- rdoc (~> 3.12)
34
- shoulda
35
- simplecov