tlog 0.1.8 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MjQxMzhmZjExNjQzMWZlNTZiM2ZlNmRmODk5Yjg5MGMwNGJjMjYzMA==
4
+ MWY4Y2M1ZmFlOGRmOTUzMzVjMDY0MmZiZTIyMzAyOTAzYjY3ZGE0OA==
5
5
  data.tar.gz: !binary |-
6
- NzNjMTY3N2Q5MjJjMDM1ZWUzNDM2MWIwOGNkYTk5MjMxNGNkMjRiMw==
6
+ NDExZWNlMzcxY2Y1YTkwYmI4MTU4MWQ3ZjJiNGViOTEwNWFjMDYzNg==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- YmUwODg3YWRlNThlNThmNTVmNmMyMjhmYTEwMjNmNWNiYWY4MzM2MTM4ODA4
10
- ODkwMTJmYjAxOWNhMzg4NDZhYzQyMWJkZjU5MjU3NjdlMGY1MDAwYjg2MTEw
11
- MWZkOTJlYzQ2NDUxNWUzNjM2NTcyMWJlZjQ3ZTQ2MDRjMTE1MDY=
9
+ MzNiMzZiODgzY2QyOTc3NWY3MzU3MmIwY2U0YmUyNmQ4NTQzNGMyYmY0ZDE5
10
+ NTA3ODkzMzYxYTVmMTVkMGM2MjllNzQ4OTRiNGZjMzUzODk3YWNhOTNlY2Fj
11
+ NGMxNzllMjdlOWJhYzk4Mjk0Y2Q3YzhiNjhhNjQ5MjcyZGFhYjY=
12
12
  data.tar.gz: !binary |-
13
- Y2RkNmQxNmE3NjY2MWNiZGM0OGVjZDE5MTY2NWRmZmE1MGM4NjM1Yzk0OTVm
14
- MDJjZDIwNjRhODMwOTgwODYxMjUxMzE0MDhjMjE5OTUzOTZhZTllNDVlNWVm
15
- ODQ1YmQzOWNkYWM2ZDBlODE0MWRkZjEzMDU5N2FiNjg5ODY4YmU=
13
+ M2M1ZWVlZjI2YjljZGIzNTFhNjNlYjgyZDNmYTQwZjQ1NDA0NDY5NmMzNGI0
14
+ MTdmMzFiZDQ5ZjFjMGMwY2MxNjFmNWU3NGRmZTI2NjEyOTc5OTkzMDdlZjQ4
15
+ MTU4ZjIwNzgzNGFiYTk1NzNmMTcyYzI0ODM2M2M4ZjJiMDA2MTU=
data/TODO CHANGED
@@ -1,5 +1,4 @@
1
- -Pause command: You can pause a the current entry in a specific time log. Use case: I'm working on a time log, want to pause the entry I'm working on, commit, push to my coworker who can resume the entry and finish it or whatever
2
- -tlog stop should figure out what the time log the last entry was on
3
- -tests
4
- -rakefile
5
- -time zones....
1
+ - tests
2
+ - rakefile
3
+ - time zones....
4
+ - display update speicifc states, points values, owners. goal times
data/lib/tlog.rb CHANGED
@@ -1,6 +1,6 @@
1
1
 
2
2
  module Tlog
3
- Version = "0.0.0"
3
+ Version = "0.2.0"
4
4
 
5
5
  module Storage
6
6
  end
@@ -12,6 +12,7 @@ class Tlog::Command::Checkout < Tlog::Command
12
12
  def execute(input, output)
13
13
  raise Tlog::Error::CommandInvalid, "Must specify log name" unless input.args[0]
14
14
  checkout(input.args[0])
15
+ output.line("Checked-out log '#{input.args[0]}'");
15
16
  end
16
17
 
17
18
  def options(parser, options)
@@ -14,8 +14,8 @@ class Tlog::Command::Create < Tlog::Command
14
14
 
15
15
  log = Tlog::Entity::Log.new
16
16
  log.name = input.args[0];
17
- log.goal = ChronicDuration.parse(input.options[:goal]) if input.options[:goal]
18
- create_log(log)
17
+ create_log(log, input.options)
18
+ output.line("Created log '#{log.name}'")
19
19
  end
20
20
 
21
21
  def options(parser, options)
