git-lint 1.0.1 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 41ebd28b9de6a2091463ebd909561803347a03806d4766b8f89427654e05f360
4
- data.tar.gz: b361484f8086fd3e26a7e56ee7777a95efef5e721df3ea2d5a9b558834a67df2
3
+ metadata.gz: 6cb65f70f2b6923d02f717470a175b4a12f4aadf8f138ce2687ebdd73be3d300
4
+ data.tar.gz: 69a3dae72502594bd98c0397c29431bbfa4479fc6b5cebe8e76ce4149505085d
5
5
  SHA512:
6
- metadata.gz: 8c94de6e225fa83c24130ed0e8128d9ee9ca9aa9fdc2b5852d2055a637e9e57ab8dc410842a8921fb1b0ca0e6aa6d1570d582fe57d509518d30e41dd7098d5f5
7
- data.tar.gz: 474f3f1c1755a9745cf44813ed5ebfea9befe656426d27c2004508a416235378b2cfd7f49358829efb9862224d3faa12d5fad618ddb81fed3532b534910d238e
6
+ metadata.gz: 516084aa71ca86ec7fb5b4acbbc5eac343d6c4d44cc01ea8742c7882a3c203bafb9108fa788f0a00c4874bca40e810080b9b84d5d3ae583585e6efdef8166eb2
7
+ data.tar.gz: 1dbdb7ecf79311784ef01ede90695df2093fbd7d43b918e39d6bb596843bbaa87d6df59a8f57a901a8fdfb4cc5a935d92d7ad69bdde5f24ba0859f8d5efdb92f
Binary file
data.tar.gz.sig CHANGED
@@ -1,2 +1,3 @@
1
- Ԙ�L�P(��Ğ��3��AWF�.���^�%<�T^6����у�Ox��l�7�
2
- kWFKKp *�Ȗ��D
1
+ ��)�*4�>{��K��O��B
2
+ m����8��Tsb��j�Ҹ���~���댙k}H�� 2?��H�]�Xq> Pa�wN�Vv��T��X㥇���Bı���jz8��;�
3
+  �Kؗ��*o4ؿ�b�wNN�����p}֎@�",�b�\�3�EN̅�L�*j��O���b}�ӅM9��ěe H�˳�P
@@ -150,7 +150,7 @@ additional liability.
150
150
 
151
151
  END OF TERMS AND CONDITIONS
152
152
 
153
- Copyright link:https://www.alchemists.io[Alchemists].
153
+ Copyright 2020 link:https://www.alchemists.io/team/brooke_kuhlmann[Brooke Kuhlmann].
154
154
 
155
155
  Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in
156
156
  compliance with the License. You may obtain a link:https://www.apache.org/licenses/LICENSE-2.0[copy]
@@ -8,6 +8,8 @@
8
8
 
