repo_analyzer 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (130) hide show
  1. checksums.yaml +7 -0
  2. data/.circleci/config.yml +103 -0
  3. data/.circleci/setup-rubygems.sh +3 -0
  4. data/.editorconfig +24 -0
  5. data/.gitignore +9 -0
  6. data/.rspec +3 -0
  7. data/.rubocop.yml +505 -0
  8. data/.ruby-version +1 -0
  9. data/CHANGELOG.md +7 -0
  10. data/Gemfile +12 -0
  11. data/Gemfile.lock +320 -0
  12. data/Guardfile +12 -0
  13. data/LICENSE.txt +21 -0
  14. data/README.md +165 -0
  15. data/Rakefile +10 -0
  16. data/app/assets/config/repo_analyzer_manifest.js +1 -0
  17. data/app/assets/images/repo_analyzer/.keep +0 -0
  18. data/app/assets/stylesheets/repo_analyzer/application.css +15 -0
  19. data/app/clients/repo_analyzer/github_client.rb +31 -0
  20. data/app/controllers/repo_analyzer/application_controller.rb +4 -0
  21. data/app/extractors/repo_analyzer/brakeman_extractor.rb +33 -0
  22. data/app/extractors/repo_analyzer/circleci_extractor.rb +46 -0
  23. data/app/extractors/repo_analyzer/github_extractor.rb +64 -0
  24. data/app/extractors/repo_analyzer/power_types_extractor.rb +21 -0
  25. data/app/extractors/repo_analyzer/project_config_extractor.rb +53 -0
  26. data/app/extractors/repo_analyzer/project_info_extractor.rb +20 -0
  27. data/app/extractors/repo_analyzer/project_versions_extractor.rb +80 -0
  28. data/app/extractors/repo_analyzer/rails_best_practices_extractor.rb +36 -0
  29. data/app/extractors/repo_analyzer/rubocop_extractor.rb +74 -0
  30. data/app/extractors/repo_analyzer/tests_info_extractor.rb +87 -0
  31. data/app/helpers/repo_analyzer/application_helper.rb +4 -0
  32. data/app/jobs/repo_analyzer/application_job.rb +4 -0
  33. data/app/jobs/repo_analyzer/extract_project_info_job.rb +35 -0
  34. data/app/jobs/repo_analyzer/post_extracted_info_job.rb +28 -0
  35. data/app/mailers/repo_analyzer/application_mailer.rb +6 -0
  36. data/app/models/repo_analyzer/application_record.rb +5 -0
  37. data/app/utils/output_utils.rb +10 -0
  38. data/app/values/repo_analyzer/project_data_bridge.rb +48 -0
  39. data/app/views/layouts/repo_analyzer/application.html.erb +15 -0
  40. data/bin/rails +25 -0
  41. data/config/routes.rb +2 -0
  42. data/lib/generators/repo_analyzer/install/USAGE +5 -0
  43. data/lib/generators/repo_analyzer/install/install_generator.rb +19 -0
  44. data/lib/generators/repo_analyzer/install/templates/initializer.rb +2 -0
  45. data/lib/repo_analyzer/engine.rb +15 -0
  46. data/lib/repo_analyzer/example_class.rb +7 -0
  47. data/lib/repo_analyzer/version.rb +3 -0
  48. data/lib/repo_analyzer.rb +48 -0
  49. data/lib/tasks/repo_analyzer_tasks.rake +7 -0
  50. data/repo_analyzer.gemspec +42 -0
  51. data/spec/assets/test_project/README.md +1 -0
  52. data/spec/assets/test_project/app/commands/some_comand.rb +0 -0
  53. data/spec/assets/test_project/app/javascript/src/component.spec.js +0 -0
  54. data/spec/assets/test_project/app/javascript/src/components/component.spec.js +0 -0
  55. data/spec/assets/test_project/app/observers/some_observer.rb +0 -0
  56. data/spec/assets/test_project/old_circleci_config.yml +21 -0
  57. data/spec/assets/test_project/spec/commands/command1_spec.rb +0 -0
  58. data/spec/assets/test_project/spec/commands/command2_spec.rb +0 -0
  59. data/spec/assets/test_project/spec/integration/integration1_spec.rb +0 -0
  60. data/spec/assets/test_project/spec/system/system_test_spec.rb +0 -0
  61. data/spec/assets/test_project/valid_circleci_config.yml +152 -0
  62. data/spec/assets/test_project/valid_gem_gemfile_lock +14 -0
  63. data/spec/assets/test_project/valid_gemfile_lock +684 -0
  64. data/spec/assets/test_project/valid_makefile +35 -0
  65. data/spec/assets/test_project/valid_package_json +84 -0
  66. data/spec/assets/test_project/valid_package_json_without_vue +74 -0
  67. data/spec/assets/test_project/valid_rubocop_rules.yml +54 -0
  68. data/spec/dummy/Rakefile +6 -0
  69. data/spec/dummy/app/assets/config/manifest.js +3 -0
  70. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  71. data/spec/dummy/app/channels/application_cable/channel.rb +4 -0
  72. data/spec/dummy/app/channels/application_cable/connection.rb +4 -0
  73. data/spec/dummy/app/controllers/application_controller.rb +2 -0
  74. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  75. data/spec/dummy/app/javascript/packs/application.js +15 -0
  76. data/spec/dummy/app/jobs/application_job.rb +7 -0
  77. data/spec/dummy/app/mailers/application_mailer.rb +4 -0
  78. data/spec/dummy/app/models/application_record.rb +3 -0
  79. data/spec/dummy/app/views/layouts/application.html.erb +15 -0
  80. data/spec/dummy/app/views/layouts/mailer.html.erb +13 -0
  81. data/spec/dummy/app/views/layouts/mailer.text.erb +1 -0
  82. data/spec/dummy/bin/rails +4 -0
  83. data/spec/dummy/bin/rake +4 -0
  84. data/spec/dummy/bin/setup +33 -0
  85. data/spec/dummy/config/application.rb +38 -0
  86. data/spec/dummy/config/boot.rb +5 -0
  87. data/spec/dummy/config/cable.yml +10 -0
  88. data/spec/dummy/config/database.yml +25 -0
  89. data/spec/dummy/config/environment.rb +5 -0
  90. data/spec/dummy/config/environments/development.rb +81 -0
  91. data/spec/dummy/config/environments/production.rb +120 -0
  92. data/spec/dummy/config/environments/test.rb +59 -0
  93. data/spec/dummy/config/initializers/application_controller_renderer.rb +8 -0
  94. data/spec/dummy/config/initializers/assets.rb +12 -0
  95. data/spec/dummy/config/initializers/backtrace_silencers.rb +8 -0
  96. data/spec/dummy/config/initializers/content_security_policy.rb +28 -0
  97. data/spec/dummy/config/initializers/cookies_serializer.rb +5 -0
  98. data/spec/dummy/config/initializers/filter_parameter_logging.rb +6 -0
  99. data/spec/dummy/config/initializers/inflections.rb +16 -0
  100. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  101. data/spec/dummy/config/initializers/permissions_policy.rb +11 -0
  102. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  103. data/spec/dummy/config/locales/en.yml +33 -0
  104. data/spec/dummy/config/puma.rb +43 -0
  105. data/spec/dummy/config/routes.rb +3 -0
  106. data/spec/dummy/config/storage.yml +34 -0
  107. data/spec/dummy/config.ru +6 -0
  108. data/spec/dummy/public/404.html +67 -0
  109. data/spec/dummy/public/422.html +67 -0
  110. data/spec/dummy/public/500.html +66 -0
  111. data/spec/dummy/public/apple-touch-icon-precomposed.png +0 -0
  112. data/spec/dummy/public/apple-touch-icon.png +0 -0
  113. data/spec/dummy/public/favicon.ico +0 -0
  114. data/spec/extractors/brakeman_extractor_spec.rb +73 -0
  115. data/spec/extractors/circleci_extractor_spec.rb +45 -0
  116. data/spec/extractors/github_extractor_spec.rb +77 -0
  117. data/spec/extractors/power_types_extractor_spec.rb +18 -0
  118. data/spec/extractors/project_config_extractor_spec.rb +52 -0
  119. data/spec/extractors/project_versions_extractor_spec.rb +63 -0
  120. data/spec/extractors/rails_best_practices_extractor_spec.rb +53 -0
  121. data/spec/extractors/rubocop_extractor_spec.rb +113 -0
  122. data/spec/extractors/tests_info_extractor_spec.rb +65 -0
  123. data/spec/fixtures/files/image.png +0 -0
  124. data/spec/fixtures/files/video.mp4 +0 -0
  125. data/spec/jobs/repo_analyzer/extract_project_info_job_spec.rb +50 -0
  126. data/spec/jobs/repo_analyzer/post_extracted_info_job_spec.rb +52 -0
  127. data/spec/rails_helper.rb +42 -0
  128. data/spec/spec_helper.rb +9 -0
  129. data/spec/support/repo_analyzer_helpers.rb +37 -0
  130. metadata +518 -0
