rails-route-checker 0.2.4 → 0.2.9

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: 3604e0534bad28fed12e85404774e01507b811767f3b08606963d8db34eeffd1
4
- data.tar.gz: 33ac9a2201800a8034242cbee920b693b8dd4772a7b44d4e5834df06f7977e5a
3
+ metadata.gz: 6a033b51eb9cdaf882526b2d66561fc4c172152f72a66a9ba20b149feb083f5c
4
+ data.tar.gz: 6458250f79b92009d94a66d7e7472f0beb063100883aac46a69d0c9a9ecd6406
5
5
  SHA512:
6
- metadata.gz: b82d44db72af06feda748069d51b060e403559e73ddbe0d8589ff551b086e7477868c9205ee232ae8fe2e81499083aedef70e0c0d572be07a6ee6ca75f0eb094
7
- data.tar.gz: baca9417795fb9ad33b776a9e011951f5c78ba5296b6fe189d0a31b94c8787fdeff529c8a899a513f4132899d1b460179d7c58c48d6a6ebec8c8591a34ad5912
6
+ metadata.gz: 61b1815bfcf53a03f4fb7d1f9a095c3aa8705cd432cb9b9e1f7697bf79736ade476fd683e6053c3b142219d1800923d02d3d19edc8e74869b3f72828e3ab515d
7
+ data.tar.gz: a28a726a4438b503ef92ed77002643d05a3007aa65c49fc489932a721a0ef13d61cb2a1b149014c4d5b03308d7b8ef0f3fd9bdb440fbc5aec7483ba0c71f7562
data/Gemfile CHANGED
@@ -1,2 +1,4 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
  gemspec
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
4
  require 'rails-route-checker'
4
5
  require 'optparse'
@@ -24,6 +25,6 @@ end.parse!
24
25
 
25
26
  options[:config_file] = '.rails-route-checker.yml' if File.exist?('.rails-route-checker.yml') && !options[:config_file]
26
27
 
27
- rrc = RailsRouteChecker::Runner.new(options)
28
+ rrc = RailsRouteChecker::Runner.new(**options)
28
29
  puts rrc.output
29
30
  exit rrc.issues? ? 1 : 0
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require_relative 'rails-route-checker/app_interface'
2
4
  require_relative 'rails-route-checker/config_file'
3
5
  require_relative 'rails-route-checker/loaded_app'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
4
  class AppInterface
3
5
  def initialize(**opts)
@@ -42,7 +44,7 @@ module RailsRouteChecker
42
44
 
43
45
  info = controller_information[controller]
44
46
  return true if info[:actions].include?(action)
45
- return true if info[:lookup_context] && info[:lookup_context].template_exists?("#{controller}/#{action}")
47
+ return true if info[:lookup_context]&.template_exists?("#{controller}/#{action}")
46
48
 
47
49
  false
48
50
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
4
  class ConfigFile
3
5
  def initialize(filename)
@@ -1,18 +1,31 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
4
  class LoadedApp
3
5
  def initialize
4
- @app = suppress_output do
5
- app_base_path = Dir.pwd
6
+ app_base_path = Dir.pwd
7
+ suppress_output do
6
8
  require_relative "#{app_base_path}/config/boot"
7
- require_relative "#{Dir.pwd}/config/environment"
9
+ end
10
+
11
+ begin
12
+ suppress_output do
13
+ require_relative "#{Dir.pwd}/config/environment"
14
+ end
15
+ rescue Exception => e
16
+ puts "Requiring your config/environment.rb file failed."
17
+ puts "This means that something raised while trying to start Rails."
18
+ puts ""
19
+ puts e.backtrace
20
+ raise(e)
21
+ end
8
22
 
9
- a = Rails.application
10
- a.eager_load!
23
+ suppress_output do
24
+ @app = Rails.application
25
+ @app.eager_load!
11
26
  attempt_to_load_default_controllers
12
- a.reload_routes!
27
+ @app.reload_routes!
13
28
  Rails::Engine.subclasses.each(&:eager_load!)
14
-
15
- a
16
29
  end
17
30
  end
18
31
 
@@ -23,7 +36,7 @@ module RailsRouteChecker
23
36
  reject_route?(r)
24
37
  end.uniq
25
38
 
26
- return @routes unless @app.config.respond_to?(:assets)
39
+ return @routes unless app.config.respond_to?(:assets)
27
40
 
28
41
  use_spec = defined?(ActionDispatch::Journey::Route) || defined?(Journey::Route)
29
42
  @routes.reject do |route|
@@ -38,7 +51,7 @@ module RailsRouteChecker
38
51
 
39
52
  def controller_information
40
53
  @controller_information ||= ActionController::Base.descendants.map do |controller|
41
- next if controller.controller_path.start_with?('rails/')
54
+ next if controller.controller_path.nil? || controller.controller_path.start_with?('rails/')
42
55
 
