lazylead 0.8.0 → 0.8.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 422600b27880dd0aa96889f7fb8e2f55dc371ac8638dc7065d5e57bc8556aece
4
- data.tar.gz: 4c8fd293522b890072ef45af8fbefe5cce59594023a38e12ef275e5ef3453d90
3
+ metadata.gz: 87d2b34214d533e7ffe2c819c2655d5cc7b273e68b8791641b4462c655d14216
4
+ data.tar.gz: 86cf9712d1a6a1992c9414c4578b2c4e6ae7806f378f42e2c37e38508ad6448d
5
5
  SHA512:
6
- metadata.gz: 59932534b571e92e9c8877d365292de759081444ac629c7d59d9b09897519ca19043d6886afc45291df327af3e4eec2524e0019e159ad0564e270eeceb0cad8f
7
- data.tar.gz: cd6cdbe78ca38b738005fc91184e7fe4390276fcde446da0180f009d406d081cceb5e617ab62a76d9417559b071972d603a1b4adfbe4a70fba98b482d8f84ebf
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.0"
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.0!
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, :total, :score, :accuracy
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 for #{opts} due to " \
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
@@ -23,5 +23,5 @@
23
23
  # OR OTHER DEALINGS IN THE SOFTWARE.
24
24
 
25
25
  module Lazylead
26
- VERSION = "0.8.0"
26
+ VERSION = "0.8.1"
27
27
  end
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
- | Notify about tickets with invalid format (missing url/stacktrace, etc) | ⌛ | ⌛ | ⌛ |
49
- | Create a meeting(s) automatically in case some tickets appeared (group by assignee/reporters/component/ticket type/etc) | ⌛ | ⌛ | |
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.0
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-09 00:00:00.000000000 Z
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.0!
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