@@ -0,0 +1,42 @@
1
+ require 'simplecov'
2
+ require 'coveralls'
3
+
4
+ formatters = [SimpleCov::Formatter::HTMLFormatter, Coveralls::SimpleCov::Formatter]
5
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter::new(formatters)
6
+
7
+ SimpleCov.start do
8
+ add_filter do |src|
9
+ r = [
10
+ src.filename =~ /lib/,
11
+ src.filename =~ /models/,
12
+ src.filename =~ /controllers/
13
+ ].uniq
14
+ r.count == 1 && r.first.nil?
15
+ end
16
+
17
+ add_filter "engine.rb"
18
+ add_filter "spec.rb"
19
+ end
20
+
21
+ ENV["RAILS_ENV"] ||= "test"
22
+ require File.expand_path("../../spec/dummy/config/environment", __FILE__)
23
+ abort("The Rails environment is running in production mode!") if Rails.env.production?
24
+ require "pry"
25
+ require "spec_helper"
26
+ require "rspec/rails"
27
+ require "factory_bot_rails"
28
+
29
+ Dir[::RepoAnalyzer::Engine.root.join("spec/support/**/*.rb")].sort.each { |f| require f }
30
+
31
+ RSpec.configure do |config|
32
+ config.fixture_path = "#{::RepoAnalyzer::Engine.root}/spec/assets"
33
+ config.use_transactional_fixtures = true
34
+ config.infer_spec_type_from_file_location!
35
+ config.filter_rails_from_backtrace!
36
+
37
+ config.filter_run :focus
38
+ config.run_all_when_everything_filtered = true
39
+
40
+ config.include FactoryBot::Syntax::Methods
41
+ config.include ActionDispatch::TestProcess
42
+ end
@@ -0,0 +1,9 @@
1
+ RSpec.configure do |config|
2
+ config.expect_with :rspec do |expectations|
3
+ expectations.include_chain_clauses_in_custom_matcher_descriptions = true
4
+ end
5
+
6
+ config.mock_with :rspec do |mocks|
7
+ mocks.verify_partial_doubles = true
8
+ end
9
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RepoAnalyzerExtractorHelpers
4
+ extend ActiveSupport::Concern
5
+
6
+ included do
7
+ let(:extractor) { described_class.new(project_data_bridge) }
8
+ let(:repo_name) { "test_project" }
9
+ let(:project_data_bridge) { RepoAnalyzer::ProjectDataBridge.new(repo_name) }
10
+ let(:project_path) { "spec/assets/test_project" }
11
+ let(:github_client) { instance_double("RepoAnalyzer::GithubClient") }
12
+
13
+ def extract
14
+ extractor.extract
15
+ end
16
+
17
+ def mock_file_content(file_path, fake_file_path)
18
+ fake_file_content = File.open("#{project_path}/#{fake_file_path}").read
19
+ allow(project_data_bridge).to receive(:file_content)
20
+ .with(file_path).and_return(fake_file_content)
21
+ end
22
+
23
+ def mock_file_existance(file_path)
24
+ allow(project_data_bridge).to receive(:file_exist?)
25
+ .with(file_path).and_return(true)
26
+ end
27
+
28
+ before do
29
+ allow(project_data_bridge).to receive(:project_path).and_return(project_path)
30
+ allow(RepoAnalyzer::GithubClient).to receive(:new).and_return(github_client)
31
+ end
32
+ end
33
+ end
34
+
35
+ RSpec.configure do |config|
36
+ config.include RepoAnalyzerExtractorHelpers, repo_analyzer_extractor_helpers: true
37
+ end
metadata ADDED
@@ -0,0 +1,518 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: repo_analyzer
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Platanus
8
+ - Leandro Segovia
9
+ autorequire:
10
+ bindir: exe
11
+ cert_chain: []
12
+ date: 2023-02-01 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: brakeman
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - ">="
19
+ - !ruby/object:Gem::Version
20
+ version: '0'
21
+ type: :runtime
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ version: '0'
28
+ - !ruby/object:Gem::Dependency
29
+ name: octokit
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - "~>"
33
+ - !ruby/object:Gem::Version
34
+ version: '4.0'
35
+ type: :runtime
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - "~>"
40
+ - !ruby/object:Gem::Version
41
+ version: '4.0'
42
+ - !ruby/object:Gem::Dependency
43
+ name: rails
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - ">="
47
+ - !ruby/object:Gem::Version
48
+ version: '6.0'
49
+ type: :runtime
50
+ prerelease: false
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: '6.0'
56
+ - !ruby/object:Gem::Dependency
57
+ name: rails_best_practices
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ type: :runtime
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ - !ruby/object:Gem::Dependency
71
+ name: rubocop
72
+ requirement: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - "~>"
75
+ - !ruby/object:Gem::Version
76
+ version: '1.9'
77
+ type: :runtime
78
+ prerelease: false
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - "~>"
82
+ - !ruby/object:Gem::Version
83
+ version: '1.9'
84
+ - !ruby/object:Gem::Dependency
85
+ name: rubocop-performance
86
+ requirement: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ - - ">="
89
+ - !ruby/object:Gem::Version
90
+ version: '0'
91
+ type: :runtime
92
+ prerelease: false
93
+ version_requirements: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ">="
96
+ - !ruby/object:Gem::Version
97
+ version: '0'
98
+ - !ruby/object:Gem::Dependency
99
+ name: rubocop-platanus
100
+ requirement: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - "~>"
103
+ - !ruby/object:Gem::Version
104
+ version: '0.2'
105
+ type: :runtime
106
+ prerelease: false
107
+ version_requirements: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - "~>"
110
+ - !ruby/object:Gem::Version
111
+ version: '0.2'
112
+ - !ruby/object:Gem::Dependency
113
+ name: rubocop-rails
114
+ requirement: !ruby/object:Gem::Requirement
115
+ requirements:
116
+ - - ">="
117
+ - !ruby/object:Gem::Version
118
+ version: '0'
119
+ type: :runtime
120
+ prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ">="
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: rubocop-rspec
128
+ requirement: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - "~>"
131
+ - !ruby/object:Gem::Version
132
+ version: '2.2'
133
+ type: :runtime
134
+ prerelease: false
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - "~>"
138
+ - !ruby/object:Gem::Version
139
+ version: '2.2'
140
+ - !ruby/object:Gem::Dependency
141
+ name: bundler
142
+ requirement: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - "~>"
145
+ - !ruby/object:Gem::Version
146
+ version: 2.4.3
147
+ type: :development
148
+ prerelease: false
149
+ version_requirements: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - "~>"
152
+ - !ruby/object:Gem::Version
153
+ version: 2.4.3
154
+ - !ruby/object:Gem::Dependency
155
+ name: coveralls
156
+ requirement: !ruby/object:Gem::Requirement
157
+ requirements:
158
+ - - ">="
159
+ - !ruby/object:Gem::Version
160
+ version: '0'
161
+ type: :development
162
+ prerelease: false
163
+ version_requirements: !ruby/object:Gem::Requirement
164
+ requirements:
165
+ - - ">="
166
+ - !ruby/object:Gem::Version
167
+ version: '0'
168
+ - !ruby/object:Gem::Dependency
169
+ name: factory_bot_rails
170
+ requirement: !ruby/object:Gem::Requirement
171
+ requirements:
172
+ - - ">="
173
+ - !ruby/object:Gem::Version
174
+ version: '0'
175
+ type: :development
176
+ prerelease: false
177
+ version_requirements: !ruby/object:Gem::Requirement
178
+ requirements:
179
+ - - ">="
180
+ - !ruby/object:Gem::Version
181
+ version: '0'
182
+ - !ruby/object:Gem::Dependency
183
+ name: guard-rspec
184
+ requirement: !ruby/object:Gem::Requirement
185
+ requirements:
186
+ - - ">="
187
+ - !ruby/object:Gem::Version
188
+ version: '0'
189
+ type: :development
190
+ prerelease: false
191
+ version_requirements: !ruby/object:Gem::Requirement
192
+ requirements:
193
+ - - ">="
194
+ - !ruby/object:Gem::Version
195
+ version: '0'
196
+ - !ruby/object:Gem::Dependency
197
+ name: pry
198
+ requirement: !ruby/object:Gem::Requirement
199
+ requirements:
200
+ - - ">="
201
+ - !ruby/object:Gem::Version
202
+ version: '0'
203
+ type: :development
204
+ prerelease: false
205
+ version_requirements: !ruby/object:Gem::Requirement
206
+ requirements:
207
+ - - ">="
208
+ - !ruby/object:Gem::Version
209
+ version: '0'
210
+ - !ruby/object:Gem::Dependency
211
+ name: pry-rails
212
+ requirement: !ruby/object:Gem::Requirement
213
+ requirements:
214
+ - - ">="
215
+ - !ruby/object:Gem::Version
216
+ version: '0'
217
+ type: :development
218
+ prerelease: false
219
+ version_requirements: !ruby/object:Gem::Requirement
220
+ requirements:
221
+ - - ">="
222
+ - !ruby/object:Gem::Version
223
+ version: '0'
224
+ - !ruby/object:Gem::Dependency
225
+ name: rspec_junit_formatter
226
+ requirement: !ruby/object:Gem::Requirement
227
+ requirements:
228
+ - - ">="
229
+ - !ruby/object:Gem::Version
230
+ version: '0'
231
+ type: :development
232
+ prerelease: false
233
+ version_requirements: !ruby/object:Gem::Requirement
234
+ requirements:
235
+ - - ">="
236
+ - !ruby/object:Gem::Version
237
+ version: '0'
238
+ - !ruby/object:Gem::Dependency
239
+ name: rspec-rails
240
+ requirement: !ruby/object:Gem::Requirement
241
+ requirements:
242
+ - - ">="
243
+ - !ruby/object:Gem::Version
244
+ version: '0'
245
+ type: :development
246
+ prerelease: false
247
+ version_requirements: !ruby/object:Gem::Requirement
248
+ requirements:
249
+ - - ">="
250
+ - !ruby/object:Gem::Version
251
+ version: '0'
252
+ - !ruby/object:Gem::Dependency
253
+ name: rubocop
254
+ requirement: !ruby/object:Gem::Requirement
255
+ requirements:
256
+ - - "~>"
257
+ - !ruby/object:Gem::Version
258
+ version: '1.9'
259
+ type: :development
260
+ prerelease: false
261
+ version_requirements: !ruby/object:Gem::Requirement
262
+ requirements:
263
+ - - "~>"
264
+ - !ruby/object:Gem::Version
265
+ version: '1.9'
266
+ - !ruby/object:Gem::Dependency
267
+ name: rubocop-rails
268
+ requirement: !ruby/object:Gem::Requirement
269
+ requirements:
270
+ - - ">="
271
+ - !ruby/object:Gem::Version
272
+ version: '0'
273
+ type: :development
274
+ prerelease: false
275
+ version_requirements: !ruby/object:Gem::Requirement
276
+ requirements:
277
+ - - ">="
278
+ - !ruby/object:Gem::Version
279
+ version: '0'
280
+ description: Rails engine to extract technical debt
281
+ email:
282
+ - rubygems@platan.us
283
+ - leandro@platan.us
284
+ executables: []
285
+ extensions: []
286
+ extra_rdoc_files: []
287
+ files:
288
+ - ".circleci/config.yml"
289
+ - ".circleci/setup-rubygems.sh"
290
+ - ".editorconfig"
291
+ - ".gitignore"
292
+ - ".rspec"
293
+ - ".rubocop.yml"
294
+ - ".ruby-version"
295
+ - CHANGELOG.md
296
+ - Gemfile
297
+ - Gemfile.lock
298
+ - Guardfile
299
+ - LICENSE.txt
300
+ - README.md
301
+ - Rakefile
302
+ - app/assets/config/repo_analyzer_manifest.js
303
+ - app/assets/images/repo_analyzer/.keep
304
+ - app/assets/stylesheets/repo_analyzer/application.css
305
+ - app/clients/repo_analyzer/github_client.rb
306
+ - app/controllers/repo_analyzer/application_controller.rb
307
+ - app/extractors/repo_analyzer/brakeman_extractor.rb
308
+ - app/extractors/repo_analyzer/circleci_extractor.rb
309
+ - app/extractors/repo_analyzer/github_extractor.rb
310
+ - app/extractors/repo_analyzer/power_types_extractor.rb
311
+ - app/extractors/repo_analyzer/project_config_extractor.rb
312
+ - app/extractors/repo_analyzer/project_info_extractor.rb
313
+ - app/extractors/repo_analyzer/project_versions_extractor.rb
314
+ - app/extractors/repo_analyzer/rails_best_practices_extractor.rb
315
+ - app/extractors/repo_analyzer/rubocop_extractor.rb
316
+ - app/extractors/repo_analyzer/tests_info_extractor.rb
317
+ - app/helpers/repo_analyzer/application_helper.rb
318
+ - app/jobs/repo_analyzer/application_job.rb
319
+ - app/jobs/repo_analyzer/extract_project_info_job.rb
320
+ - app/jobs/repo_analyzer/post_extracted_info_job.rb
321
+ - app/mailers/repo_analyzer/application_mailer.rb
322
+ - app/models/repo_analyzer/application_record.rb
323
+ - app/utils/output_utils.rb
324
+ - app/values/repo_analyzer/project_data_bridge.rb
325
+ - app/views/layouts/repo_analyzer/application.html.erb
326
+ - bin/rails
327
+ - config/routes.rb
328
+ - lib/generators/repo_analyzer/install/USAGE
329
+ - lib/generators/repo_analyzer/install/install_generator.rb
330
+ - lib/generators/repo_analyzer/install/templates/initializer.rb
331
+ - lib/repo_analyzer.rb
332
+ - lib/repo_analyzer/engine.rb
333
+ - lib/repo_analyzer/example_class.rb
334
+ - lib/repo_analyzer/version.rb
335
+ - lib/tasks/repo_analyzer_tasks.rake
336
+ - repo_analyzer.gemspec
337
+ - spec/assets/test_project/README.md
338
+ - spec/assets/test_project/app/commands/some_comand.rb
339
+ - spec/assets/test_project/app/javascript/src/component.spec.js
340
+ - spec/assets/test_project/app/javascript/src/components/component.spec.js
341
+ - spec/assets/test_project/app/observers/some_observer.rb
342
+ - spec/assets/test_project/old_circleci_config.yml
343
+ - spec/assets/test_project/spec/commands/command1_spec.rb
344
+ - spec/assets/test_project/spec/commands/command2_spec.rb
345
+ - spec/assets/test_project/spec/integration/integration1_spec.rb
346
+ - spec/assets/test_project/spec/system/system_test_spec.rb
347
+ - spec/assets/test_project/valid_circleci_config.yml
348
+ - spec/assets/test_project/valid_gem_gemfile_lock
349
+ - spec/assets/test_project/valid_gemfile_lock
350
+ - spec/assets/test_project/valid_makefile
351
+ - spec/assets/test_project/valid_package_json
352
+ - spec/assets/test_project/valid_package_json_without_vue
353
+ - spec/assets/test_project/valid_rubocop_rules.yml
354
+ - spec/dummy/Rakefile
355
+ - spec/dummy/app/assets/config/manifest.js
356
+ - spec/dummy/app/assets/stylesheets/application.css
357
+ - spec/dummy/app/channels/application_cable/channel.rb
358
+ - spec/dummy/app/channels/application_cable/connection.rb
359
+ - spec/dummy/app/controllers/application_controller.rb
360
+ - spec/dummy/app/helpers/application_helper.rb
361
+ - spec/dummy/app/javascript/packs/application.js
362
+ - spec/dummy/app/jobs/application_job.rb
363
+ - spec/dummy/app/mailers/application_mailer.rb
364
+ - spec/dummy/app/models/application_record.rb
365
+ - spec/dummy/app/views/layouts/application.html.erb
366
+ - spec/dummy/app/views/layouts/mailer.html.erb
367
+ - spec/dummy/app/views/layouts/mailer.text.erb
368
+ - spec/dummy/bin/rails
369
+ - spec/dummy/bin/rake
370
+ - spec/dummy/bin/setup
371
+ - spec/dummy/config.ru
372
+ - spec/dummy/config/application.rb
373
+ - spec/dummy/config/boot.rb
374
+ - spec/dummy/config/cable.yml
375
+ - spec/dummy/config/database.yml
376
+ - spec/dummy/config/environment.rb
377
+ - spec/dummy/config/environments/development.rb
378
+ - spec/dummy/config/environments/production.rb
379
+ - spec/dummy/config/environments/test.rb
380
+ - spec/dummy/config/initializers/application_controller_renderer.rb
381
+ - spec/dummy/config/initializers/assets.rb
382
+ - spec/dummy/config/initializers/backtrace_silencers.rb
383
+ - spec/dummy/config/initializers/content_security_policy.rb
384
+ - spec/dummy/config/initializers/cookies_serializer.rb
385
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
386
+ - spec/dummy/config/initializers/inflections.rb
387
+ - spec/dummy/config/initializers/mime_types.rb
388
+ - spec/dummy/config/initializers/permissions_policy.rb
389
+ - spec/dummy/config/initializers/wrap_parameters.rb
390
+ - spec/dummy/config/locales/en.yml
391
+ - spec/dummy/config/puma.rb
392
+ - spec/dummy/config/routes.rb
393
+ - spec/dummy/config/storage.yml
394
+ - spec/dummy/public/404.html
395
+ - spec/dummy/public/422.html
396
+ - spec/dummy/public/500.html
397
+ - spec/dummy/public/apple-touch-icon-precomposed.png
398
+ - spec/dummy/public/apple-touch-icon.png
399
+ - spec/dummy/public/favicon.ico
400
+ - spec/extractors/brakeman_extractor_spec.rb
401
+ - spec/extractors/circleci_extractor_spec.rb
402
+ - spec/extractors/github_extractor_spec.rb
403
+ - spec/extractors/power_types_extractor_spec.rb
404
+ - spec/extractors/project_config_extractor_spec.rb
405
+ - spec/extractors/project_versions_extractor_spec.rb
406
+ - spec/extractors/rails_best_practices_extractor_spec.rb
407
+ - spec/extractors/rubocop_extractor_spec.rb
408
+ - spec/extractors/tests_info_extractor_spec.rb
409
+ - spec/fixtures/files/image.png
410
+ - spec/fixtures/files/video.mp4
411
+ - spec/jobs/repo_analyzer/extract_project_info_job_spec.rb
412
+ - spec/jobs/repo_analyzer/post_extracted_info_job_spec.rb
413
+ - spec/rails_helper.rb
414
+ - spec/spec_helper.rb
415
+ - spec/support/repo_analyzer_helpers.rb
416
+ homepage: https://github.com/platanus/repo_analyzer
417
+ licenses:
418
+ - MIT
419
+ metadata: {}
420
+ post_install_message:
421
+ rdoc_options: []
422
+ require_paths:
423
+ - lib
424
+ required_ruby_version: !ruby/object:Gem::Requirement
425
+ requirements:
426
+ - - ">="
427
+ - !ruby/object:Gem::Version
428
+ version: '0'
429
+ required_rubygems_version: !ruby/object:Gem::Requirement
430
+ requirements:
431
+ - - ">="
432
+ - !ruby/object:Gem::Version
433
+ version: '0'
434
+ requirements: []
435
+ rubygems_version: 3.1.6
436
+ signing_key:
437
+ specification_version: 4
438
+ summary: Tool to extract technical debt
439
+ test_files:
440
+ - spec/assets/test_project/README.md
441
+ - spec/assets/test_project/app/commands/some_comand.rb
442
+ - spec/assets/test_project/app/javascript/src/component.spec.js
443
+ - spec/assets/test_project/app/javascript/src/components/component.spec.js
444
+ - spec/assets/test_project/app/observers/some_observer.rb
445
+ - spec/assets/test_project/old_circleci_config.yml
446
+ - spec/assets/test_project/spec/commands/command1_spec.rb
447
+ - spec/assets/test_project/spec/commands/command2_spec.rb
448
+ - spec/assets/test_project/spec/integration/integration1_spec.rb
449
+ - spec/assets/test_project/spec/system/system_test_spec.rb
450
+ - spec/assets/test_project/valid_circleci_config.yml
451
+ - spec/assets/test_project/valid_gem_gemfile_lock
452
+ - spec/assets/test_project/valid_gemfile_lock
453
+ - spec/assets/test_project/valid_makefile
454
+ - spec/assets/test_project/valid_package_json
455
+ - spec/assets/test_project/valid_package_json_without_vue
456
+ - spec/assets/test_project/valid_rubocop_rules.yml
457
+ - spec/dummy/Rakefile
458
+ - spec/dummy/app/assets/config/manifest.js
459
+ - spec/dummy/app/assets/stylesheets/application.css
460
+ - spec/dummy/app/channels/application_cable/channel.rb
461
+ - spec/dummy/app/channels/application_cable/connection.rb
462
+ - spec/dummy/app/controllers/application_controller.rb
463
+ - spec/dummy/app/helpers/application_helper.rb
464
+ - spec/dummy/app/javascript/packs/application.js
465
+ - spec/dummy/app/jobs/application_job.rb
466
+ - spec/dummy/app/mailers/application_mailer.rb
467
+ - spec/dummy/app/models/application_record.rb
468
+ - spec/dummy/app/views/layouts/application.html.erb
469
+ - spec/dummy/app/views/layouts/mailer.html.erb
470
+ - spec/dummy/app/views/layouts/mailer.text.erb
471
+ - spec/dummy/bin/rails
472
+ - spec/dummy/bin/rake
473
+ - spec/dummy/bin/setup
474
+ - spec/dummy/config.ru
475
+ - spec/dummy/config/application.rb
476
+ - spec/dummy/config/boot.rb
477
+ - spec/dummy/config/cable.yml
478
+ - spec/dummy/config/database.yml
479
+ - spec/dummy/config/environment.rb
480
+ - spec/dummy/config/environments/development.rb
481
+ - spec/dummy/config/environments/production.rb
482
+ - spec/dummy/config/environments/test.rb
483
+ - spec/dummy/config/initializers/application_controller_renderer.rb
484
+ - spec/dummy/config/initializers/assets.rb
485
+ - spec/dummy/config/initializers/backtrace_silencers.rb
486
+ - spec/dummy/config/initializers/content_security_policy.rb
487
+ - spec/dummy/config/initializers/cookies_serializer.rb
488
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
489
+ - spec/dummy/config/initializers/inflections.rb
490
+ - spec/dummy/config/initializers/mime_types.rb
491
+ - spec/dummy/config/initializers/permissions_policy.rb
492
+ - spec/dummy/config/initializers/wrap_parameters.rb
493
+ - spec/dummy/config/locales/en.yml
494
+ - spec/dummy/config/puma.rb
495
+ - spec/dummy/config/routes.rb
496
+ - spec/dummy/config/storage.yml
497
+ - spec/dummy/public/404.html
498
+ - spec/dummy/public/422.html
499
+ - spec/dummy/public/500.html
500
+ - spec/dummy/public/apple-touch-icon-precomposed.png
501
+ - spec/dummy/public/apple-touch-icon.png
502
+ - spec/dummy/public/favicon.ico
503
+ - spec/extractors/brakeman_extractor_spec.rb
504
+ - spec/extractors/circleci_extractor_spec.rb
505
+ - spec/extractors/github_extractor_spec.rb
506
+ - spec/extractors/power_types_extractor_spec.rb
507
+ - spec/extractors/project_config_extractor_spec.rb
508
+ - spec/extractors/project_versions_extractor_spec.rb
509
+ - spec/extractors/rails_best_practices_extractor_spec.rb
510
+ - spec/extractors/rubocop_extractor_spec.rb
511
+ - spec/extractors/tests_info_extractor_spec.rb
512
+ - spec/fixtures/files/image.png
513
+ - spec/fixtures/files/video.mp4
514
+ - spec/jobs/repo_analyzer/extract_project_info_job_spec.rb
515
+ - spec/jobs/repo_analyzer/post_extracted_info_job_spec.rb
516
+ - spec/rails_helper.rb
517
+ - spec/spec_helper.rb
518
+ - spec/support/repo_analyzer_helpers.rb