sly 0.1.2 → 0.2.3
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.
- checksums.yaml +8 -8
- data/bin/sly +11 -2
- data/lib/sly/connector.rb +3 -2
- data/lib/sly/gui.rb +4 -0
- data/lib/sly/item.rb +16 -11
- data/lib/sly/project.rb +13 -12
- data/lib/sly/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
NDZiY2I1MTdmOWM5MjhhN2MzNTUyODIwODE1ZjYwY2QxOTIzZGJkYQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
MjBhNWYzNGNjNmY4Zjc0MDhmZDQ0OWJhMDI1MWMwZjZkNDlhZDQyMA==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YTBlNDUyMDEzNjQ4YTU5OWQ0MjFkMTAwMmZmNDgxZWZkN2MzMjBiMTRlOTI2
|
10
|
+
OGU0NmYzYTE2YTQ3YmNjODRhNDRhMTAyZTg1MzIwODFjZjlkMjUzMzM5YTk2
|
11
|
+
ZTc4OTM0YmM3NWM0NjEyNjk0ZjM3MzljMzAwYjJlYmFjNjNiNWY=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
NGNkNDRhOTllYzA4ODViMDIzMGQwM2NlZmUwMzBmOTI5ZTlmN2EzY2IwZjll
|
14
|
+
ZWRjOTg2ZjBmZjRlMTdmYmNjMmNjYjQ3NWM0MzNiY2VjODQ5ZmRkMzAzYjM5
|
15
|
+
MTBmNGEyMjllZWM1M2ZjNmQ0YzllOTI3OGMwZDlkMjlkNTc0ZDg=
|
data/bin/sly
CHANGED
@@ -39,7 +39,7 @@ desc 'shows the current backlog for the project.'
|
|
39
39
|
command :backlog do |c|
|
40
40
|
c.action do |global_options,options,args|
|
41
41
|
project = Sly::Project.load(SLY_PROJECT)
|
42
|
-
project.update
|
42
|
+
project.update("backlog")
|
43
43
|
Sly::GUI.display_backlog(project)
|
44
44
|
end
|
45
45
|
end
|
@@ -48,11 +48,20 @@ desc 'shows the current in-progress for the project.'
|
|
48
48
|
command :current do |c|
|
49
49
|
c.action do |global_options,options,args|
|
50
50
|
project = Sly::Project.load(SLY_PROJECT)
|
51
|
-
project.update
|
51
|
+
project.update("in-progress")
|
52
52
|
Sly::GUI.display_current(project)
|
53
53
|
end
|
54
54
|
end
|
55
55
|
|
56
|
+
desc 'shows the complete items for the project.'
|
57
|
+
command :complete do |c|
|
58
|
+
c.action do |global_options,options,args|
|
59
|
+
project = Sly::Project.load(SLY_PROJECT)
|
60
|
+
project.update("completed")
|
61
|
+
Sly::GUI.display_complete(project)
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
56
65
|
arg_name 'id'
|
57
66
|
desc 'Setup git branch for the target story id'
|
58
67
|
long_desc %/
|
data/lib/sly/connector.rb
CHANGED
@@ -30,8 +30,9 @@ class Sly::Connector
|
|
30
30
|
perform_and_capture_response(request)
|
31
31
|
end
|
32
32
|
|
33
|
-
def items_for_product(id)
|
34
|
-
|
33
|
+
def items_for_product(id, status = nil)
|
34
|
+
status_request = "?status=#{status}" if status
|
35
|
+
request = authenticated_request(@api_url+"/products/#{id}/items.json#{status_request}")
|
35
36
|
perform_and_capture_response(request)
|
36
37
|
end
|
37
38
|
|
data/lib/sly/gui.rb
CHANGED
data/lib/sly/item.rb
CHANGED
@@ -5,7 +5,7 @@ class Sly::Item
|
|
5
5
|
TYPE_COLOR = { task: :black, test: :blue, defect: :red, feature: :green }
|
6
6
|
TYPES = { "task" => :task, "defect" => :defect, "story" => :feature, "test" => :test}
|
7
7
|
|
8
|
-
attr_accessor :number, :archived, :title, :score, :tags, :status, :type
|
8
|
+
attr_accessor :number, :archived, :title, :score, :tags, :status, :type, :assigned_to
|
9
9
|
|
10
10
|
def self.with_number(number)
|
11
11
|
begin
|
@@ -22,18 +22,19 @@ class Sly::Item
|
|
22
22
|
end
|
23
23
|
|
24
24
|
def initialize(item_attributes = {})
|
25
|
-
@number
|
26
|
-
@archived
|
27
|
-
@title
|
28
|
-
@score
|
29
|
-
@tags
|
30
|
-
@status
|
31
|
-
@type
|
25
|
+
@number = item_attributes["number"]
|
26
|
+
@archived = item_attributes["archived"]
|
27
|
+
@title = item_attributes["title"]
|
28
|
+
@score = item_attributes["score"]
|
29
|
+
@tags = item_attributes["tags"]
|
30
|
+
@status = item_attributes["status"]
|
31
|
+
@type = TYPES[item_attributes["type"]].to_sym
|
32
|
+
assign(item_attributes["assigned_to"])
|
32
33
|
end
|
33
34
|
|
34
35
|
def overview
|
35
|
-
quick_ref = "##{@number} - ".color(type_colour) + " #{@score} ".background(type_colour).color(:white)
|
36
|
-
self.prettify([quick_ref, @title.color(type_colour)].join("\n"),
|
36
|
+
quick_ref = "##{@number} - ".color(type_colour) + " #{@score} ".background(type_colour).color(:white) + " #{@assigned_to} ".color(type_colour)
|
37
|
+
self.prettify([quick_ref, @title.color(type_colour)].join("\n"), 64)+"\n"
|
37
38
|
end
|
38
39
|
|
39
40
|
alias_method :to_s, :overview
|
@@ -60,10 +61,14 @@ class Sly::Item
|
|
60
61
|
"#{self.type}/" + self.slug.slice(0, 60) + "-#{self.number}"
|
61
62
|
end
|
62
63
|
|
64
|
+
def assign(assigned_to)
|
65
|
+
@assigned_to = assigned_to ?
|
66
|
+
"#{assigned_to["first_name"]} #{assigned_to["last_name"][0]}." : "Unassigned"
|
67
|
+
end
|
68
|
+
|
63
69
|
private
|
64
70
|
|
65
71
|
def type_colour
|
66
72
|
TYPE_COLOR[@type]
|
67
73
|
end
|
68
|
-
|
69
74
|
end
|
data/lib/sly/project.rb
CHANGED
@@ -32,13 +32,14 @@ class Sly::Project
|
|
32
32
|
end
|
33
33
|
end
|
34
34
|
|
35
|
-
def update
|
35
|
+
def update(status = nil)
|
36
36
|
begin
|
37
|
-
download_child_items
|
38
|
-
save_child_items
|
39
|
-
rescue Exception
|
37
|
+
download_child_items(status)
|
38
|
+
save_child_items(status)
|
39
|
+
rescue Exception => e
|
40
|
+
puts e
|
40
41
|
puts " Failed to connect to the Sprint.ly service, using last known values. ".colour(:white).background(:red)
|
41
|
-
load_child_items
|
42
|
+
load_child_items(status)
|
42
43
|
end
|
43
44
|
end
|
44
45
|
|
@@ -51,23 +52,23 @@ class Sly::Project
|
|
51
52
|
end
|
52
53
|
|
53
54
|
def complete
|
54
|
-
@items.select { |item| item.status == "
|
55
|
+
@items.select { |item| item.status == "completed" }
|
55
56
|
end
|
56
57
|
|
57
58
|
private
|
58
59
|
|
59
|
-
def download_child_items
|
60
|
-
items = Sly::Connector.connect_with_defaults.items_for_product(@id)
|
60
|
+
def download_child_items(status)
|
61
|
+
items = Sly::Connector.connect_with_defaults.items_for_product(@id, status)
|
61
62
|
items.each { |item| @items << Sly::Item.new(item) }
|
62
63
|
end
|
63
64
|
|
64
|
-
def save_child_items
|
65
|
-
target_file = File.join(pwd, '.sly',
|
65
|
+
def save_child_items(status)
|
66
|
+
target_file = File.join(pwd, '.sly', "#{status}_items")
|
66
67
|
File.open(target_file, 'w') { |file| file.write @items.to_yaml }
|
67
68
|
end
|
68
69
|
|
69
|
-
def load_child_items
|
70
|
-
target_file = File.join(pwd, '.sly',
|
70
|
+
def load_child_items(status)
|
71
|
+
target_file = File.join(pwd, '.sly', "#{status}_items")
|
71
72
|
@items = YAML::load(File.open(target_file))
|
72
73
|
end
|
73
74
|
|
data/lib/sly/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sly
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Robert White
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-11-
|
11
|
+
date: 2013-11-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: curb
|