@@ -24,13 +24,21 @@ class Tlog::Command::Create < Tlog::Command
24
24
  parser.on("-g", "--goal <goal_length>") do |goal|
25
25
  options[:goal] = goal
26
26
  end
27
+
28
+ parser.on("-s", "--state <initial_state>") do |state|
29
+ options[:state] = state
30
+ end
31
+
32
+ parser.on("-p", "--points <initial_points_value>") do |points|
33
+ options[:points] = points
34
+ end
27
35
  end
28
36
 
29
37
  private
30
38
 
31
- def create_log(log)
39
+ def create_log(log, options)
32
40
  storage.in_branch do |wd|
33
- raise Tlog::Error::CommandInvalid, "Time log '#{log.name}' already exists" unless storage.create_log(log)
41
+ raise Tlog::Error::CommandInvalid, "Time log '#{log.name}' already exists" unless storage.create_log(log, options)
34
42
  end
35
43
  end
36
44
  end
@@ -10,6 +10,7 @@ class Tlog::Command::Delete < Tlog::Command
10
10
 
11
11
  def execute(input, output)
12
12
  raise Tlog::Error::CommandInvalid, "Task does not exist" unless delete(input.args[0])
13
+ output.line("Deleted log '#{input.args[0]}'")
13
14
  end
14
15
 
15
16
  def options(parser, options)
@@ -26,11 +26,15 @@ class Tlog::Command::Display < Tlog::Command
26
26
 
27
27
  def display(log_name, length_threshold, output)
28
28
  storage.in_branch do |wd|
29
- if log_name
30
- display_log(log_name, length_threshold, output)
29
+ if storage.all_log_dirs
30
+ if log_name
31
+ display_log(log_name, length_threshold, output)
32
+ else
33
+ display_all(length_threshold, output)
34
+ end
31
35
  else
32
- display_all(length_threshold, output)
33
- end
36
+ output.line("No time logs yet");
37
+ end
34
38
  end
35
39
  end
36
40
 
@@ -11,7 +11,8 @@ class Tlog::Command::Owner < Tlog::Command
11
11
 
12
12
  def execute(input, output)
13
13
  new_owner = input.args[0]
14
- change_owner(new_owner)
14
+ updated_log = change_owner(new_owner)
15
+ output.line("Changed owner of '#{updated_log.name}' to #{new_owner}")
15
16
  end
16
17
 
17
18
  def options(parser, options)
@@ -27,6 +28,7 @@ class Tlog::Command::Owner < Tlog::Command
27
28
  log = storage.require_log(checked_out_log)
28
29
  raise Tlog::Error::TimeLogNotFound, "Time log '#{checked_out_log}' does not exist" unless log
29
30
  storage.change_log_owner(log, new_owner)
31
+ log
30
32
  end
31
33
  end
32
34
  end
@@ -11,7 +11,8 @@ class Tlog::Command::Points < Tlog::Command
11
11
 
12
12
  def execute(input, output)
13
13
  new_points_value = input.args[0]
14
- change_state(new_points_value)
14
+ update_log = change_state(new_points_value)
15
+ output.line("Changed points of '#{updated_log.name}' to #{new_points_value}")
15
16
  end
16
17
 
17
18
  def options(parser, options)
@@ -27,6 +28,7 @@ class Tlog::Command::Points < Tlog::Command
27
28
  log = storage.require_log(checked_out_log)
28
29
  raise Tlog::Error::TimeLogNotFound, "Time log '#{checked_out_log}' does not exist" unless log
29
30
  storage.change_log_points(log, points)
31
+ log
30
32
  end
31
33
  end
32
34
  end
@@ -10,7 +10,8 @@ class Tlog::Command::Start < Tlog::Command
10
10
  end
11
11
 
12
12
  def execute(input, output)
13
- start(input.options[:description])
13
+ updated_log = start(input.options[:description])
14
+ output.line("Started '#{updated_log.name}'")
14
15
  end
15
16
 
16
17
  def options(parser, options)
@@ -32,6 +33,7 @@ class Tlog::Command::Start < Tlog::Command
32
33
  unless storage.start_log(log, entry_description)
33
34
  raise Tlog::Error::CommandInvalid, "Time log '#{checked_out_log}' is already in progress"
34
35
  end
36
+ log
35
37
  end
36
38
  end
37
39
  end