9
9
  [link=http://badge.fury.io/rb/git-lint]
10
10
  image::https://badge.fury.io/rb/git-lint.svg[Gem Version]
11
+ [link=https://www.alchemists.io/projects/code_quality]
12
+ image::https://img.shields.io/badge/code_style-alchemists-brightgreen.svg[Alchemists Style Guide]
11
13
  [link=https://circleci.com/gh/bkuhlmann/git-lint]
12
14
  image::https://circleci.com/gh/bkuhlmann/git-lint.svg?style=svg[Circle CI Status]
13
15
 
@@ -45,8 +47,6 @@ image::https://www.alchemists.io/images/screencasts/git_lint/cover.svg[Screencas
45
47
 
46
48
  == Setup
47
49
 
48
- === Production
49
-
50
50
  To install, run:
51
51
 
52
52
  [source,bash]
@@ -54,24 +54,6 @@ To install, run:
54
54
  gem install git-lint
55
55
  ----
56
56
 
57
- === Development
58
-
59
- To contribute, run:
60
-
61
- [source,bash]
62
- ----
63
- git clone https://github.com/bkuhlmann/git-lint.git
64
- cd git-lint
65
- bin/setup
66
- ----
67
-
68
- You can also use the IRB console for direct access to all objects:
69
-
70
- [source,bash]
71
- ----
72
- bin/console
73
- ----
74
-
75
57
  == Usage
76
58
 
77
59
  === Command Line Interface (CLI)
@@ -171,7 +153,7 @@ variables. The default configuration is:
171
153
  :severity: :error
172
154
  :includes: "\\-"
173
155
  :commit_body_issue_tracker_link:
174
- :enabled: true,
156
+ :enabled: true
175
157
  :severity: :error
176
158
  :excludes:
177
159
  - "(f|F)ix(es|ed)?\\s\\#\\d+"
@@ -403,6 +385,36 @@ from `master`.
403
385
  Detection and configuration happens automatically by checking the `CIRCLECI` environment variable.
404
386
  No additional setup required!
405
387
 
388
+ ==== link:https://docs.github.com/en/free-pro-team@latest/actions[GitHub Actions]
389
+
390
+ Detection happens automatically by checking the `GITHUB_ACTIONS` environment variable as supplied by
391
+ the GitHub environment. The only configuration required is to add a `.github/workflows/git_lint.yml`
392
+ to your repository with the following contents:
393
+
394
+ [source,yaml]
395
+ ----
396
+ name: Git Lint
397
+
398
+ on: pull_request
399
+
400
+ jobs:
401
+ run:
402
+ runs-on: ubuntu-latest
403
+ container:
404
+ image: ruby:latest
405
+ steps:
406
+ - uses: actions/checkout@v2
407
+ with:
408
+ fetch-depth: '0'
409
+ ref: ${{github.head_ref}}
410
+ - name: Install
411
+ run: gem install git-lint
412
+ - name: Analyze
413
+ run: git-lint --analyze
414
+ ----
415
+
416
+ The above will ensure Git Lint runs as an additional check on each Pull Request.
417
+
406
418
  ==== link:https://www.netlify.com[Netlify CI]
407
419
 
408
420
  Detection and configuration happens automatically by checking the `NETLIFY` environment variable. No
@@ -869,13 +881,30 @@ worth considering:
869
881
  * Avoid using link:https://git-scm.com/book/en/v2/Git-Tools-Submodules[Git Submodules]. This
870
882
  practice leads to complicated project cloning, deployments, maintenance, etc. Use separate
871
883
  repositories to better organize and split out this work. Sophisticated package managers, like
872
- link:https://bundler.io[Bundler] for example, exist to manage these dependencies better than what
873
- multiple Git Submodules can accomplish.
884
+ link:https://bundler.io[Bundler], exist to manage these dependencies better than what multiple Git
885
+ Submodules can accomplish.
874
886
  * Avoid using link:https://git-lfs.github.com[Git LFS] for tracking binary artifacts/resources.
875
887
  These files are not meant for version control and lead to large repositories that are time
876
888
  consuming to clone/deploy. Use storage managers, like link:https://aws.amazon.com/s3[Amazon S3]
877
889
  for example, that are better suited for binary assets that don't change often.
878
890
 
891
+ === Security
892
+
893
+ Ensure signed commits, pushes, and tags are enabled within your global Git Configuration to reduce
894
+ an
895
+ link:https://blog.gruntwork.io/how-to-spoof-any-user-on-github-and-what-to-do-to-prevent-it-e237e95b8deb[attack
896
+ vector]. Run the following commands to enable:
897
+
898
+ [source,bash]
899
+ ----
900
+ git config --global commit.gpgSign true
901
+ git config --global push.gpgSign true
902
+ git config --global tag.gpgSign true
903
+ ----
904
+
905
+ ⚠️ GitHub, unfortunately, doesn't support signed pushes so you might need to leave that
906
+ configuration disabled.
907
+
879
908
  === Commits
880
909
 
881
910
  * Use a commit subject that explains _what_ is being committed.
@@ -886,14 +915,19 @@ worth considering:
886
915
  * Use small, atomic commits:
887
916
  ** Easier to review and provide feedback.
888
917
  ** Easier to review implementation and corresponding tests.
889
- ** Easier to document with detailed subject messages (especially when grouped together in a pull
890
- request).
918
+ ** Easier to document with detailed subjects (especially when grouped together in a pull request).
891
919
  ** Easier to reword, edit, squash, fix, or drop when interactively rebasing.
892
920
  ** Easier to combine together versus tearing apart a larger commit into smaller commits.
893
921
  * Use logically ordered commits:
894
922
  ** Each commit should tell a story and be a logical building block to the next commit.
923
+ ** Each commit should, ideally, be the implementation plus corresponding test. Avoid committing
924
+ changes that are a jumble of mixed ideas as they are hard to decipher and a huge insult not only
925
+ to the reviewer but your future self.
895
926
  ** Each commit, when reviewed in order, should be able to explain _how_ the feature or bug fix was
896
927
  completed and implemented properly.
928
+ * Keep refactored code separate from behavioral changes. This makes the review process easier
929
+ because you don't have to sift through all the line and format changes to figure out what is new
930
+ or changed.
897
931
 
898
932
  === Branches
899
933
 
@@ -927,8 +961,11 @@ worth considering:
927
961
 
928
962
  === Code Reviews
929
963
 
930
- There are two objectives each code review should achieve:
964
+ There are three main objectives each code review should achieve:
931
965
 
966
+ . *Joy* - The experience of working with you, receiving feedback, giving feedback, and demonstrating
967
+ a level of care influences others and encourages a collaborative environment that is fun to work
968
+ in. Use this time to build and reinforce trust amongst your fellow colleagues.
932
969
  . *Quality*: Ensures changes are of highest quality that adhere to team standards while enhancing
933
970
  the customer experience and not disrupting their workflow.
934
971
  . *Education*: Provides a chance for everyone on the team to learn more about the architecture,
@@ -938,13 +975,22 @@ There are two objectives each code review should achieve:
938
975
  In addition to the objectives above, the following guidelines are worth following:
939
976
 
940
977
  * Keep code reviews short and easy to review:
978
+ ** Review your own code first before submitting to others. By ensuring your are confident in the
979
+ overall implementation and the commits in terms of commit messages and implementation details,
980
+ you'll encourage higher quality feedback and show appreciation for the reviewer's time.
941
981
  ** Provide a high level overview that answers _why_ the code review is necessary.
942
- ** Provide a link to the issue/task that prompted the code review (if any).
982
+ ** Provide a link to the issue that prompted the code review (if any) and any additional details
983
+ worth highlighting to guide the reviewer through the process.
943
984
  ** Provide screenshots/screencasts if possible.
944
- ** Ensure commits within the code review are related to the purpose of the code review.
945
- ** Prefer code reviews at about 250 lines in order to keep the quality of the code review and defect
946
- detection high.
947
- ** Avoid working on a large issue without getting feedback first in order to not overwhelm/surprise
985
+ ** Provide any ancillary notes or points of interest worth highlighting for the reviewer.
986
+ ** Ensure commits within the code review are related to the purpose of the code review and avoid
987
+ mixing in changes that are ancillary to the primary objective of the code view. If you do have
988
+ changes outside of the scope of the current code review, open those changes up as a separate code
989
+ review instead.
990
+ ** Prefer code reviews at about 300 lines in order to keep the quality of the code review and defect
991
+ detection high. This also shows you value the reviewers time and attention away from their own
992
+ work.
993
+ ** Avoid working on a large issues without first getting feedback in order to not overwhelm/surprise
948
994
  the maintainers. More discussion up front will help ensure your work has a faster chance of
949
995
  acceptance.
950
996
  * Review and rebase code reviews quickly:
@@ -984,9 +1030,14 @@ In addition to the objectives above, the following guidelines are worth followin
984
1030
  always meant as a response to helpful feedback.
985
1031
  ** ✅ (`:white_check_mark:`) - Signifies code review approval. The author can
986
1032
  rebase onto `master` and delete the feature branch at this point.
1033
+ * Use all feedback as a chance to learn, teach, strenghen the bond of trust between you and your
1034
+ fellow colleagues, and avoid being cut by
1035
+ link:https://fs.blog/2017/04/mental-model-hanlons-razor[Hanlon's Razor].
1036
+ * Use automation to ensure code reviews are consistent, of high quality, and swift to resolve. Each
1037
+ code review can be an opportunity to identify and automate the process further.
987
1038
  * Use face-to-face communication if a code review's written discussion gets lengthy/noisy.
988
- * Create new tasks/actions if additional features are discovered during a code review to avoid
989
- delaying code review acceptance. Return to the code review once tasks have been logged.
1039
+ * Create follow-up actions if additional features are discovered during a code review to avoid
1040
+ delaying code review acceptance. Return to the code review once the new actions have been logged.
990
1041
  * The author, not the reviewer, should rebase the feature branch onto `master` upon approval.
991
1042
  * Avoid reviewing your own code review before rebasing onto `master`. Have another pair of eyes
992
1043
  review your code first.
@@ -1017,9 +1068,9 @@ do this, follow these steps:
1017
1068
  . Check _Require review from Code Owners_.
1018
1069
  . Check _Require status checks to pass before merging_.
1019
1070
  . Check _Require branches to be up to date before merging_.
1071
+ . Check _Require signed commits_.
1020
1072
  . Check _Require linear history_ (pairs well with the merge options mentioned above).
1021
1073
  . Check _Include administrators_.
1022
- . Uncheck _Require signed commits_ (only necessary for tags).
1023
1074
  . Uncheck _Allow force pushes_.
1024
1075
  . Uncheck _Allow deletions_.
1025
1076
 
@@ -1029,6 +1080,24 @@ image::https://www.alchemists.io/images/projects/git-lint/screenshots/github-set
1029
1080
 
1030
1081
  Applying the above changes will help maintain a clean Git history.
1031
1082
 
1083
+ == Development
1084
+
1085
+ To contribute, run:
1086
+
1087
+ [source,bash]
1088
+ ----
1089
+ git clone https://github.com/bkuhlmann/git-lint.git
1090
+ cd git-lint
1091
+ bin/setup
1092
+ ----
1093
+
1094
+ You can also use the IRB console for direct access to all objects:
1095
+
1096
+ [source,bash]
1097
+ ----
1098
+ bin/console
1099
+ ----
1100
+
1032
1101
  == Tests
1033
1102
 
1034
1103
  To test, run:
@@ -15,6 +15,7 @@ require "git/lint/commits/saved"
15
15
  require "git/lint/commits/unsaved"
16
16
  require "git/lint/branches/environments/local"
17
17
  require "git/lint/branches/environments/circle_ci"
18
+ require "git/lint/branches/environments/git_hub_action"
18
19
  require "git/lint/branches/environments/netlify_ci"
19
20
  require "git/lint/branches/environments/travis_ci"
20
21
  require "git/lint/branches/feature"
@@ -13,6 +13,7 @@ module Git
13
13
  ISSUE_LINE_OFFSET = 2
14
14
 
15
15
  def self.inherited klass
16
+ super
16
17
  @descendants ||= []
17
18
  @descendants << klass unless klass.to_s.start_with? "#<Class" # Ignore anonymous classes.
18
19
  end
@@ -32,7 +32,11 @@ module Git
32
32
  end
33
33
 
34
34
  def invalid_line? line
35
- line.match?(/\A\s*#{Regexp.union filter_list.to_regexp}(?!\s).+\Z/)
35
+ line.match?(/\A\s*#{pattern}(?!(#{pattern}|\s)).+\Z/)
36
+ end
37
+
38
+ def pattern
39
+ Regexp.union filter_list.to_regexp
36
40
  end
37
41
  end
38
42
  end
@@ -14,9 +14,10 @@ module Git
14
14
  def valid?
15
15
  raw_body = commit.raw_body
16
16
  subject, body = raw_body.split "\n", 2
17
+
17
18
  return true if !String(subject).empty? && String(body).strip.empty?
18
19
 
19
- raw_body.match?(/\A.+\n\n.+/)
20
+ raw_body.match?(/\A.+(\n\n|\#).+/m)
20
21
  end
21
22
 
22
23
  def issue
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Git
4
+ module Lint
5
+ module Branches
6
+ module Environments
7
+ # Provides GitHub Action build environment feature branch information.
8
+ class GitHubAction
9
+ def initialize repo: Git::Kit::Repo.new
10
+ @repo = repo
11
+ end
12
+
13
+ def name
14
+ "origin/#{repo.branch_name}"
15
+ end
16
+
17
+ def shas
18
+ repo.shas start: "origin/master", finish: name
19
+ end
20
+
21
+ private
22
+
23
+ attr_reader :repo
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -29,6 +29,7 @@ module Git
29
29
 
30
30
  def load_environment
31
31
  if key? "CIRCLECI" then Environments::CircleCI.new
32
+ elsif key? "GITHUB_ACTIONS" then Environments::GitHubAction.new
32
33
  elsif key? "NETLIFY" then Environments::NetlifyCI.new environment: current_environment
33
34
  elsif key? "TRAVIS" then Environments::TravisCI.new environment: current_environment
34
35
  else Environments::Local.new
@@ -6,7 +6,7 @@ module Git
6
6
  module Identity
7
7
  NAME = "git-lint"
8
8
  LABEL = "Git Lint"
9
- VERSION = "1.0.1"
9
+ VERSION = "1.4.0"
10
10
  VERSION_LABEL = "#{LABEL} #{VERSION}"
11
11
  end
12
12
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: git-lint
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brooke Kuhlmann
@@ -28,7 +28,7 @@ cert_chain:
28
28
  2XV8FRa7/JimI07sPLC13eLY3xd/aYTi85Z782KIA4j0G8XEEWAX0ouBhlXPocZv
29
29
  QWc=
30
30
  -----END CERTIFICATE-----
31
- date: 2020-07-23 00:00:00.000000000 Z
31
+ date: 2020-12-13 00:00:00.000000000 Z
32
32
  dependencies:
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: pastel
@@ -50,28 +50,28 @@ dependencies:
50
50
  requirements:
51
51
  - - "~>"
52
52
  - !ruby/object:Gem::Version
53
- version: '7.5'
53
+ version: '7.16'
54
54
  type: :runtime
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
57
  requirements:
58
58
  - - "~>"
59
59
  - !ruby/object:Gem::Version
60
- version: '7.5'
60
+ version: '7.16'
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: runcom
63
63
  requirement: !ruby/object:Gem::Requirement
64
64
  requirements:
65
65
  - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: '6.0'
67
+ version: '6.4'
68
68
  type: :runtime
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: '6.0'
74
+ version: '6.4'
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: thor
77
77
  requirement: !ruby/object:Gem::Requirement
@@ -86,188 +86,6 @@ dependencies:
86
86
  - - "~>"
87
87
  - !ruby/object:Gem::Version
88
88
  version: '0.20'
89
- - !ruby/object:Gem::Dependency
90
- name: bundler-audit
91
- requirement: !ruby/object:Gem::Requirement
92
- requirements:
93
- - - "~>"
94
- - !ruby/object:Gem::Version
95
- version: '0.6'
96
- type: :development
97
- prerelease: false
98
- version_requirements: !ruby/object:Gem::Requirement
99
- requirements:
100
- - - "~>"
101
- - !ruby/object:Gem::Version
102
- version: '0.6'
103
- - !ruby/object:Gem::Dependency
104
- name: gemsmith
105
- requirement: !ruby/object:Gem::Requirement
106
- requirements:
107
- - - "~>"
108
- - !ruby/object:Gem::Version
109
- version: '14.2'
110
- type: :development
111
- prerelease: false
112
- version_requirements: !ruby/object:Gem::Requirement
113
- requirements:
114
- - - "~>"
115
- - !ruby/object:Gem::Version
116
- version: '14.2'
117
- - !ruby/object:Gem::Dependency
118
- name: guard-rspec
119
- requirement: !ruby/object:Gem::Requirement
120
- requirements:
121
- - - "~>"
122
- - !ruby/object:Gem::Version
123
- version: '4.7'
124
- type: :development
125
- prerelease: false
126
- version_requirements: !ruby/object:Gem::Requirement
127
- requirements:
128
- - - "~>"
129
- - !ruby/object:Gem::Version
130
- version: '4.7'
131
- - !ruby/object:Gem::Dependency
132
- name: pry
133
- requirement: !ruby/object:Gem::Requirement
134
- requirements:
135
- - - "~>"
136
- - !ruby/object:Gem::Version
137
- version: '0.13'
138
- type: :development
139
- prerelease: false
140
- version_requirements: !ruby/object:Gem::Requirement
141
- requirements:
142
- - - "~>"
143
- - !ruby/object:Gem::Version
144
- version: '0.13'
145
- - !ruby/object:Gem::Dependency
146
- name: pry-byebug
147
- requirement: !ruby/object:Gem::Requirement
148
- requirements:
149
- - - "~>"
150
- - !ruby/object:Gem::Version
151
- version: '3.9'
152
- type: :development
153
- prerelease: false
154
- version_requirements: !ruby/object:Gem::Requirement
155
- requirements:
156
- - - "~>"
157
- - !ruby/object:Gem::Version
158
- version: '3.9'
159
- - !ruby/object:Gem::Dependency
160
- name: rake
161
- requirement: !ruby/object:Gem::Requirement
162
- requirements:
163
- - - "~>"
164
- - !ruby/object:Gem::Version
165
- version: '13.0'
166
- type: :development
167
- prerelease: false
168
- version_requirements: !ruby/object:Gem::Requirement
169
- requirements:
170
- - - "~>"
171
- - !ruby/object:Gem::Version
172
- version: '13.0'
173
- - !ruby/object:Gem::Dependency
174
- name: reek
175
- requirement: !ruby/object:Gem::Requirement
176
- requirements:
177
- - - "~>"
178
- - !ruby/object:Gem::Version
179
- version: '6.0'
180
- type: :development
181
- prerelease: false
182
- version_requirements: !ruby/object:Gem::Requirement
183
- requirements:
184
- - - "~>"
185
- - !ruby/object:Gem::Version
186
- version: '6.0'
187
- - !ruby/object:Gem::Dependency
188
- name: rspec
189
- requirement: !ruby/object:Gem::Requirement
190
- requirements:
191
- - - "~>"
192
- - !ruby/object:Gem::Version
193
- version: '3.9'
194
- type: :development
195
- prerelease: false
196
- version_requirements: !ruby/object:Gem::Requirement
197
- requirements:
198
- - - "~>"
199
- - !ruby/object:Gem::Version
200
- version: '3.9'
201
- - !ruby/object:Gem::Dependency
202
- name: rubocop
203
- requirement: !ruby/object:Gem::Requirement
204
- requirements:
205
- - - "~>"
206
- - !ruby/object:Gem::Version
207
- version: '0.83'
208
- type: :development
209
- prerelease: false
210
- version_requirements: !ruby/object:Gem::Requirement
211
- requirements:
212
- - - "~>"
213
- - !ruby/object:Gem::Version
214
- version: '0.83'
215
- - !ruby/object:Gem::Dependency
216
- name: rubocop-performance
217
- requirement: !ruby/object:Gem::Requirement
218
- requirements:
219
- - - "~>"
220
- - !ruby/object:Gem::Version
221
- version: '1.5'
222
- type: :development
223
- prerelease: false
224
- version_requirements: !ruby/object:Gem::Requirement
225
- requirements:
226
- - - "~>"
227
- - !ruby/object:Gem::Version
228
- version: '1.5'
229
- - !ruby/object:Gem::Dependency
230
- name: rubocop-rake
231
- requirement: !ruby/object:Gem::Requirement
232
- requirements:
233
- - - "~>"
234
- - !ruby/object:Gem::Version
235
- version: '0.5'
236
- type: :development
237
- prerelease: false
238
- version_requirements: !ruby/object:Gem::Requirement
239
- requirements:
240
- - - "~>"
241
- - !ruby/object:Gem::Version
242
- version: '0.5'
243
- - !ruby/object:Gem::Dependency
244
- name: rubocop-rspec
245
- requirement: !ruby/object:Gem::Requirement
246
- requirements:
247
- - - "~>"
248
- - !ruby/object:Gem::Version
249
- version: '1.39'
250
- type: :development
251
- prerelease: false
252
- version_requirements: !ruby/object:Gem::Requirement
253
- requirements:
254
- - - "~>"
255
- - !ruby/object:Gem::Version
256
- version: '1.39'
257
- - !ruby/object:Gem::Dependency
258
- name: simplecov
259
- requirement: !ruby/object:Gem::Requirement
260
- requirements:
261
- - - "~>"
262
- - !ruby/object:Gem::Version
263
- version: '0.18'
264
- type: :development
265
- prerelease: false
266
- version_requirements: !ruby/object:Gem::Requirement
267
- requirements:
268
- - - "~>"
269
- - !ruby/object:Gem::Version
270
- version: '0.18'
271
89
  description:
272
90
  email:
273
91
  - brooke@alchemists.io
@@ -306,6 +124,7 @@ files:
306
124
  - lib/git/lint/analyzers/commit_trailer_collaborator_key.rb
307
125
  - lib/git/lint/analyzers/commit_trailer_collaborator_name.rb
308
126
  - lib/git/lint/branches/environments/circle_ci.rb
127
+ - lib/git/lint/branches/environments/git_hub_action.rb
309
128
  - lib/git/lint/branches/environments/local.rb
310
129
  - lib/git/lint/branches/environments/netlify_ci.rb
311
130
  - lib/git/lint/branches/environments/travis_ci.rb
@@ -356,7 +175,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
356
175
  - !ruby/object:Gem::Version
357
176
  version: '0'
358
177
  requirements: []
359
- rubygems_version: 3.1.4
178
+ rubygems_version: 3.2.0
360
179
  signing_key:
361
180
  specification_version: 4
362
181
  summary: A command line interface for linting Git commits.
metadata.gz.sig CHANGED
Binary file