File tree Expand file tree Collapse file tree 6 files changed +40
-9
lines changed Expand file tree Collapse file tree 6 files changed +40
-9
lines changed Original file line number Diff line number Diff line change 1717 - " 7.0"
1818 - " 7.1"
1919 - " 7.2"
20+ - " 8.0"
2021
2122 ruby :
2223 - " 2.6"
2526 - " 3.1"
2627 - " 3.2"
2728 - " 3.3"
29+ - " 3.4"
2830
2931 exclude :
32+ - rails : " 6.1"
33+ ruby : " 3.4"
34+
3035 - rails : " 7.0"
3136 ruby : " 2.6"
3237
@@ -35,13 +40,20 @@ jobs:
3540
3641 - rails : " 7.2"
3742 ruby : " 2.6"
38-
3943 - rails : " 7.2"
4044 ruby : " 2.7"
41-
4245 - rails : " 7.2"
4346 ruby : " 3.0"
4447
48+ - rails : " 8.0"
49+ ruby : " 2.6"
50+ - rails : " 8.0"
51+ ruby : " 2.7"
52+ - rails : " 8.0"
53+ ruby : " 3.0"
54+ - rails : " 8.0"
55+ ruby : " 3.1"
56+
4557 env :
4658 BUNDLE_GEMFILE : ${{ github.workspace }}/spec/gemfiles/Gemfile.rails-${{ matrix.rails }}
4759
Original file line number Diff line number Diff line change 44
55- Drop support for Ruby < 2.6 and Rails < 6.1
66- Require at least caxlsx 4.0
7+ - Add Rails 8.0 and Ruby 3.4 to the CI matrix
78
89** June 18, 2024** : 0.6.4 release
910
Original file line number Diff line number Diff line change 22
33require 'action_controller'
44
5- unless Mime [ :xlsx ]
6- Mime ::Type . register 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' , :xlsx
7- end
5+ Mime ::Type . register 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' , :xlsx unless Mime [ :xlsx ]
86
97ActionController ::Renderers . add :xlsx do |filename , options |
108 #
2220 # render 'controller/diff_action'
2321 # end
2422 #
25- options [ :template ] = filename . gsub ( /^.*\/ / , '' ) if options [ :template ] == action_name
23+ if options [ :template ] . nil?
24+ options [ :template ] ||= action_name
25+ options [ :prefixes ] ||= self . class . ancestors
26+ . take_while { |a | a . respond_to? ( :controller_path ) }
27+ . map ( &:controller_path )
28+ end
29+
30+ options [ :template ] = filename . gsub ( %r{^.*/} , '' ) if options [ :template ] == action_name
2631
2732 # force layout false
2833 options [ :layout ] = false
2934
3035 # disposition / filename
3136 disposition = options . delete ( :disposition ) || 'attachment'
32- file_name = options . delete ( :filename ) || "#{ filename . gsub ( / ^.*\/ / , '' ) } .xlsx"
37+ file_name = options . delete ( :filename ) || "#{ filename . gsub ( %r{ ^.*/} , '' ) } .xlsx"
3338 file_name = "#{ file_name } .xlsx" unless file_name =~ /\. xlsx$/
3439
3540 # alternate settings
@@ -51,7 +56,7 @@ def to_xlsx
5156 if @default_response
5257 @default_response . call ( options )
5358 else
54- controller . render ( { xlsx : controller . action_name } . merge ( options ) )
59+ controller . render ( { xlsx : controller . action_name } . merge ( options ) )
5560 end
5661 end
5762 end
Original file line number Diff line number Diff line change 1+ source "http://rubygems.org"
2+
3+ gemspec path: '../../'
4+
5+ gem 'rails', '~> 8.0.0'
6+ gem 'puma'
7+ gem 'responders', '~> 3.0'
8+ gem 'sqlite3'
9+ gem 'sprockets', '~> 4.0'
10+ gem 'capybara', '~> 3.0'
11+
12+ gem 'debug'
Original file line number Diff line number Diff line change 22
33require 'spec_helper'
44
5- describe Examples ::RespondToController do
5+ describe Examples ::RenderTemplateController do
66 let ( :path ) { "/examples/render_template/#{ variant } .xlsx" }
77
88 shared_examples_for 'responds properly' do
Original file line number Diff line number Diff line change 2424 config . use_transactional_fixtures = false
2525 config . infer_base_class_for_anonymous_controllers = false
2626 config . order = "random"
27+ config . filter_run_when_matching :focus
2728end
2829
2930# TODO: move to the support folder
You can’t perform that action at this time.
0 commit comments