@@ -11,7 +11,8 @@ class Tlog::Command::State < Tlog::Command
11
11
 
12
12
  def execute(input, output)
13
13
  new_state = input.args[0]
14
- change_state(new_state)
14
+ updated_log = change_state(new_state)
15
+ output.line("Changed state of '#{updated_log.name}' to #{new_state}")
15
16
  end
16
17
 
17
18
  def options(parser, options)
@@ -27,6 +28,7 @@ class Tlog::Command::State < Tlog::Command
27
28
  log = storage.require_log(checked_out_log)
28
29
  raise Tlog::Error::TimeLogNotFound, "Time log '#{checked_out_log}' does not exist" unless log
29
30
  storage.change_log_state(log, new_state)
31
+ log
30
32
  end
31
33
  end
32
34
  end
@@ -9,7 +9,8 @@ class Tlog::Command::Stop < Tlog::Command
9
9
  end
10
10
 
11
11
  def execute(input, output)
12
- stop
12
+ updated_log = stop
13
+ output.line("Stopped '#{updated_log.name}'")
13
14
  end
14
15
 
15
16
  def options(parser, options)
@@ -27,6 +28,7 @@ class Tlog::Command::Stop < Tlog::Command
27
28
  unless storage.stop_log(log)
28
29
  raise Tlog::Error::CommandInvalid, "Failed to stop log '#{checked_out_log}': This time log is not in progress"
29
30
  end
31
+ log
30
32
  end
31
33
  end
32
34
 
@@ -17,10 +17,13 @@ class Tlog::Entity::Log
17
17
 
18
18
  def create(options)
19
19
  unless Dir.exists?(@path)
20
- FileUtils.mkdir_p(@path)
20
+ # Default time log attribute values
21
21
  state = 'open'
22
22
  points = 0
23
- owner = 'none'
23
+ owner = 'none'
24
+
25
+ FileUtils.mkdir_p(@path)
26
+ @goal = ChronicDuration.parse(options[:goal]) if options[:goal]
24
27
  state = options[:state] if options[:state]
25
28
  points = options[:points] if options[:point]
26
29
  owner = options[:owner] if options[:owner]
@@ -9,7 +9,6 @@ class Tlog::Storage::Disk
9
9
 
10
10
  def initialize(git_dir)
11
11
  @git = Git.open(find_repo(git_dir))
12
- # Format class?
13
12
  proj_path = @git.dir.path.downcase.gsub(/[^a-z0-9]+/i, '-')
14
13
 
15
14
  @tlog_dir = '~/.tlog'
@@ -35,6 +34,7 @@ class Tlog::Storage::Disk
35
34
 
36
35
  def create_log(log, options = {})
37
36
  log.path = log_path(log.name)
37
+ options[:owner] = cur_user
38
38
  if log.create(options)
39
39
  git.add
40
40
  git.commit("Created log '#{log.name}'")
@@ -64,7 +64,7 @@ class Tlog::Storage::Disk
64
64
  end
65
65
 
66
66
  def require_log(log_name)
67
- decode_log_path(Pathname.new(log_path(log_name)))
67
+ decode_log_path(Pathname.new(log_path(log_name))) if logs_path
68
68
  end
69
69
 
70
70
  def start_log(log, entry_description)
@@ -175,7 +175,7 @@ class Tlog::Storage::Disk
175
175
  end
176
176
 
177
177
  def all_log_dirs
178
- Pathname.new(logs_path).children.select { |c| c.directory? }
178
+ Pathname.new(logs_path).children.select { |c| c.directory? } if Dir.exists?(logs_path)
179
179
  end
180
180
 
181
181
  # Code from 'ticgit', temporarily switches to tlog branch
data/tlog.gemspec CHANGED
@@ -1,9 +1,12 @@
1
+ $:.push File.expand_path("../lib", __FILE__)
2
+
3
+ # Used for Tlog::Version
4
+ require 'tlog'
1
5
 
2
6
  Gem::Specification.new do |spec|
3
7
 
4
8
  spec.name = "tlog"
5
- spec.version = "0.1.8"
6
- spec.date = "2013-06-04"
9
+ spec.version = Tlog::Version
7
10
 
8
11
  spec.required_ruby_version = ">=1.9.3"
9
12
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tlog
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Wendel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-06-04 00:00:00.000000000 Z
11
+ date: 2013-06-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: commander