netsoft-danger 0.4.1 → 0.4.5

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: fcfd333d4519f53c80314f58b040775856c3627fa4a57c92acf1adbe238d5733
4
- data.tar.gz: 53aa6366cd8561319ff2abbd1e5a43f52c44494970513218c29191781836b888
3
+ metadata.gz: d5698456c6bddb5523173ef86d53f2aec5416f7550c0ea28ab685534796b393e
4
+ data.tar.gz: 1dd2c88b77d0f8028287cebb55053f297f688341aa03646cb2cbdf8983da430d
5
5
  SHA512:
6
- metadata.gz: 7ec62cf7496cacbc3300baf78b4290965aebf0e62416127e452f21d7defdd7a2980a0a99c8c75efe3af5d6ee7241352970bd53d5ece05cc6e8691e4e8a4e5000
7
- data.tar.gz: 531ec01629606b9892557c82e5a50883cb6ad150ef62a174c2ced4e361834a80a041ab41e5b0730dfbcd72a6ad6b103d630bdbea9a5999987bea4234ffe41935
6
+ metadata.gz: fac11210176e7a4f09fc128548e0f4aa9a25e65c61112afdbce32c78db9d279cebf495e58e6bcd6668cdb7e0d71e83a04bea8ad0649feb8752070f482cef6535
7
+ data.tar.gz: 925d7666da1126663754db412bdf7f0547e30bbacffe7f59ca81751def2b500a1e1d6bc5aefb8ce4a60b88e27a72eed767a36329255100f0d6d28a9f7dabb917
data/.circleci/config.yml CHANGED
@@ -3,11 +3,11 @@ version: 2
3
3
  defaults: &defaults
4
4
  docker: &ruby_image
5
5
  - &ruby_image
6
- image: circleci/ruby:2.4.4-stretch
6
+ image: circleci/ruby:2.5.5-stretch
7
7
  environment:
8
8
  RUBYOPT: '-KU -E utf-8:utf-8'
9
9
  BUNDLE_PATH: vendor/bundle
10
- BUNDLE_VERSION: 1.15.2
10
+ BUNDLE_VERSION: 1.17.3
11
11
  BUNDLE_JOBS: 4
12
12
  BUNDLE_RETRY: 3
13
13
 
@@ -82,7 +82,7 @@ jobs:
82
82
 
83
83
  - restore_cache:
84
84
  keys:
85
- - netsoft-danger-bundle-v2-{{ checksum "Gemfile" }}-{{ checksum "netsoft-danger.gemspec" }}
85
+ - netsoft-danger-bundle-v3-{{ checksum "Gemfile" }}-{{ checksum "netsoft-danger.gemspec" }}
86
86
  - run:
87
87
  name: Install bundler
88
88
  command: gem install bundler --version=$BUNDLE_VERSION
@@ -91,7 +91,7 @@ jobs:
91
91
  command: |-
92
92
  bundle _${BUNDLE_VERSION}_ check || bundle _${BUNDLE_VERSION}_ install --retry=$BUNDLE_RETRY
93
93
  - save_cache:
94
- key: netsoft-danger-bundle-v2-{{ checksum "Gemfile" }}-{{ checksum "netsoft-danger.gemspec" }}
94
+ key: netsoft-danger-bundle-v3-{{ checksum "Gemfile" }}-{{ checksum "netsoft-danger.gemspec" }}
95
95
  paths:
96
96
  - vendor/bundle
97
97
  - Gemfile.lock
@@ -130,7 +130,5 @@ jobs:
130
130
  ./bin/tag_check.sh
131
131
  ./bin/setup-rubygems.sh
132
132
  rm -rf pkg
133
- gem install geminabox
134
133
  rake build
