routes_lazy_routes 0.4.1 → 0.4.3

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: b3a53d214d3a09b1d78449db704c5c01f161848c502e5db060d49445a27cbc44
4
- data.tar.gz: 3a1f0142211703faa3e74d038500376f38886bc44c904e55796a456bbdcb5cbc
3
+ metadata.gz: 272b3d3c76bca9133328661041ba10f7614baa22b4543c1e1a5b3290d1fc4a63
4
+ data.tar.gz: 5ec08f51f3b8441d0e1b71dc1620f95837273eb1cd9a490e2be8807dddf2e580
5
5
  SHA512:
6
- metadata.gz: 7d808c84a2d36a0ba6f0ae2bf292a157ae3912a052ccf4f8b6a557e7156591b58ddf1121dc73bcf9db32a8a363c69cf8d3ca71331acddbabc3b960785211db62
7
- data.tar.gz: 2a9219db0ec56fa7a120d736824ddf63f53af888f1f0cbb959c80857d07f79a1d015dcef2de3f29fd9aedaaa42ce81662541f433acb7d4cf6869c514df421970
6
+ metadata.gz: a75d08698a13d3051fd50ec395a711cbf7ebbdf0804dcb7fd426ee0c441019203040d9d58e84f990496ee17dfaa8d117ff4a62c5eddee4f1bbcd1f1821251085
7
+ data.tar.gz: 87d3e4a5eaf8170c70b63039c525fdd88b2a3ea8a1cde7aede9e7f52405e203d81d58a6bbf1ff1adb68774036fbc6f07c3b53e1925bc5d3f3ca4af891612dddb
@@ -1,33 +1,52 @@
1
1
  name: Ruby
2
2
 
3
- on: [push,pull_request]
3
+ on: [push, pull_request]
4
4
 
5
5
  jobs:
6
6
  build:
7
7
  strategy:
8
8
  matrix:
9
+ ruby_version: [ruby-head, '3.3', '3.2', '3.1']
10
+ rails_version: ['edge', '7.1', '7.0', '6.1']
11
+
9
12
  include:
10
- - ruby-version: 2.7.3
11
- rails-version: '~> 5.2.4'
12
- - ruby-version: 2.7.3
13
- rails-version: '~> 6.0.3'
14
- - ruby-version: 2.7.3
15
- rails-version: '~> 6.1.0'
16
- - ruby-version: 3.0.1
17
- rails-version: '~> 6.0.3'
18
- - ruby-version: 3.0.1
19
- rails-version: '~> 6.1.0'
13
+ - ruby_version: '3.0'
14
+ rails_version: '7.1'
15
+ - ruby_version: '3.0'
16
+ rails_version: '7.0'
17
+ - ruby_version: '3.0'
18
+ rails_version: '6.1'
19
+ - ruby_version: '3.0'
20
+ rails_version: '6.0'
21
+
22
+ - ruby_version: '2.7'
23
+ rails_version: '7.1'
24
+ - ruby_version: '2.7'
25
+ rails_version: '7.0'
26
+ - ruby_version: '2.7'
27
+ rails_version: '6.1'
28
+ - ruby_version: '2.7'
29
+ rails_version: '6.0'
30
+ - ruby_version: '2.7'
31
+ rails_version: '5.2'
32
+
33
+ - ruby_version: '2.6'
34
+ rails_version: '6.0'
35
+ - ruby_version: '2.6'
36
+ rails_version: '5.2'
37
+
20
38
  runs-on: ubuntu-latest
39
+
40
+ env:
41
+ RAILS_VERSION: ${{ matrix.rails_version }}
42
+
21
43
  steps:
22
- - uses: actions/checkout@v2
23
- - name: Set up Ruby
24
- uses: ruby/setup-ruby@v1
44
+ - uses: actions/checkout@v3
45
+
46
+ - uses: ruby/setup-ruby@v1
25
47
  with:
26
- ruby-version: ${{ matrix.ruby-version }}
27
- - name: Run the default task
28
- run: |
29
- gem install bundler
30
- bundle install
31
- bundle exec rake
32
- env:
33
- RAILS_VERSION: ${{ matrix.rails-version }}
48
+ ruby-version: ${{ matrix.ruby_version }}
49
+ rubygems: latest
50
+ bundler-cache: true
51
+
52
+ - run: bundle exec rake
data/Gemfile CHANGED
@@ -5,8 +5,16 @@ source "https://rubygems.org"
5
5
  # Specify your gem's dependencies in routes_lazy_routes.gemspec
6
6
  gemspec
7
7
 
