git-lint 6.2.1 → 7.0.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.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/README.adoc +234 -104
- data/git-lint.gemspec +12 -12
- data/lib/git/lint/analyzer.rb +8 -4
- data/lib/git/lint/analyzers/abstract.rb +3 -3
- data/lib/git/lint/analyzers/commit_author_capitalization.rb +1 -1
- data/lib/git/lint/analyzers/commit_body_bullet_capitalization.rb +1 -1
- data/lib/git/lint/analyzers/commit_body_bullet_delimiter.rb +1 -1
- data/lib/git/lint/analyzers/{commit_body_single_bullet.rb → commit_body_bullet_only.rb} +4 -4
- data/lib/git/lint/analyzers/commit_body_phrase.rb +2 -5
- data/lib/git/lint/analyzers/commit_body_presence.rb +3 -3
- data/lib/git/lint/analyzers/commit_body_tracker_shorthand.rb +2 -2
- data/lib/git/lint/analyzers/commit_body_word_repeat.rb +31 -0
- data/lib/git/lint/analyzers/commit_signature.rb +2 -2
- data/lib/git/lint/analyzers/commit_subject_prefix.rb +3 -3
- data/lib/git/lint/analyzers/commit_subject_suffix.rb +2 -2
- data/lib/git/lint/analyzers/commit_subject_word_repeat.rb +20 -0
- data/lib/git/lint/analyzers/commit_trailer_collaborator_capitalization.rb +2 -2
- data/lib/git/lint/analyzers/commit_trailer_collaborator_email.rb +3 -4
- data/lib/git/lint/analyzers/commit_trailer_collaborator_key.rb +4 -6
- data/lib/git/lint/analyzers/commit_trailer_collaborator_name.rb +2 -2
- data/lib/git/lint/analyzers/commit_trailer_format_key.rb +4 -6
- data/lib/git/lint/analyzers/commit_trailer_format_value.rb +4 -4
- data/lib/git/lint/analyzers/commit_trailer_issue_key.rb +4 -6
- data/lib/git/lint/analyzers/commit_trailer_issue_value.rb +4 -4
- data/lib/git/lint/analyzers/commit_trailer_milestone_key.rb +33 -0
- data/lib/git/lint/analyzers/commit_trailer_milestone_value.rb +35 -0
- data/lib/git/lint/analyzers/commit_trailer_order.rb +38 -0
- data/lib/git/lint/analyzers/commit_trailer_reviewer_key.rb +33 -0
- data/lib/git/lint/analyzers/commit_trailer_reviewer_value.rb +35 -0
- data/lib/git/lint/analyzers/commit_trailer_signer_capitalization.rb +2 -2
- data/lib/git/lint/analyzers/commit_trailer_signer_email.rb +3 -4
- data/lib/git/lint/analyzers/commit_trailer_signer_key.rb +4 -4
- data/lib/git/lint/analyzers/commit_trailer_signer_name.rb +2 -2
- data/lib/git/lint/analyzers/commit_trailer_tracker_key.rb +4 -6
- data/lib/git/lint/analyzers/commit_trailer_tracker_value.rb +4 -4
- data/lib/git/lint/commits/{systems → hosts}/circle_ci.rb +2 -2
- data/lib/git/lint/commits/{systems → hosts}/container.rb +2 -2
- data/lib/git/lint/commits/{systems → hosts}/git_hub_action.rb +2 -2
- data/lib/git/lint/commits/{systems → hosts}/import.rb +1 -1
- data/lib/git/lint/commits/{systems → hosts}/local.rb +2 -2
- data/lib/git/lint/commits/{systems → hosts}/netlify_ci.rb +2 -2
- data/lib/git/lint/commits/loader.rb +6 -6
- data/lib/git/lint/configuration/contract.rb +19 -11
- data/lib/git/lint/configuration/defaults.yml +43 -22
- data/lib/git/lint/configuration/model.rb +19 -11
- data/lib/git/lint/configuration/trailer.rb +10 -0
- data/lib/git/lint/container.rb +28 -6
- data/lib/git/lint/errors/severity.rb +6 -1
- data/lib/git/lint/kit/filter_list.rb +9 -4
- data/lib/git/lint/reporters/branch.rb +5 -5
- data/lib/git/lint/validators/name.rb +2 -2
- data/lib/git/lint/validators/repeated_word.rb +36 -0
- data.tar.gz.sig +0 -0
- metadata +40 -35
- metadata.gz.sig +0 -0
- data/lib/git/lint/analyzers/commit_body_bullet.rb +0 -34
@@ -0,0 +1,35 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Git
|
4
|
+
module Lint
|
5
|
+
module Analyzers
|
6
|
+
# Analyzes commit trailer reviewer value.
|
7
|
+
class CommitTrailerReviewerValue < Abstract
|
8
|
+
include Import[setting: "trailers.reviewer"]
|
9
|
+
|
10
|
+
def valid? = affected_commit_trailers.empty?
|
11
|
+
|
12
|
+
def issue
|
13
|
+
return {} if valid?
|
14
|
+
|
15
|
+
{
|
16
|
+
hint: "Use: #{filter_list.to_usage "or"}.",
|
17
|
+
lines: affected_commit_trailers
|
18
|
+
}
|
19
|
+
end
|
20
|
+
|
21
|
+
protected
|
22
|
+
|
23
|
+
def load_filter_list
|
24
|
+
Kit::FilterList.new configuration.commits_trailer_reviewer_value_includes
|
25
|
+
end
|
26
|
+
|
27
|
+
def invalid_line? trailer
|
28
|
+
trailer.key.match?(setting.pattern) && !trailer.value.match?(value_pattern)
|
29
|
+
end
|
30
|
+
|
31
|
+
def value_pattern = /\A#{Regexp.union filter_list}\Z/
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -6,7 +6,7 @@ module Git
|
|
6
6
|
# Analyzes commit trailer signer name capitalization.
|
7
7
|
class CommitTrailerSignerCapitalization < Abstract
|
8
8
|
include Import[
|
9
|
-
|
9
|
+
setting: "trailers.signer",
|
10
10
|
parser: "parsers.person",
|
11
11
|
validator: "validators.capitalization"
|
12
12
|
]
|
@@ -26,7 +26,7 @@ module Git
|
|
26
26
|
|
27
27
|
def invalid_line? trailer
|
28
28
|
parser.call(trailer.value).then do |person|
|
29
|
-
trailer.key.match?(pattern) && !validator.call(person.name)
|
29
|
+
trailer.key.match?(setting.pattern) && !validator.call(person.name)
|
30
30
|
end
|
31
31
|
end
|
32
32
|
end
|
@@ -6,9 +6,8 @@ module Git
|
|
6
6
|
# Analyzes commit trailer signer email address format.
|
7
7
|
class CommitTrailerSignerEmail < Abstract
|
8
8
|
include Import[
|
9
|
-
|
9
|
+
setting: "trailers.signer",
|
10
10
|
parser: "parsers.person",
|
11
|
-
sanitizer: "sanitizers.email",
|
12
11
|
validator: "validators.email"
|
13
12
|
]
|
14
13
|
|
@@ -26,8 +25,8 @@ module Git
|
|
26
25
|
protected
|
27
26
|
|
28
27
|
def invalid_line? trailer
|
29
|
-
email =
|
30
|
-
trailer.key.match?(pattern) && !validator.call(email)
|
28
|
+
email = parser.call(trailer.value).email
|
29
|
+
trailer.key.match?(setting.pattern) && !validator.call(email)
|
31
30
|
end
|
32
31
|
|
33
32
|
private
|
@@ -5,7 +5,7 @@ module Git
|
|
5
5
|
module Analyzers
|
6
6
|
# Analyzes commit trailer signer key usage.
|
7
7
|
class CommitTrailerSignerKey < Abstract
|
8
|
-
include Import[
|
8
|
+
include Import[setting: "trailers.signer"]
|
9
9
|
|
10
10
|
def valid? = affected_commit_trailers.empty?
|
11
11
|
|
@@ -13,7 +13,7 @@ module Git
|
|
13
13
|
return {} if valid?
|
14
14
|
|
15
15
|
{
|
16
|
-
hint: "Use format: #{filter_list.
|
16
|
+
hint: "Use format: #{filter_list.to_usage}.",
|
17
17
|
lines: affected_commit_trailers
|
18
18
|
}
|
19
19
|
end
|
@@ -21,12 +21,12 @@ module Git
|
|
21
21
|
protected
|
22
22
|
|
23
23
|
def load_filter_list
|
24
|
-
Kit::FilterList.new
|
24
|
+
Kit::FilterList.new setting.name
|
25
25
|
end
|
26
26
|
|
27
27
|
def invalid_line? trailer
|
28
28
|
trailer.key.then do |key|
|
29
|
-
key.match?(pattern) && !key.match?(/\A#{Regexp.union filter_list
|
29
|
+
key.match?(setting.pattern) && !key.match?(/\A#{Regexp.union filter_list}\Z/)
|
30
30
|
end
|
31
31
|
end
|
32
32
|
end
|
@@ -6,7 +6,7 @@ module Git
|
|
6
6
|
# Analyzes commit trailer signer name construction.
|
7
7
|
class CommitTrailerSignerName < Abstract
|
8
8
|
include Import[
|
9
|
-
|
9
|
+
setting: "trailers.signer",
|
10
10
|
parser: "parsers.person",
|
11
11
|
validator: "validators.name"
|
12
12
|
]
|
@@ -26,7 +26,7 @@ module Git
|
|
26
26
|
|
27
27
|
def invalid_line? trailer
|
28
28
|
parser.call(trailer.value).then do |person|
|
29
|
-
trailer.key.match?(pattern) && !validator.call(person.name, minimum:)
|
29
|
+
trailer.key.match?(setting.pattern) && !validator.call(person.name, minimum:)
|
30
30
|
end
|
31
31
|
end
|
32
32
|
|
@@ -5,7 +5,7 @@ module Git
|
|
5
5
|
module Analyzers
|
6
6
|
# Analyzes commit trailer tracker key usage.
|
7
7
|
class CommitTrailerTrackerKey < Abstract
|
8
|
-
include Import[
|
8
|
+
include Import[setting: "trailers.tracker"]
|
9
9
|
|
10
10
|
def valid? = affected_commit_trailers.empty?
|
11
11
|
|
@@ -13,20 +13,18 @@ module Git
|
|
13
13
|
return {} if valid?
|
14
14
|
|
15
15
|
{
|
16
|
-
hint: "Use format: #{filter_list.
|
16
|
+
hint: "Use format: #{filter_list.to_usage}.",
|
17
17
|
lines: affected_commit_trailers
|
18
18
|
}
|
19
19
|
end
|
20
20
|
|
21
21
|
protected
|
22
22
|
|
23
|
-
def load_filter_list
|
24
|
-
Kit::FilterList.new configuration.commits_trailer_tracker_key_includes
|
25
|
-
end
|
23
|
+
def load_filter_list = Kit::FilterList.new setting.name
|
26
24
|
|
27
25
|
def invalid_line? trailer
|
28
26
|
trailer.key.then do |key|
|
29
|
-
key.match?(pattern) && !key.match?(/\A#{Regexp.union filter_list
|
27
|
+
key.match?(setting.pattern) && !key.match?(/\A#{Regexp.union filter_list}\Z/)
|
30
28
|
end
|
31
29
|
end
|
32
30
|
end
|
@@ -5,7 +5,7 @@ module Git
|
|
5
5
|
module Analyzers
|
6
6
|
# Analyzes commit trailer tracker value.
|
7
7
|
class CommitTrailerTrackerValue < Abstract
|
8
|
-
include Import[
|
8
|
+
include Import[setting: "trailers.tracker"]
|
9
9
|
|
10
10
|
def valid? = affected_commit_trailers.empty?
|
11
11
|
|
@@ -13,7 +13,7 @@ module Git
|
|
13
13
|
return {} if valid?
|
14
14
|
|
15
15
|
{
|
16
|
-
hint: "Use format: #{filter_list.
|
16
|
+
hint: "Use format: #{filter_list.to_usage}.",
|
17
17
|
lines: affected_commit_trailers
|
18
18
|
}
|
19
19
|
end
|
@@ -25,10 +25,10 @@ module Git
|
|
25
25
|
end
|
26
26
|
|
27
27
|
def invalid_line? trailer
|
28
|
-
trailer.key.match?(pattern) && !trailer.value.match?(value_pattern)
|
28
|
+
trailer.key.match?(setting.pattern) && !trailer.value.match?(value_pattern)
|
29
29
|
end
|
30
30
|
|
31
|
-
def value_pattern = /\A#{Regexp.union filter_list
|
31
|
+
def value_pattern = /\A#{Regexp.union filter_list}\Z/
|
32
32
|
end
|
33
33
|
end
|
34
34
|
end
|
@@ -5,8 +5,8 @@ require "dry/container"
|
|
5
5
|
module Git
|
6
6
|
module Lint
|
7
7
|
module Commits
|
8
|
-
module
|
9
|
-
# Provides a single container with application and
|
8
|
+
module Hosts
|
9
|
+
# Provides a single container with application and host specific dependencies.
|
10
10
|
module Container
|
11
11
|
extend Dry::Container::Mixin
|
12
12
|
|
@@ -3,8 +3,8 @@
|
|
3
3
|
module Git
|
4
4
|
module Lint
|
5
5
|
module Commits
|
6
|
-
module
|
7
|
-
# Provides Netlify CI
|
6
|
+
module Hosts
|
7
|
+
# Provides Netlify CI feature branch information.
|
8
8
|
class NetlifyCI
|
9
9
|
include Git::Lint::Import[:git, :environment]
|
10
10
|
|
@@ -1,13 +1,13 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require "refinements/
|
3
|
+
require "refinements/string"
|
4
4
|
|
5
5
|
module Git
|
6
6
|
module Lint
|
7
7
|
module Commits
|
8
|
-
# Automatically detects and loads
|
8
|
+
# Automatically detects and loads host.
|
9
9
|
class Loader
|
10
|
-
include
|
10
|
+
include Hosts::Import[
|
11
11
|
:circle_ci,
|
12
12
|
:git,
|
13
13
|
:git_hub_action,
|
@@ -16,18 +16,18 @@ module Git
|
|
16
16
|
:environment
|
17
17
|
]
|
18
18
|
|
19
|
-
using
|
19
|
+
using Refinements::String
|
20
20
|
|
21
21
|
def call
|
22
22
|
message = "Invalid repository. Are you within a Git repository?"
|
23
23
|
fail Errors::Base, message unless git.exist?
|
24
24
|
|
25
|
-
|
25
|
+
host.call
|
26
26
|
end
|
27
27
|
|
28
28
|
private
|
29
29
|
|
30
|
-
def
|
30
|
+
def host
|
31
31
|
if key? "CIRCLECI" then circle_ci
|
32
32
|
elsif key? "GITHUB_ACTIONS" then git_hub_action
|
33
33
|
elsif key? "NETLIFY" then netlify_ci
|
@@ -16,15 +16,15 @@ module Git
|
|
16
16
|
required(:commits_author_name_enabled).filled :bool
|
17
17
|
required(:commits_author_name_severity).filled :string
|
18
18
|
required(:commits_author_name_minimum).filled :integer
|
19
|
-
required(:commits_body_bullet_enabled).filled :bool
|
20
|
-
required(:commits_body_bullet_severity).filled :string
|
21
|
-
required(:commits_body_bullet_excludes).array :string
|
22
19
|
required(:commits_body_bullet_capitalization_enabled).filled :bool
|
23
20
|
required(:commits_body_bullet_capitalization_severity).filled :string
|
24
21
|
required(:commits_body_bullet_capitalization_includes).array :string
|
25
22
|
required(:commits_body_bullet_delimiter_enabled).filled :bool
|
26
23
|
required(:commits_body_bullet_delimiter_severity).filled :string
|
27
24
|
required(:commits_body_bullet_delimiter_includes).array :string
|
25
|
+
required(:commits_body_bullet_only_enabled).filled :bool
|
26
|
+
required(:commits_body_bullet_only_severity).filled :string
|
27
|
+
required(:commits_body_bullet_only_includes).array :string
|
28
28
|
required(:commits_body_leading_line_enabled).filled :bool
|
29
29
|
required(:commits_body_leading_line_severity).filled :string
|
30
30
|
required(:commits_body_line_length_enabled).filled :bool
|
@@ -38,9 +38,8 @@ module Git
|
|
38
38
|
required(:commits_body_presence_enabled).filled :bool
|
39
39
|
required(:commits_body_presence_severity).filled :string
|
40
40
|
required(:commits_body_presence_minimum).filled :integer
|
41
|
-
required(:
|
42
|
-
required(:
|
43
|
-
required(:commits_body_single_bullet_includes).array :string
|
41
|
+
required(:commits_body_word_repeat_enabled).filled :bool
|
42
|
+
required(:commits_body_word_repeat_severity).filled :string
|
44
43
|
required(:commits_body_tracker_shorthand_enabled).filled :bool
|
45
44
|
required(:commits_body_tracker_shorthand_severity).filled :string
|
46
45
|
required(:commits_body_tracker_shorthand_excludes).array :string
|
@@ -57,13 +56,14 @@ module Git
|
|
57
56
|
required(:commits_subject_suffix_enabled).filled :bool
|
58
57
|
required(:commits_subject_suffix_severity).filled :string
|
59
58
|
required(:commits_subject_suffix_excludes).array :string
|
59
|
+
required(:commits_subject_word_repeat_enabled).filled :bool
|
60
|
+
required(:commits_subject_word_repeat_severity).filled :string
|
60
61
|
required(:commits_trailer_collaborator_capitalization_enabled).filled :bool
|
61
62
|
required(:commits_trailer_collaborator_capitalization_severity).filled :string
|
62
63
|
required(:commits_trailer_collaborator_email_enabled).filled :bool
|
63
64
|
required(:commits_trailer_collaborator_email_severity).filled :string
|
64
65
|
required(:commits_trailer_collaborator_key_enabled).filled :bool
|
65
66
|
required(:commits_trailer_collaborator_key_severity).filled :string
|
66
|
-
required(:commits_trailer_collaborator_key_includes).array :string
|
67
67
|
required(:commits_trailer_collaborator_name_enabled).filled :bool
|
68
68
|
required(:commits_trailer_collaborator_name_severity).filled :string
|
69
69
|
required(:commits_trailer_collaborator_name_minimum).filled :integer
|
@@ -71,29 +71,37 @@ module Git
|
|
71
71
|
required(:commits_trailer_duplicate_severity).filled :string
|
72
72
|
required(:commits_trailer_format_key_enabled).filled :bool
|
73
73
|
required(:commits_trailer_format_key_severity).filled :string
|
74
|
-
required(:commits_trailer_format_key_includes).array :string
|
75
74
|
required(:commits_trailer_format_value_enabled).filled :bool
|
76
75
|
required(:commits_trailer_format_value_severity).filled :string
|
77
76
|
required(:commits_trailer_format_value_includes).array :string
|
78
77
|
required(:commits_trailer_issue_key_enabled).filled :bool
|
79
78
|
required(:commits_trailer_issue_key_severity).filled :string
|
80
|
-
required(:commits_trailer_issue_key_includes).array :string
|
81
79
|
required(:commits_trailer_issue_value_enabled).filled :bool
|
82
80
|
required(:commits_trailer_issue_value_severity).filled :string
|
83
81
|
required(:commits_trailer_issue_value_includes).array :string
|
82
|
+
required(:commits_trailer_milestone_key_enabled).filled :bool
|
83
|
+
required(:commits_trailer_milestone_key_severity).filled :string
|
84
|
+
required(:commits_trailer_milestone_value_enabled).filled :bool
|
85
|
+
required(:commits_trailer_milestone_value_severity).filled :string
|
86
|
+
required(:commits_trailer_milestone_value_includes).array :string
|
87
|
+
required(:commits_trailer_order_enabled).filled :bool
|
88
|
+
required(:commits_trailer_order_severity).filled :string
|
89
|
+
required(:commits_trailer_reviewer_key_enabled).filled :bool
|
90
|
+
required(:commits_trailer_reviewer_key_severity).filled :string
|
91
|
+
required(:commits_trailer_reviewer_value_enabled).filled :bool
|
92
|
+
required(:commits_trailer_reviewer_value_severity).filled :string
|
93
|
+
required(:commits_trailer_reviewer_value_includes).array :string
|
84
94
|
required(:commits_trailer_signer_capitalization_enabled).filled :bool
|
85
95
|
required(:commits_trailer_signer_capitalization_severity).filled :string
|
86
96
|
required(:commits_trailer_signer_email_enabled).filled :bool
|
87
97
|
required(:commits_trailer_signer_email_severity).filled :string
|
88
98
|
required(:commits_trailer_signer_key_enabled).filled :bool
|
89
99
|
required(:commits_trailer_signer_key_severity).filled :string
|
90
|
-
required(:commits_trailer_signer_key_includes).array :string
|
91
100
|
required(:commits_trailer_signer_name_enabled).filled :bool
|
92
101
|
required(:commits_trailer_signer_name_severity).filled :string
|
93
102
|
required(:commits_trailer_signer_name_minimum).filled :integer
|
94
103
|
required(:commits_trailer_tracker_key_enabled).filled :bool
|
95
104
|
required(:commits_trailer_tracker_key_severity).filled :string
|
96
|
-
required(:commits_trailer_tracker_key_includes).array :string
|
97
105
|
required(:commits_trailer_tracker_value_enabled).filled :bool
|
98
106
|
required(:commits_trailer_tracker_value_severity).filled :string
|
99
107
|
required(:commits_trailer_tracker_value_includes).array :string
|
@@ -11,22 +11,24 @@ commits:
|
|
11
11
|
severity: error
|
12
12
|
minimum: 2
|
13
13
|
body:
|
14
|
-
|
14
|
+
bullet_capitalization:
|
15
15
|
enabled: true
|
16
16
|
severity: error
|
17
|
-
|
17
|
+
includes:
|
18
|
+
- "\\-"
|
18
19
|
- "\\*"
|
19
|
-
|
20
|
-
bullet_capitalization:
|
20
|
+
bullet_delimiter:
|
21
21
|
enabled: true
|
22
22
|
severity: error
|
23
23
|
includes:
|
24
24
|
- "\\-"
|
25
|
-
|
25
|
+
- "\\*"
|
26
|
+
bullet_only:
|
26
27
|
enabled: true
|
27
28
|
severity: error
|
28
29
|
includes:
|
29
30
|
- "\\-"
|
31
|
+
- "\\*"
|
30
32
|
leading_line:
|
31
33
|
enabled: true
|
32
34
|
severity: warn
|
@@ -47,6 +49,7 @@ commits:
|
|
47
49
|
- "along the lines"
|
48
50
|
- "at this moment in time"
|
49
51
|
- "basically"
|
52
|
+
- "blacklist"
|
50
53
|
- "each and every one"
|
51
54
|
- "everyone knows"
|
52
55
|
- "fact of the matter"
|
@@ -61,6 +64,7 @@ commits:
|
|
61
64
|
- "really"
|
62
65
|
- "simply"
|
63
66
|
- "things being equal"
|
67
|
+
- "whitelist"
|
64
68
|
- "would like to"
|
65
69
|
- "\\beasy\\b"
|
66
70
|
- "\\bjust\\b"
|
@@ -71,11 +75,6 @@ commits:
|
|
71
75
|
enabled: true
|
72
76
|
severity: warn
|
73
77
|
minimum: 1
|
74
|
-
single_bullet:
|
75
|
-
enabled: true
|
76
|
-
severity: error
|
77
|
-
includes:
|
78
|
-
- "\\-"
|
79
78
|
tracker_shorthand:
|
80
79
|
enabled: true
|
81
80
|
severity: error
|
@@ -83,6 +82,9 @@ commits:
|
|
83
82
|
- "(f|F)ix(es|ed)?\\s\\#\\d+"
|
84
83
|
- "(c|C)lose(s|d)?\\s\\#\\d+"
|
85
84
|
- "(r|R)esolve(s|d)?\\s\\#\\d+"
|
85
|
+
word_repeat:
|
86
|
+
enabled: true
|
87
|
+
severity: error
|
86
88
|
signature:
|
87
89
|
enabled: false
|
88
90
|
severity: error
|
@@ -110,6 +112,9 @@ commits:
|
|
110
112
|
- "\\."
|
111
113
|
- "\\?"
|
112
114
|
- "\\!"
|
115
|
+
word_repeat:
|
116
|
+
enabled: true
|
117
|
+
severity: error
|
113
118
|
trailer:
|
114
119
|
collaborator_capitalization:
|
115
120
|
enabled: true
|
@@ -120,8 +125,6 @@ commits:
|
|
120
125
|
collaborator_key:
|
121
126
|
enabled: true
|
122
127
|
severity: error
|
123
|
-
includes:
|
124
|
-
- Co-Authored-By
|
125
128
|
collaborator_name:
|
126
129
|
enabled: true
|
127
130
|
severity: error
|
@@ -132,24 +135,46 @@ commits:
|
|
132
135
|
format_key:
|
133
136
|
enabled: true
|
134
137
|
severity: error
|
135
|
-
includes:
|
136
|
-
- Format
|
137
138
|
format_value:
|
138
139
|
enabled: true
|
139
140
|
severity: error
|
140
141
|
includes:
|
141
|
-
-
|
142
|
-
-
|
142
|
+
- asciidoc
|
143
|
+
- markdown
|
143
144
|
issue_key:
|
144
145
|
enabled: true
|
145
146
|
severity: error
|
146
|
-
includes:
|
147
|
-
- Issue
|
148
147
|
issue_value:
|
149
148
|
enabled: true
|
150
149
|
severity: error
|
151
150
|
includes:
|
152
151
|
- "[\\w-]+"
|
152
|
+
milestone_key:
|
153
|
+
enabled: true
|
154
|
+
severity: error
|
155
|
+
milestone_value:
|
156
|
+
enabled: true
|
157
|
+
severity: error
|
158
|
+
includes:
|
159
|
+
- major
|
160
|
+
- minor
|
161
|
+
- patch
|
162
|
+
order:
|
163
|
+
enabled: true
|
164
|
+
severity: error
|
165
|
+
reviewer_key:
|
166
|
+
enabled: true
|
167
|
+
severity: error
|
168
|
+
reviewer_value:
|
169
|
+
enabled: true
|
170
|
+
severity: error
|
171
|
+
includes:
|
172
|
+
- clickup
|
173
|
+
- github
|
174
|
+
- jira
|
175
|
+
- linear
|
176
|
+
- shortcut
|
177
|
+
- tana
|
153
178
|
signer_capitalization:
|
154
179
|
enabled: true
|
155
180
|
severity: error
|
@@ -159,8 +184,6 @@ commits:
|
|
159
184
|
signer_key:
|
160
185
|
enabled: true
|
161
186
|
severity: error
|
162
|
-
includes:
|
163
|
-
- Signed-By
|
164
187
|
signer_name:
|
165
188
|
enabled: true
|
166
189
|
severity: error
|
@@ -168,8 +191,6 @@ commits:
|
|
168
191
|
tracker_key:
|
169
192
|
enabled: true
|
170
193
|
severity: error
|
171
|
-
includes:
|
172
|
-
- Tracker
|
173
194
|
tracker_value:
|
174
195
|
enabled: true
|
175
196
|
severity: error
|
@@ -11,15 +11,15 @@ module Git
|
|
11
11
|
:commits_author_name_enabled,
|
12
12
|
:commits_author_name_severity,
|
13
13
|
:commits_author_name_minimum,
|
14
|
-
:commits_body_bullet_enabled,
|
15
|
-
:commits_body_bullet_severity,
|
16
|
-
:commits_body_bullet_excludes,
|
17
14
|
:commits_body_bullet_capitalization_enabled,
|
18
15
|
:commits_body_bullet_capitalization_severity,
|
19
16
|
:commits_body_bullet_capitalization_includes,
|
20
17
|
:commits_body_bullet_delimiter_enabled,
|
21
18
|
:commits_body_bullet_delimiter_severity,
|
22
19
|
:commits_body_bullet_delimiter_includes,
|
20
|
+
:commits_body_bullet_only_enabled,
|
21
|
+
:commits_body_bullet_only_severity,
|
22
|
+
:commits_body_bullet_only_includes,
|
23
23
|
:commits_body_leading_line_enabled,
|
24
24
|
:commits_body_leading_line_severity,
|
25
25
|
:commits_body_line_length_enabled,
|
@@ -33,9 +33,8 @@ module Git
|
|
33
33
|
:commits_body_presence_enabled,
|
34
34
|
:commits_body_presence_severity,
|
35
35
|
:commits_body_presence_minimum,
|
36
|
-
:
|
37
|
-
:
|
38
|
-
:commits_body_single_bullet_includes,
|
36
|
+
:commits_body_word_repeat_enabled,
|
37
|
+
:commits_body_word_repeat_severity,
|
39
38
|
:commits_body_tracker_shorthand_enabled,
|
40
39
|
:commits_body_tracker_shorthand_severity,
|
41
40
|
:commits_body_tracker_shorthand_excludes,
|
@@ -52,13 +51,14 @@ module Git
|
|
52
51
|
:commits_subject_suffix_enabled,
|
53
52
|
:commits_subject_suffix_severity,
|
54
53
|
:commits_subject_suffix_excludes,
|
54
|
+
:commits_subject_word_repeat_enabled,
|
55
|
+
:commits_subject_word_repeat_severity,
|
55
56
|
:commits_trailer_collaborator_capitalization_enabled,
|
56
57
|
:commits_trailer_collaborator_capitalization_severity,
|
57
58
|
:commits_trailer_collaborator_email_enabled,
|
58
59
|
:commits_trailer_collaborator_email_severity,
|
59
60
|
:commits_trailer_collaborator_key_enabled,
|
60
61
|
:commits_trailer_collaborator_key_severity,
|
61
|
-
:commits_trailer_collaborator_key_includes,
|
62
62
|
:commits_trailer_collaborator_name_enabled,
|
63
63
|
:commits_trailer_collaborator_name_severity,
|
64
64
|
:commits_trailer_collaborator_name_minimum,
|
@@ -66,29 +66,37 @@ module Git
|
|
66
66
|
:commits_trailer_duplicate_severity,
|
67
67
|
:commits_trailer_format_key_enabled,
|
68
68
|
:commits_trailer_format_key_severity,
|
69
|
-
:commits_trailer_format_key_includes,
|
70
69
|
:commits_trailer_format_value_enabled,
|
71
70
|
:commits_trailer_format_value_severity,
|
72
71
|
:commits_trailer_format_value_includes,
|
73
72
|
:commits_trailer_issue_key_enabled,
|
74
73
|
:commits_trailer_issue_key_severity,
|
75
|
-
:commits_trailer_issue_key_includes,
|
76
74
|
:commits_trailer_issue_value_enabled,
|
77
75
|
:commits_trailer_issue_value_severity,
|
78
76
|
:commits_trailer_issue_value_includes,
|
77
|
+
:commits_trailer_milestone_key_enabled,
|
78
|
+
:commits_trailer_milestone_key_severity,
|
79
|
+
:commits_trailer_milestone_value_enabled,
|
80
|
+
:commits_trailer_milestone_value_severity,
|
81
|
+
:commits_trailer_milestone_value_includes,
|
82
|
+
:commits_trailer_order_enabled,
|
83
|
+
:commits_trailer_order_severity,
|
84
|
+
:commits_trailer_reviewer_key_enabled,
|
85
|
+
:commits_trailer_reviewer_key_severity,
|
86
|
+
:commits_trailer_reviewer_value_enabled,
|
87
|
+
:commits_trailer_reviewer_value_severity,
|
88
|
+
:commits_trailer_reviewer_value_includes,
|
79
89
|
:commits_trailer_signer_capitalization_enabled,
|
80
90
|
:commits_trailer_signer_capitalization_severity,
|
81
91
|
:commits_trailer_signer_email_enabled,
|
82
92
|
:commits_trailer_signer_email_severity,
|
83
93
|
:commits_trailer_signer_key_enabled,
|
84
94
|
:commits_trailer_signer_key_severity,
|
85
|
-
:commits_trailer_signer_key_includes,
|
86
95
|
:commits_trailer_signer_name_enabled,
|
87
96
|
:commits_trailer_signer_name_severity,
|
88
97
|
:commits_trailer_signer_name_minimum,
|
89
98
|
:commits_trailer_tracker_key_enabled,
|
90
99
|
:commits_trailer_tracker_key_severity,
|
91
|
-
:commits_trailer_tracker_key_includes,
|
92
100
|
:commits_trailer_tracker_value_enabled,
|
93
101
|
:commits_trailer_tracker_value_severity,
|
94
102
|
:commits_trailer_tracker_value_includes
|