43
56
  [
44
57
  controller.controller_path,
@@ -85,7 +98,7 @@ module RailsRouteChecker
85
98
  end
86
99
 
87
100
  def attempt_to_load_default_controllers
88
- # rubocop:disable Lint/HandleExceptions
101
+ # rubocop:disable Lint/SuppressedException
89
102
  begin
90
103
  ::Rails::InfoController
91
104
  rescue NameError # ignored
@@ -98,7 +111,7 @@ module RailsRouteChecker
98
111
  ::Rails::MailersController
99
112
  rescue NameError # ignored
100
113
  end
101
- # rubocop:enable Lint/HandleExceptions
114
+ # rubocop:enable Lint/SuppressedException
102
115
  end
103
116
 
104
117
  def reject_route?(route)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
4
  module Parsers
3
5
  module ErbParser
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require_relative 'haml_parser/document'
2
4
  require_relative 'haml_parser/tree/node'
3
5
  require_relative 'haml_parser/tree/filter_node'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
4
  module Parsers
3
5
  module HamlParser
@@ -12,7 +14,7 @@ module RailsRouteChecker
12
14
  options = Haml::Options.new
13
15
  original_tree = case version
14
16
  when '~> 4.0', '~> 4.1' then Haml::Parser.new(@source, options).parse
15
- when '~> 5.0' then Haml::Parser.new(options).call(@source)
17
+ when '~> 5.0', '~> 5.1', '~> 5.2' then Haml::Parser.new(options).call(@source)
16
18
  else raise "Cannot handle Haml version: #{version}"
17
19
  end
18
20
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
4
  module Parsers
3
5
  module HamlParser
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
4
  module Parsers
3
5
  module HamlParser
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
4
  module Parsers
3
5
  module HamlParser
@@ -68,7 +70,7 @@ module RailsRouteChecker
68
70
  next_sibling = siblings.next(self)
69
71
  return next_sibling if next_sibling
70
72
 
71
- parent.successor if parent
73
+ parent&.successor
72
74
  end
73
75
 
74
76
  def next_node
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
4
  module Parsers
3
5
  module HamlParser
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
4
  module Parsers
3
5
  module HamlParser
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
4
  module Parsers
3
5
  module HamlParser
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
4
  module Parsers
3
5
  module HamlParser
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
4
  module Parsers
3
5
  module Loader
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'ripper'
2
4
 
3
5
  module RailsRouteChecker
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
4
  class Runner
3
5
  def initialize(**opts)
@@ -14,7 +16,7 @@ module RailsRouteChecker
14
16
  end
15
17
 
16
18
  def issues?
17
- issues.values.flatten(1).count > 0
19
+ issues.values.flatten(1).count.positive?
18
20
  end
19
21
 
20
22
  def output
@@ -31,7 +33,7 @@ module RailsRouteChecker
31
33
  private
32
34
 
33
35
  def app_interface
34
- @app_interface ||= RailsRouteChecker::AppInterface.new(@options)
36
+ @app_interface ||= RailsRouteChecker::AppInterface.new(**@options)
35
37
  end
36
38
 
37
39
  def missing_actions_output
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsRouteChecker
2
- VERSION = '0.2.4'.freeze
4
+ VERSION = '0.2.9'
3
5
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  lib = File.expand_path('lib', __dir__)
2
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
5
  require 'rails-route-checker/version'
@@ -21,7 +23,7 @@ Gem::Specification.new do |spec|
21
23
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
22
24
  spec.require_paths = ['lib']
23
25
 
24
- spec.add_development_dependency 'bundler', '~> 1.15'
25
- spec.add_development_dependency 'rake', '~> 10.0'
26
- spec.add_development_dependency 'rubocop', '~> 0.60'
26
+ spec.add_development_dependency 'bundler', '~> 2.1'
27
+ spec.add_development_dependency 'rake', '~> 13.0'
28
+ spec.add_development_dependency 'rubocop', '~> 0.86'
27
29
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails-route-checker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.2.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dave Allie
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-11-26 00:00:00.000000000 Z
11
+ date: 2020-12-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,42 +16,42 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.15'
19
+ version: '2.1'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.15'
26
+ version: '2.1'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '13.0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: '13.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rubocop
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0.60'
47
+ version: '0.86'
48
48
  type: :development
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.60'
54
+ version: '0.86'
55
55
  description: A linting tool that helps you find any routes defined in your routes.rb
56
56
  file that don't have a corresponding controller action, and find any _path or _url
57
57
  calls that don't have a corresponding route in the routes.rb file.
@@ -87,7 +87,7 @@ homepage: https://github.com/daveallie/rails-route-checker
87
87
  licenses:
88
88
  - MIT
89
89
  metadata: {}
90
- post_install_message:
90
+ post_install_message:
91
91
  rdoc_options: []
92
92
  require_paths:
93
93
  - lib
@@ -102,9 +102,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
102
102
  - !ruby/object:Gem::Version
103
103
  version: '0'
104
104
  requirements: []
105
- rubyforge_project:
106
- rubygems_version: 2.7.7
107
- signing_key:
105
+ rubygems_version: 3.1.2
106
+ signing_key:
108
107
  specification_version: 4
109
108
  summary: A linting tool for your Rails routes
110
109
  test_files: []