lazylead 0.8.0 → 0.8.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lazylead.gemspec +2 -2
- data/lib/lazylead/task/accuracy/accuracy.rb +3 -2
- data/lib/lazylead/task/svn/diff.rb +1 -1
- data/lib/lazylead/version.rb +1 -1
- data/readme.md +26 -18
- data/test/lazylead/task/accuracy/score_test.rb +27 -0
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 87d2b34214d533e7ffe2c819c2655d5cc7b273e68b8791641b4462c655d14216
|
4
|
+
data.tar.gz: 86cf9712d1a6a1992c9414c4578b2c4e6ae7806f378f42e2c37e38508ad6448d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d0c5f522f77a818edc4bcd8b571ce359b9e10f45df809ef6a17a5154fdda8eccb4104ee08d2ce69049f93f76b5ee0506003fad3faffeea59a3df61ad93f77f9e
|
7
|
+
data.tar.gz: d3b52a77f6346e88b87dca54a6827c69557968b18770305578ff78d3436be5c6484176d531175ea1860b1460df1ad33933e8454e692c6544f3f018dc49881e44
|
data/lazylead.gemspec
CHANGED
@@ -32,7 +32,7 @@ Gem::Specification.new do |s|
|
|
32
32
|
s.rubygems_version = "2.2"
|
33
33
|
s.required_ruby_version = ">=2.6.5"
|
34
34
|
s.name = "lazylead"
|
35
|
-
s.version = "0.8.
|
35
|
+
s.version = "0.8.1"
|
36
36
|
s.license = "MIT"
|
37
37
|
s.summary = "Eliminate the annoying work within bug-trackers."
|
38
38
|
s.description = "Ticketing systems (Github, Jira, etc.) are strongly
|
@@ -45,7 +45,7 @@ tasks instead of solving technical problems."
|
|
45
45
|
s.authors = ["Yurii Dubinka"]
|
46
46
|
s.email = "yurii.dubinka@gmail.com"
|
47
47
|
s.homepage = "http://github.com/dgroup/lazylead"
|
48
|
-
s.post_install_message = "Thanks for installing Lazylead v0.8.
|
48
|
+
s.post_install_message = "Thanks for installing Lazylead v0.8.1!
|
49
49
|
Read our blog posts: https://lazylead.org
|
50
50
|
Stay in touch with the community in Telegram: https://t.me/lazylead
|
51
51
|
Follow us on Twitter: https://twitter.com/lazylead
|
@@ -58,7 +58,7 @@ module Lazylead
|
|
58
58
|
|
59
59
|
# The ticket score based on fields content.
|
60
60
|
class Score
|
61
|
-
attr_reader :issue, :
|
61
|
+
attr_reader :issue, :score, :accuracy
|
62
62
|
|
63
63
|
def initialize(issue, opts)
|
64
64
|
@issue = issue
|
@@ -70,6 +70,7 @@ module Lazylead
|
|
70
70
|
def evaluate(digits = 2)
|
71
71
|
@score = @opts[:rules].select { |r| r.passed(@issue) }.sum(&:score)
|
72
72
|
@accuracy = (score / @opts[:total] * 100).round(digits)
|
73
|
+
self
|
73
74
|
end
|
74
75
|
|
75
76
|
# Post the comment with score and accuracy to the ticket.
|
@@ -88,7 +89,7 @@ module Lazylead
|
|
88
89
|
" (~{color:#{color}}#{@accuracy}%{color}), here are the reasons why:",
|
89
90
|
"|| Ticket requirement || Status || Field ||"
|
90
91
|
]
|
91
|
-
@rules.each do |r|
|
92
|
+
@opts[:rules].each do |r|
|
92
93
|
comment << "|#{r.desc}|#{r.passed(@issue) ? '(/)' : '(-)'}|#{r.field}|"
|
93
94
|
end
|
94
95
|
comment << docs_link
|
@@ -67,7 +67,7 @@ module Lazylead
|
|
67
67
|
File.delete(f)
|
68
68
|
end
|
69
69
|
rescue StandardError => e
|
70
|
-
@log.error "ll-010: Can't send an email
|
70
|
+
@log.error "ll-010: Can't send an email '#{opts['subject']}' to #{opts['to']} due to " \
|
71
71
|
"#{Backtrace.new(e)}'"
|
72
72
|
end
|
73
73
|
end
|
data/lib/lazylead/version.rb
CHANGED
data/readme.md
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
[![Hits-of-Code](https://hitsofcode.com/github/dgroup/lazylead)](https://hitsofcode.com/view/github/dgroup/lazylead)
|
8
8
|
[![License: MIT](https://img.shields.io/github/license/mashape/apistatus.svg)](./license.txt)
|
9
9
|
|
10
|
-
[![Build status circleci](https://circleci.com/gh/dgroup/lazylead.svg?style=shield)](https://circleci.com/gh/dgroup/lazylead)
|
10
|
+
[![Build status circleci](https://circleci.com/gh/dgroup/lazylead/tree/master.svg?style=shield)](https://circleci.com/gh/dgroup/lazylead/tree/master)
|
11
11
|
[![0pdd](http://www.0pdd.com/svg?name=dgroup/lazylead)](http://www.0pdd.com/p?name=dgroup/lazylead)
|
12
12
|
[![Dependency Status](https://requires.io/github/dgroup/lazylead/requirements.svg?branch=master)](https://requires.io/github/dgroup/lazylead/requirements/?branch=master)
|
13
13
|
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=dgroup_lazylead&metric=alert_status)](https://sonarcloud.io/dashboard?id=dgroup_lazylead)
|
@@ -30,23 +30,31 @@ I think you remember how [static code analysis](https://en.wikipedia.org/wiki/St
|
|
30
30
|
|
31
31
|
Join our telegram group [lazylead.org](https://t.me/lazyleads) for discussions.
|
32
32
|
|
33
|
-
| Daily annoying task | Jira | Github | Trello |
|
34
|
-
| :---------------------------------------------------------------------------------- | :---: | :----: | :----: |
|
35
|
-
| [Notify ticket's assignee](lib/lazylead/task/alert/alert.rb) | ✅ | ⌛ | ⌛ |
|
36
|
-
| [Notify ticket's reporter](lib/lazylead/task/alert/alert.rb) | ✅ | ⌛ | ⌛ |
|
37
|
-
| [Notify ticket's manager](lib/lazylead/task/alert/alert.rb) | ✅ | ⌛ | ⌛ |
|
38
|
-
| [Notify about illegal "Fix Version" modification](lib/lazylead/task/fix_version.rb) | ✅ | ❌ | ❌ |
|
39
|
-
| [Expected comment in ticket is missing](lib/lazylead/task/missing_comment.rb) | ✅ | ⌛ | ⌛ |
|
40
|
-
| [Propagate some fields from parent ticket into sub-tasks](.docs/propagate_down.md) | ✅ | ❌ | ❌ |
|
41
|
-
| [Evaluate the ticket formatting accuracy](.docs/accuracy.md) | ✅ | ⌛ | ⌛ |
|
42
|
-
| Print the current capacity of team into newly created tasks | ⌛ | ⌛ | ⌛ |
|
43
|
-
| Create/retrofit the defect automatically into latest release | ⌛ | ⌛ | ❌ |
|
44
|
-
| [Notify about expired(ing) due dates](.docs/duedate_expired.md) | ✅ | ❌ | ⌛ |
|
45
|
-
| Notify about absent original estimations | ⌛ | ⌛ | ⌛ |
|
46
|
-
| Notify about 'Hot potato' tickets | ⌛ | ⌛ | ⌛ |
|
47
|
-
| Notify about long live tickets (aging) | ⌛ | ⌛ | ⌛ |
|
48
|
-
|
|
49
|
-
|
|
33
|
+
| Daily annoying task | Jira | Github | Trello | SVN |
|
34
|
+
| :---------------------------------------------------------------------------------- | :---: | :----: | :----: | :----: |
|
35
|
+
| [Notify ticket's assignee](lib/lazylead/task/alert/alert.rb) | ✅ | ⌛ | ⌛ | ❌ |
|
36
|
+
| [Notify ticket's reporter](lib/lazylead/task/alert/alert.rb) | ✅ | ⌛ | ⌛ | ❌ |
|
37
|
+
| [Notify ticket's manager](lib/lazylead/task/alert/alert.rb) | ✅ | ⌛ | ⌛ | ❌ |
|
38
|
+
| [Notify about illegal "Fix Version" modification](lib/lazylead/task/fix_version.rb) | ✅ | ❌ | ❌ | ❌ |
|
39
|
+
| [Expected comment in ticket is missing](lib/lazylead/task/missing_comment.rb) | ✅ | ⌛ | ⌛ | ❌ |
|
40
|
+
| [Propagate some fields from parent ticket into sub-tasks](.docs/propagate_down.md) | ✅ | ❌ | ❌ | ❌ |
|
41
|
+
| [Evaluate the ticket formatting accuracy](.docs/accuracy.md) | ✅ | ⌛ | ⌛ | ❌ |
|
42
|
+
| Print the current capacity of team into newly created tasks | ⌛ | ⌛ | ⌛ | ❌ |
|
43
|
+
| Create/retrofit the defect automatically into latest release | ⌛ | ⌛ | ❌ | ❌ |
|
44
|
+
| [Notify about expired(ing) due dates](.docs/duedate_expired.md) | ✅ | ❌ | ⌛ | ❌ |
|
45
|
+
| Notify about absent original estimations | ⌛ | ⌛ | ⌛ | ❌ |
|
46
|
+
| Notify about 'Hot potato' tickets | ⌛ | ⌛ | ⌛ | ❌ |
|
47
|
+
| Notify about long live tickets (aging) | ⌛ | ⌛ | ⌛ | ❌ |
|
48
|
+
| Create a meeting(s) automatically in case some tickets appeared (group by assignee/reporters/component/ticket type/etc) | ⌛ | ⌛ | ⌛ | ❌ |
|
49
|
+
| Propogate fields from parent tickets to sub-tasks | ✅ | ⌛ | ⌛ | ❌ |
|
50
|
+
| Notify about tickets without comments with expected text | ✅ | ⌛ | ⌛ | ❌ |
|
51
|
+
| Notify about team loading (no tasks on teammates) | ✅ | ⌛ | ⌛ | ❌ |
|
52
|
+
| Notify about tickets matches predefined multiple conditions | ✅ | ⌛ | ⌛ | ❌ |
|
53
|
+
| Link automatically the ticket and Confluence page if link found in ticket's comments/description | ✅ | ⌛ | ⌛ | ❌ |
|
54
|
+
| Notify about tickets assigned to your team members not by effective managers| ✅ | ⌛ | ⌛ | ❌ |
|
55
|
+
| Notify about modifications of important files in VCS | ❌ | ⌛ | ❌ | ✅ |
|
56
|
+
| Notify about diff changes for past X period in VCS | ❌ | ⌛ | ❌ | ✅ |
|
57
|
+
| Notify about changes with some text for past X period in VCS | ❌ | ⌛ | ❌ | ✅ |
|
50
58
|
|
51
59
|
| Integration | Type | Status |
|
52
60
|
| :---------------------------------------------------- | :-----------: | :----: |
|
@@ -24,6 +24,7 @@
|
|
24
24
|
|
25
25
|
require_relative "../../../test"
|
26
26
|
require_relative "../../../../lib/lazylead/task/accuracy/accuracy"
|
27
|
+
require_relative "../../../../lib/lazylead/task/accuracy/affected_build"
|
27
28
|
|
28
29
|
module Lazylead
|
29
30
|
class ScoreTest < Lazylead::Test
|
@@ -42,5 +43,31 @@ module Lazylead
|
|
42
43
|
Lazylead::Score.new({}, {}).grade(k.to_s.to_f)
|
43
44
|
end
|
44
45
|
end
|
46
|
+
|
47
|
+
test "comment has proper structure" do
|
48
|
+
assert_words %w[triage accuracy is 100.0%],
|
49
|
+
Score.new(
|
50
|
+
Struct.new(:key) do
|
51
|
+
def reporter
|
52
|
+
OpenStruct.new(id: "userid")
|
53
|
+
end
|
54
|
+
|
55
|
+
def fields
|
56
|
+
{ "versions" => ["0.1.0"] }
|
57
|
+
end
|
58
|
+
end.new("DATAJDBC-493"),
|
59
|
+
Opts.new(
|
60
|
+
rules: [Lazylead::AffectedBuild.new],
|
61
|
+
total: 0.5,
|
62
|
+
"colors" => {
|
63
|
+
"0" => "#FF4F33",
|
64
|
+
"35" => "#FF9F33",
|
65
|
+
"57" => "#19DD1E",
|
66
|
+
"90" => "#0FA81A"
|
67
|
+
}.to_json.to_s,
|
68
|
+
"docs" => "https://github.com/dgroup/lazylead/blob/master/.github/ISSUE_TEMPLATE/bug_report.md"
|
69
|
+
)
|
70
|
+
).evaluate.comment
|
71
|
+
end
|
45
72
|
end
|
46
73
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lazylead
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Yurii Dubinka
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-03-
|
11
|
+
date: 2021-03-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -768,7 +768,7 @@ licenses:
|
|
768
768
|
- MIT
|
769
769
|
metadata: {}
|
770
770
|
post_install_message: |-
|
771
|
-
Thanks for installing Lazylead v0.8.
|
771
|
+
Thanks for installing Lazylead v0.8.1!
|
772
772
|
Read our blog posts: https://lazylead.org
|
773
773
|
Stay in touch with the community in Telegram: https://t.me/lazylead
|
774
774
|
Follow us on Twitter: https://twitter.com/lazylead
|