135
- gem inabox -g ${HUBSTAFF_GEM_SERVER} pkg/*
136
134
  gem push pkg/*.gem
@@ -0,0 +1,24 @@
1
+ ## Change description
2
+
3
+ > Please include a summary of the change and which issue is fixed. Please also include
4
+ relevant motivation and context. List any dependencies that are required for this change.
5
+
6
+ ## Related issues
7
+
8
+ - Source: <Issue link or Spec Link>
9
+ - UAT: <UAT Link>
10
+ - QA: <QA Task Link here>
11
+ - Review app: <Link to Heroku>
12
+
13
+ ## Checklists
14
+
15
+ ### Development
16
+
17
+ - [ ] The commit message follows our [guidelines](https://docs.hubstaff.com/hubstaff-docs/latest/great_commit_messages.html)
18
+ - [ ] I have performed a self-review of my own code
19
+ - [ ] I have thoroughly tested the changes
20
+ - [ ] I have added tests that prove my fix is effective or that my feature works
21
+
22
+ ### Security
23
+
24
+ - [ ] Security impact of change has been considered
@@ -0,0 +1,25 @@
1
+ ## Change description
2
+
3
+ > Please include a summary of the change and which issue is fixed. Please also include
4
+ relevant motivation and context. List any dependencies that are required for this change.
5
+
6
+ ## Related issues
7
+
8
+ - Source: <Issue link or Spec Link>
9
+ - UAT: <UAT Link>
10
+ - QA: <QA Task Link here>
11
+ - Review app: <Link to Heroku>
12
+
13
+ ## Checklists
14
+
15
+ ### Development
16
+
17
+ - [ ] The commit message follows our guidelines
18
+ - [ ] I have performed a self-review of my own code
19
+ - [ ] I have thoroughly tested the changes
20
+ - [ ] I have added tests that prove my fix is effective or that my feature works
21
+
22
+ ### Security
23
+
24
+ - [ ] Security impact of change has been considered
25
+
data/.rubocop.yml CHANGED
@@ -1,6 +1,9 @@
1
1
  inherit_gem:
2
2
  netsoft-rubocop:
3
- - default.yml
3
+ - config/default.yml
4
+
5
+ AllCops:
6
+ TargetRubyVersion: 2.4
4
7
 
5
8
  Style/SignalException:
6
9
  Exclude:
@@ -10,6 +13,19 @@ Style/IfUnlessModifier:
10
13
  Exclude:
11
14
  - Dangerfile
12
15
 
16
+ Style/SoleNestedConditional:
17
+ Exclude:
18
+ - Dangerfile
19
+
13
20
  Layout/EmptyLineAfterGuardClause:
14
21
  Exclude:
15
- - Dangerfile
22
+ - Dangerfile
23
+
24
+ Layout/LineLength:
25
+ Exclude:
26
+ - Dangerfile
27
+
28
+ Performance/StringInclude:
29
+ Exclude:
30
+ - Dangerfile
31
+
data/CHANGELOG.md CHANGED
@@ -9,6 +9,26 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
9
9
  ### Changed
10
10
  ### Fixed
11
11
 
12
+ ## [0.4.5]
13
+ ### Changed
14
+ - remove the "fit left in tests" check
15
+
16
+ ## [0.4.4]
17
+ ### Changed
18
+ - stop pushing to private gem server
19
+
20
+ ## [0.4.3]
21
+ ### Added
22
+ - add brakeman artifact extraction
23
+ ### Changed
24
+ - updated netsoft-rubocop and rubocop config
25
+ - remove old commit message style from checks
26
+ - update PR template
27
+
28
+ ## [0.4.2]
29
+ ### Fixed
30
+ - restrict simplecov version
31
+
12
32
  ## [0.4.1]
13
33
  ### Changed
14
34
  - exclude binary files in the grep calls
@@ -44,4 +64,3 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
44
64
  - package.json checks
45
65
  ### Fixed
46
66
  - requie older version of faraday until octokit is fixed (https://github.com/octokit/octokit.rb/pull/1154)
47
-
data/Dangerfile CHANGED
@@ -16,7 +16,6 @@ end
16
16
  if Dir.exist?('spec')
17
17
  fail('fdescribe left in tests') if `grep -r -I -e '\\bfdescribe\\b' spec/ |grep -v 'danger ok' `.length > 1
18
18
  fail('fcontext left in tests') if `grep -r -I -e '\\bfcontext\\b' spec/ |grep -v 'danger ok' `.length > 1
19
- fail('fit left in tests') if `grep -r -I -e '\\bfit\\b' spec/ | grep -v 'danger ok' `.length > 1
20
19
  fail('ap left in tests') if `grep -r -I -e '\\bap\\b' spec/ | grep -v 'danger ok' `.length > 1
21
20
  fail('puts left in tests') if `grep -r -I -e '\\bputs\\b' spec/ | grep -v 'danger ok' `.length > 1
22
21
  end
@@ -43,16 +42,12 @@ git.commits.each do |c|
43
42
  short = " ( #{c.sha[0..7]} )"
44
43
  has_migrations = c.diff_parent.any? { |f| f.path =~ %r{db/migrate/} }
45
44
  has_schema_changes = c.diff_parent.any? { |f| f.path =~ %r{db/schema\.rb} }
46
- old_migration_msg = c.message.start_with?('[migration]')
47
- has_migration_msg = old_migration_msg || c.message.match?(/\Amigration(\([A-Za-z]+\))?:/)
45
+ has_migration_msg = c.message.match?(/\Amigration(\([A-Za-z]+\))?:/)
48
46
  no_schema_ok = ENV['DANGER_NO_SCHEMA_OK'] || false
49
47
  if has_migrations || has_schema_changes
50
48
  unless has_migration_msg
51
49
  fail 'migration: Schema migration commits needs to be tagged with (migration). e.g. migration(Module): ' + short
52
50
  end
53
- if old_migration_msg
54
- warn 'migration: Please switch to the new conventional commit format.'
55
- end
56
51
  if has_migrations && !has_schema_changes && !no_schema_ok
57
52
  fail 'migration: Please checkin your schema.rb changes with your migration' + short
58
53
  end
@@ -76,15 +71,11 @@ git.commits.each do |c|
76
71
  end
77
72
 
78
73
  has_gemfile_changes = c.diff_parent.any? { |f| f.path =~ /Gemfile|gemspec/ }
79
- old_gemfile_msg = c.message.start_with?('[gemfile]')
80
- has_gemfile_msg = old_gemfile_msg || c.message.match?(/\Agemfile(\([A-Za-z]+\))?:/)
74
+ has_gemfile_msg = c.message.match?(/\Agemfile(\([A-Za-z]+\))?:/)
81
75
  if has_gemfile_changes
82
76
  unless has_gemfile_msg
83
77
  fail 'gemfile: Gemfile commits needs to be tagged with (gemfile). e.g. gemfile(Module): ' + short
84
78
  end
85
- if old_migration_msg
86
- warn 'gemfile: Please switch to the new conventional commit format.'
87
- end
88
79
  if c.diff_parent.any? { |f| f.path !~ /Gemfile|gemspec/ }
89
80
  fail 'gemfile: Gemfile commit contains non-gemfile changes' + short
90
81
  end
@@ -98,15 +89,11 @@ git.commits.each do |c|
98
89
  end
99
90
 
100
91
  has_package_changes = c.diff_parent.any? { |f| f.path =~ /package\.json|yarn\.lock/ }
101
- old_package_msg = c.message.start_with?('[package.json]')
102
- has_package_msg = old_package_msg || c.message.match?(/\Apackage(\([A-Za-z]+\))?:/)
92
+ has_package_msg = c.message.match?(/\Apackage(\([A-Za-z]+\))?:/)
103
93
  if has_package_changes
104
94
  unless has_package_msg
105
95
  fail 'package: Package.json commits needs to be tagged with package. e.g package(Module): ' + short
106
96
  end
107
- if old_package_msg
108
- warn 'package: Please switch to the new conventional commit format.'
109
- end
110
97
  if c.diff_parent.any? { |f| f.path !~ /package\.json|yarn\.lock/ }
111
98
  fail 'package: Package.json commit contains non-package changes' + short
112
99
  end
@@ -127,6 +114,7 @@ if ENV['CIRCLE_TOKEN']
127
114
  coverage = artifacts.find { |artifact| artifact.end_with?('coverage/index.html') }
128
115
  rubocop = artifacts.find { |artifact| artifact.end_with?('rubocop/report.html') }
129
116
  eslint = artifacts.find { |artifact| artifact.end_with?('eslint/report.html') }
117
+ brakeman = artifacts.find { |artifact| artifact.end_with?('brakeman/report.html') }
130
118
  rspec_files = artifacts.select { |artifact| artifact =~ /rspec-(.+)\.html$/ }
131
119
 
132
120
  {}.tap do |hash|
@@ -135,6 +123,7 @@ if ENV['CIRCLE_TOKEN']
135
123
  hash['RuboCop inspection report'] = rubocop if rubocop
136
124
  hash['ESLint inspection report'] = eslint if eslint
137
125
  hash['Jest coverage report'] = jest if jest
126
+ hash['Brakeman issues report'] = brakeman if brakeman
138
127
  end.each do |msg, links|
139
128
  links = [*links]
140
129
  if links.size == 1
data/bin/netsoft-circle CHANGED
@@ -34,7 +34,9 @@ class NetsoftCircle < Thor # :nodoc:
34
34
  end
35
35
 
36
36
  desc 'merge', 'Merges several simplecov json result files'
37
- option :output, type: :string, aliases: '-o', desc: 'Specify an alternate output directory for the produced coverage data'
37
+ option :output, type: :string, aliases: '-o',
38
+ desc: 'Specify an alternate output directory for the produced coverage data'
39
+
38
40
  def merge(*files)
39
41
  require 'simplecov'
40
42
  return if files.empty?
@@ -81,6 +83,15 @@ class NetsoftCircle < Thor # :nodoc:
81
83
  exit(1) unless $CHILD_STATUS.success?
82
84
  end
83
85
 
86
+ desc 'brakeman', 'Run brakeman'
87
+ def brakeman
88
+ system <<~COMMAND
89
+ bundle _${BUNDLE_VERSION}_ exec brakeman \
90
+ -o $CIRCLE_ARTIFACTS/brakeman/report.html
91
+ COMMAND
92
+ exit(1) unless $CHILD_STATUS.success?
93
+ end
94
+
84
95
  def self.exit_on_failure?
85
96
  true
86
97
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module NetsoftDanger
4
- VERSION = '0.4.1'
4
+ VERSION = '0.4.5'
5
5
  end
@@ -16,15 +16,14 @@ Gem::Specification.new do |s|
16
16
  s.files = `git ls-files`.split("\n")
17
17
  s.require_paths = ['lib']
18
18
 
19
+ s.required_ruby_version = '>= 2.4'
20
+
19
21
  s.add_runtime_dependency 'danger', '~> 5.0'
20
22
  s.add_runtime_dependency 'faraday'
23
+ s.add_runtime_dependency 'simplecov', '~> 0.20.0'
21
24
  s.add_runtime_dependency 'thor'
22
25
 
23
26
  s.add_development_dependency 'rake'
24
27
 
25
- s.add_development_dependency 'netsoft-rubocop', '= 1.0.1'
26
- s.add_development_dependency 'rubocop', '= 0.74.0'
27
- s.add_development_dependency 'rubocop-performance', '= 1.5.2'
28
- s.add_development_dependency 'rubocop-rails', '= 2.4.2'
29
- s.add_development_dependency 'rubocop-rspec', '= 1.38.1'
28
+ s.add_development_dependency 'netsoft-rubocop', '= 1.1.2'
30
29
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: netsoft-danger
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - urkle
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-11-18 00:00:00.000000000 Z
11
+ date: 2021-10-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: danger
@@ -39,27 +39,27 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: thor
42
+ name: simplecov
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">="
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: 0.20.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">="
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: 0.20.0
55
55
  - !ruby/object:Gem::Dependency
56
- name: rake
56
+ name: thor
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
- type: :development
62
+ type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
@@ -67,75 +67,33 @@ dependencies:
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
- name: netsoft-rubocop
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - '='
74
- - !ruby/object:Gem::Version
75
- version: 1.0.1
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - '='
81
- - !ruby/object:Gem::Version
82
- version: 1.0.1
83
- - !ruby/object:Gem::Dependency
84
- name: rubocop
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - '='
88
- - !ruby/object:Gem::Version
89
- version: 0.74.0
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - '='
95
- - !ruby/object:Gem::Version
96
- version: 0.74.0
97
- - !ruby/object:Gem::Dependency
98
- name: rubocop-performance
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - '='
102
- - !ruby/object:Gem::Version
103
- version: 1.5.2
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - '='
109
- - !ruby/object:Gem::Version
110
- version: 1.5.2
111
- - !ruby/object:Gem::Dependency
112
- name: rubocop-rails
70
+ name: rake
113
71
  requirement: !ruby/object:Gem::Requirement
114
72
  requirements:
115
- - - '='
73
+ - - ">="
116
74
  - !ruby/object:Gem::Version
117
- version: 2.4.2
75
+ version: '0'
118
76
  type: :development
119
77
  prerelease: false
120
78
  version_requirements: !ruby/object:Gem::Requirement
121
79
  requirements:
122
- - - '='
80
+ - - ">="
123
81
  - !ruby/object:Gem::Version
124
- version: 2.4.2
82
+ version: '0'
125
83
  - !ruby/object:Gem::Dependency
126
- name: rubocop-rspec
84
+ name: netsoft-rubocop
127
85
  requirement: !ruby/object:Gem::Requirement
128
86
  requirements:
129
87
  - - '='
130
88
  - !ruby/object:Gem::Version
131
- version: 1.38.1
89
+ version: 1.1.2
132
90
  type: :development
133
91
  prerelease: false
134
92
  version_requirements: !ruby/object:Gem::Requirement
135
93
  requirements:
136
94
  - - '='
137
95
  - !ruby/object:Gem::Version
138
- version: 1.38.1
96
+ version: 1.1.2
139
97
  description: Packages a Dangerfile to be used with Danger.
140
98
  email: []
141
99
  executables:
@@ -144,6 +102,8 @@ extensions: []
144
102
  extra_rdoc_files: []
145
103
  files:
146
104
  - ".circleci/config.yml"
105
+ - ".github/PULL_REQUEST_TEMPLATE.md"
106
+ - ".github/PULL_REQUEST_TEMPLATE.txt"
147
107
  - ".gitignore"
148
108
  - ".rubocop.yml"
149
109
  - CHANGELOG.md
@@ -172,15 +132,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
172
132
  requirements:
173
133
  - - ">="
174
134
  - !ruby/object:Gem::Version
175
- version: '0'
135
+ version: '2.4'
176
136
  required_rubygems_version: !ruby/object:Gem::Requirement
177
137
  requirements:
178
138
  - - ">="
179
139
  - !ruby/object:Gem::Version
180
140
  version: '0'
181
141
  requirements: []
182
- rubyforge_project:
183
- rubygems_version: 2.7.7
142
+ rubygems_version: 3.0.3
184
143
  signing_key:
185
144
  specification_version: 4
186
145
  summary: Danger.systems conventions for Netsoft projects.