Skip to content

Commit b1b253f

Browse files
Fix Rails 6.0 deprecation on class.parent (#2373)
* Fix Rails 6.0 deprecation on `class.parent` * Update Changelog * Switch travis to openJDK * Lock bundler on appveyor * Rejigger gemfile to fix sqlite issue * Lock nokogiri for ruby < 2.4 * Use rubygems < 3 to fix travis * Use specific bundler version and do not try to uninstall Uninstalling bundler is not allowed since it is a default gem * Lock rake for ruby < 2.2 * Downgrade rake further to support ruby 1.9.3 * Lock rake down further, and lock simplecov * Fix rubocop/parser and minitest version deps in CI * Lock sprockets version * Try fixing jruby builds * Try remove bad gem version for jruby on CI * Try downgrading rubygems a different way * Do not update rubygems on jruby * Lock gems for jruby * Fix sprockets version lock
1 parent f72ab35 commit b1b253f

File tree

5 files changed

+62
-13
lines changed

5 files changed

+62
-13
lines changed

.travis.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@ rvm:
1010
- jruby-9.1.5.0 # is precompiled per http://rubies.travis-ci.org/
1111

1212
jdk:
13-
- oraclejdk8
13+
- openjdk8
1414

1515
before_install:
16-
- gem update --system
17-
- rvm @global do gem uninstall bundler -a -x
16+
- gem update --system 2.6.8
17+
- if [ "$RUBY_VERSION" != "jruby-9.1.5.0" ] ; then update_rubygems ; fi
1818
- rvm @global do gem install bundler -v 1.13.7
19-
install: bundle install --path=vendor/bundle --retry=3 --jobs=3
19+
install: bundle _1.13.7_ install --path=vendor/bundle --retry=3 --jobs=3
2020
cache:
2121
directories:
2222
- vendor/bundle

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
### [0-9-stable](https://github.com/rails-api/active_model_serializers/compare/v0.9.7...0-9-stable)
44

5+
- [#2373](https://github.com/rails-api/active_model_serializers/pull/2373) Fix Rails 6.0 deprecation warnings. (@supremebeing7)
6+
57
### [v0.9.7 (2017-05-01)](https://github.com/rails-api/active_model_serializers/compare/v0.9.6...v0.9.7)
68

79
- [#2080](https://github.com/rails-api/active_model_serializers/pull/2080) remove `{ payload: nil }` from `!serialize.active_model_serializers` ActiveSupport::Notification. `payload` never had a value. Changes, for example `{ serializer: 'ActiveModel::DefaultSerializer', payload: nil }` to be `{ serializer: 'ActiveModel::DefaultSerializer' }` (@yosiat)

Gemfile

Lines changed: 46 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,22 @@ if RUBY_VERSION < '2'
3333
gem 'mime-types', [ '>= 2.6.2', '< 3' ]
3434
end
3535

36-
if RUBY_VERSION < '2.1'
37-
gem 'nokogiri', '< 1.7'
36+
if ENV['CI']
37+
if RUBY_VERSION < '2.4'
38+
# Windows: An error occurred while installing nokogiri (1.8.0)
39+
gem 'nokogiri', '< 1.7', platforms: @windows_platforms
40+
# >= 4.0 requires ruby >= 2.5
41+
gem 'sprockets', '< 4.0'
42+
end
43+
44+
if RUBY_VERSION < '2.2'
45+
# >= 12.3 and < 13 requires ruby >= 2.0, rake >= 13 requires ruby >= 2.2
46+
gem 'rake', '< 12.3'
47+
# > 5.12 requires ruby >= 2.2
48+
gem 'minitest', '< 5.12'
49+
# >= 1.0 requires ruby >= 2.0
50+
gem 'thor', '< 1.0'
51+
end
3852
end
3953

4054
# https://github.com/bundler/bundler/blob/89a8778c19269561926cea172acdcda241d26d23/lib/bundler/dependency.rb#L30-L54
@@ -50,12 +64,37 @@ group :bench do
5064
end
5165

5266
group :test do
53-
gem 'sqlite3', platform: (@windows_platforms + [:ruby])
54-
gem 'activerecord-jdbcsqlite3-adapter', platform: :jruby
55-
56-
gem 'simplecov', '~> 0.10', require: false, group: :development
67+
platforms(*(@windows_platforms + [:ruby])) do
68+
if version == 'master' || version >= '6'
69+
gem 'sqlite3', '~> 1.4'
70+
else
71+
gem 'sqlite3', '~> 1.3.13'
72+
end
73+
end
74+
platforms :jruby do
75+
if version == 'master' || version >= '6.0'
76+
gem 'activerecord-jdbcsqlite3-adapter', github: 'jruby/activerecord-jdbc-adapter'
77+
elsif version == '5.2'
78+
gem 'activerecord-jdbcsqlite3-adapter', '~> 52.0'
79+
elsif version == '5.1'
80+
gem 'activerecord-jdbcsqlite3-adapter', '~> 51.0'
81+
elsif version == '5.0'
82+
gem 'activerecord-jdbcsqlite3-adapter', '~> 50.0'
83+
else
84+
gem 'activerecord-jdbcsqlite3-adapter', '~> 1.3.0'
85+
end
86+
end
5787
end
5888

5989
group :development, :test do
60-
gem 'rubocop', '~> 0.34.0', require: false
90+
unless ENV['CI']
91+
gem 'rubocop', '~> 0.34.0', require: false
92+
end
93+
94+
# 0.12 requires ruby 2.4
95+
if RUBY_VERSION < '2.4'
96+
gem 'simplecov', '< 0.12', require: false
97+
else
98+
gem 'simplecov', '~> 0.10', require: false
99+
end
61100
end

appveyor.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ install:
1616
- SET PATH=C:\Ruby%ruby_version%\bin;%PATH%
1717
- ruby --version
1818
- gem --version
19-
- gem install bundler
19+
- gem install bundler -v 1.17.3
2020
- bundler --version
2121
- bundle platform
2222
- bundle install --path=vendor/bundle --retry=3 --jobs=3

lib/action_controller/serialization.rb

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,15 @@ def serialization_scope(scope)
6060
private
6161

6262
def namespace_for_serializer
63-
@namespace_for_serializer ||= self.class.parent unless self.class.parent == Object
63+
@namespace_for_serializer ||= namespace_for_class(self.class) unless namespace_for_class(self.class) == Object
64+
end
65+
66+
def namespace_for_class(klass)
67+
if Module.method_defined?(:module_parent)
68+
klass.module_parent
69+
else
70+
klass.parent
71+
end
6472
end
6573

6674
def default_serializer(resource)

0 commit comments

Comments
 (0)