8
- gem "rails", ENV["RAILS_VERSION"] if ENV["RAILS_VERSION"]
8
+ if ENV['RAILS_VERSION'] == 'edge'
9
+ gem 'rails', git: 'https://github.com/rails/rails.git'
10
+ elsif ENV['RAILS_VERSION']
11
+ gem 'rails', "~> #{ENV['RAILS_VERSION']}.0"
12
+ end
9
13
 
10
14
  gem "rake", "~> 13.0"
11
15
 
12
16
  gem "minitest", "~> 5.0"
17
+
18
+ gem 'base64'
19
+ gem 'bigdecimal'
20
+ gem 'mutex_m'
data/README.md CHANGED
@@ -44,6 +44,17 @@ If you're bundling this in the production server, it'd be a good idea to throw a
44
44
 
45
45
  - And, as already explained, sending a request to the Rails server automatically runs `RoutesLazyRoutes.eager_load!` on the server.
46
46
 
47
+ - On the other hand, you need manually calling `RoutesLazyRoutes.eager_load!` inside your worker process (e.g. Sidekiq) to resolve named routes like the following:
48
+ ``` ruby
49
+ # config/initializers/sidekiq.rb
50
+ Sidekiq.configure_server do |config|
51
+ if defined?(RoutesLazyRoutes)
52
+ Rails.application.config.after_initialize do
53
+ RoutesLazyRoutes.eager_load!
54
+ end
55
+ end
56
+ end
57
+ ```
47
58
 
48
59
  ## Contributing
49
60
 
@@ -21,5 +21,15 @@ module RoutesLazyRoutes
21
21
  load "#{__dir__}/tasks/routes_lazy_routes.rake"
22
22
  end
23
23
  end
24
+
25
+ # A monkey-patch that eager loads routes before the routes command is executed by prepending this module to the
26
+ # require_enviornment! method that's called when boot_application! is executed performing console commands.
27
+ module RoutesCommandEagerLoader
28
+ def require_environment!
29
+ super
30
+
31
+ RoutesLazyRoutes.eager_load!
32
+ end
33
+ end
24
34
  end
25
35
  end
@@ -8,8 +8,7 @@ module RoutesLazyRoutes
8
8
  Rails::Application.prepend RoutesLazyRoutes::Application::TaskLoader
9
9
 
10
10
  if defined? Rails::Command::RoutesCommand
11
- require_relative 'command/routes_command'
12
- Rails::Command::RoutesCommand.prepend RoutesLazyRoutes::Command::RoutesCommand
11
+ Rails::Application.prepend RoutesLazyRoutes::Application::RoutesCommandEagerLoader
13
12
  end
14
13
 
15
14
  initializer :routes_lazy_routes, before: :add_routing_paths do
@@ -2,7 +2,13 @@
2
2
 
3
3
  module RoutesLazyRoutes
4
4
  class RoutesReloaderWrapper
5
- delegate :paths, :eager_load=, :updated?, :route_sets, :external_routes, to: :@original_routes_reloader
5
+ delegate :paths,
6
+ :eager_load=,
7
+ :run_after_load_paths=,
8
+ :updated?,
9
+ :route_sets,
10
+ :external_routes,
11
+ to: :@original_routes_reloader
6
12
 
7
13
  def initialize(original_routes_reloader)
8
14
  @original_routes_reloader = original_routes_reloader
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RoutesLazyRoutes
4
- VERSION = '0.4.1'
4
+ VERSION = '0.4.3'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: routes_lazy_routes
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Akira Matsuda
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-21 00:00:00.000000000 Z
11
+ date: 2024-01-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: railties
@@ -70,7 +70,6 @@ files:
70
70
  - bin/setup
71
71
  - lib/routes_lazy_routes.rb
72
72
  - lib/routes_lazy_routes/application.rb
73
- - lib/routes_lazy_routes/command/routes_command.rb
74
73
  - lib/routes_lazy_routes/lazy_routes_middleware.rb
75
74
  - lib/routes_lazy_routes/railtie.rb
76
75
  - lib/routes_lazy_routes/routes_reloader_wrapper.rb
@@ -98,7 +97,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
98
97
  - !ruby/object:Gem::Version
99
98
  version: '0'
100
99
  requirements: []
101
- rubygems_version: 3.3.0.dev
100
+ rubygems_version: 3.4.13
102
101
  signing_key:
103
102
  specification_version: 4
104
103
  summary: A Rails routes lazy loader
@@ -1,14 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module RoutesLazyRoutes
4
- module Command
5
- module RoutesCommand
6
- # A monkey-patch that eager_loads the routes right before running the `rails routes` command.
7
- def require_environment!
8
- super
9
-
10
- RoutesLazyRoutes.eager_load!
11
- end
12
- end
13
- end
14
- end