activerecord-tablefree 3.1.3 → 3.1.4

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
- SHA1:
3
- metadata.gz: bd641bf62d44d61669232874c115223d670525dc
4
- data.tar.gz: e77eb3bc55b531d724c863d9368e36a9ff54b66f
2
+ SHA256:
3
+ metadata.gz: 8eab5f0bc3f2d15d94624af7160999baae8a36b5c28bcda3405aea2e93c7c593
4
+ data.tar.gz: 5ce4c612c292fccd9961b4b50c9807e3788668a523de576d42b752dfeb5ad553
5
5
  SHA512:
6
- metadata.gz: d747f17d5693c762b2511296a875bf63a71cf378fd62b8c662357cdf37e3343c96968e1cce39df072e3cda1637dd98fe194e87f6ae5defcbf605b70d16bc28b5
7
- data.tar.gz: 936bf5a5f9ff23a685b55c604687eb8f18c43499c18333f95392c552e5a651022bb3c1f34305fa1ebc7427e21e7c585bef4a81a998299c05c891e7f1fc574065
6
+ metadata.gz: 6d35c2aa1c3033ddc5672df4f234a9804c78b63c417401f528a073c7254891abe051f77c168b9f299c03b4380ed392653331b2ac59d7a3592aa87821d8101974
7
+ data.tar.gz: c0bc7fe63e3ba9b3a1b4a0faff536f79a9f6aec094dede7944828102392bb2c61069f4c02be0aa4f5c33a1d5eb3ff9290411dcc32b5f973fae205c8de053a854
data/.travis.yml CHANGED
@@ -1,10 +1,67 @@
1
- language: ruby
1
+ env:
2
+ global:
3
+ - JRUBY_OPTS="-Xcli.debug=true --debug"
4
+ - CC_TEST_REPORTER_ID=a70bbb113a91b512f783fa152f252f89e86fe746356d1c47c3f66c7023e4c072
5
+
6
+ before_script:
7
+ - curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
8
+ - chmod +x ./cc-test-reporter
9
+ - ./cc-test-reporter before-build
10
+
11
+ script:
12
+ - bundle exec rspec
13
+
14
+ after_script:
15
+ - ./cc-test-reporter after-build --exit-code $TRAVIS_TEST_RESULT
16
+
2
17
  before_install:
3
- - gem install bundler
18
+ - gem update --system
19
+ - gem install bundler
20
+
21
+ install:
22
+ - bundle install
23
+
24
+ bundler_args: --no-deployment --jobs 3 --retry 3
25
+
26
+ cache: bundler
27
+
28
+ language: ruby
29
+ sudo: false
30
+
4
31
  rvm:
5
- - 2.2.8
6
- - 2.3.5
7
- - 2.4.2
32
+ # latest versions on travis-ci as of 2018.09.04
33
+ - jruby-9.1.9.0
34
+ - ruby-2.2.10
35
+ - ruby-2.3.7
36
+ - ruby-2.4.4
37
+ - ruby-2.5.1
38
+ - jruby-head
39
+ - ruby-head
8
40
  gemfile:
9
41
  - gemfiles/rails50.gemfile
10
42
  - gemfiles/rails51.gemfile
43
+ - gemfiles/rails52.gemfile
44
+
45
+ matrix:
46
+ allow_failures:
47
+ - rvm: jruby-head
48
+ - rvm: ruby-head
49
+ fast_finish: true
50
+ exclude:
51
+ # ruby-2.2.10 tests on all versions
52
+ # ruby-2.3.7 tests on all versions
53
+ # ruby-2.4.4 tests on all versions
54
+ # ruby-2.5.1 tests on all versions
55
+ # jruby-9.1.9.0 only tests on rails 5.1+
56
+ - rvm: jruby-9.1.9.0
57
+ gemfile: gemfiles/rails_5_0.gemfile
58
+ # jruby-head only tests on rails 5.2+
59
+ - rvm: jruby-head
60
+ gemfile: gemfiles/rails_5_0.gemfile
61
+ - rvm: jruby-head
62
+ gemfile: gemfiles/rails_5_1.gemfile
63
+ # ruby-head only tests on rails 5.2+
64
+ - rvm: ruby-head
65
+ gemfile: gemfiles/rails_5_0.gemfile
66
+ - rvm: ruby-head
67
+ gemfile: gemfiles/rails_5_1.gemfile
data/Appraisals CHANGED
@@ -9,3 +9,8 @@ appraise 'rails51' do
9
9
  gem 'rails', '~> 5.1.0'
10
10
  gem 'jquery-rails'
11
11
  end
12
+
13
+ appraise 'rails52' do
14
+ gem 'rails', '~> 5.2.0'
15
+ gem 'jquery-rails'
16
+ end
data/Gemfile CHANGED
@@ -1,8 +1,6 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- # Specify your gem's dependencies in utf8_enforcer_workaround.gemspec
3
+ # Specify your gem's dependencies in activerecord-tablefree.gemspec
4
4
  gemspec
5
5
 
6
6
  gem 'byebug'
7
- gem 'mime-types', '< 2.0', platform: :ruby_18
8
- gem 'rubyzip', '< 1.0', platform: :ruby_18
data/README.md CHANGED
@@ -3,17 +3,18 @@ ActiveRecord Tablefree
3
3
 
4
4
  | Project | ActiveRecord Tablefree |
5
5
  |------------------------ | ----------------------- |
6
- | gem name | activerecord-tablefree |
7
- | license | MIT |
8
- | download rank | [![Total Downloads](https://img.shields.io/gem/rt/activerecord-tablefree.png)](https://rubygems.org/gems/activerecord-tablefree) |
9
- | version | [![Gem Version](https://badge.fury.io/rb/activerecord-tablefree.png)](http://badge.fury.io/rb/activerecord-tablefree) |
10
- | dependencies | [![Dependency Status](https://gemnasium.com/badges/github.com/boltthreads/activerecord-tablefree.svg)](https://gemnasium.com/github.com/boltthreads/activerecord-tablefree) |
11
- | code quality | [![Code Climate](https://codeclimate.com/github/boltthreads/activerecord-tablefree.png)](https://codeclimate.com/github/boltthreads/activerecord-tablefree) |
12
- | continuous integration | [![Build Status](https://travis-ci.org/boltthreads/activerecord-tablefree.svg?branch=master)](https://travis-ci.org/boltthreads/activerecord-tablefree) |
13
- | test coverage | [![Coverage Status](https://coveralls.io/repos/github/boltthreads/activerecord-tablefree/badge.png?branch=master)](https://coveralls.io/github/boltthreads/activerecord-tablefree?branch=master) |
14
- | triage helpers | [![Issue Triage](https://www.codetriage.com/boltthreads/activerecord-tablefree/badges/users.png)](https://www.codetriage.com/boltthreads/activerecord-tablefree) |
15
- | homepage | [https://github.com/boltthreads/activerecord-tablefree](https://github.com/boltthreads/activerecord-tablefree) |
16
- | documentation | [http://rdoc.info/github/boltthreads/activerecord-tablefree/frames](http://rdoc.info/github/boltthreads/activerecord-tablefree/frames) |
6
+ | gem name | [activerecord-tablefree](https://rubygems.org/gems/activerecord-tablefree) |
7
+ | license | [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT) |
8
+ | download rank | [![Downloads Today](https://img.shields.io/gem/rd/activerecord-tablefree.svg)](https://github.com/pboling/activerecord-tablefree) |
9
+ | version | [![Version](https://img.shields.io/gem/v/activerecord-tablefree.svg)](https://rubygems.org/gems/activerecord-tablefree) |
10
+ | dependencies | [![Depfu](https://badges.depfu.com/badges/96a4d507f1a61a9368655f60fa3cb70f/count.svg)](https://depfu.com/github/pboling/activerecord-tablefree?project=Bundler) |
11
+ | continuous integration | [![Build Status](https://travis-ci.org/pboling/activerecord-tablefree.svg?branch=master)](https://travis-ci.org/pboling/activerecord-tablefree) |
12
+ | test coverage | [![Test Coverage](https://api.codeclimate.com/v1/badges/9354ad73daf12d480e81/test_coverage)](https://codeclimate.com/github/pboling/activerecord-tablefree/test_coverage) |
13
+ | maintainability | [![Maintainability](https://api.codeclimate.com/v1/badges/9354ad73daf12d480e81/maintainability)](https://codeclimate.com/github/pboling/activerecord-tablefree/maintainability)
14
+ | code triage | [![Open Source Helpers](https://www.codetriage.com/pboling/activerecord-tablefree/badges/users.svg)](https://www.codetriage.com/pboling/activerecord-tablefree) |
15
+ | homepage | [http://www.railsbling.com/tags/activerecord-tablefree/][homepage] |
16
+ | documentation | [http://rdoc.info/github/pboling/activerecord-tablefree/frames][documentation] |
17
+ [documentation]: http://rdoc.info/github/pboling/activerecord-tablefree/frames
17
18
 
18
19
  A simple implementation of the ActiveRecord Tableless pattern for any
19
20
  Rails project or other Ruby project that uses ActiveRecord.
@@ -45,11 +46,13 @@ Supported ruby version are
45
46
  * **2.2.x** series higher than 2.2.2 (a Rails 5 requirement)
46
47
  * **2.3.x** series
47
48
  * **2.4.x** series
49
+ * **2.5.x** series
48
50
 
49
51
  Supported ActiveRecord versions are
50
52
 
51
53
  * **5.0.x** series
52
54
  * **5.1.x** series
55
+ * **5.2.x** series
53
56
 
54
57
  If you are using an older ActiveRecord version you can use the gem [`activerecord-tableless`](https://github.com/softace/activerecord-tableless)
55
58
 
@@ -126,7 +129,7 @@ Development
126
129
 
127
130
  To start developing, please download the source code
128
131
 
129
- git clone git://github.com/boltthreads/activerecord-tablefree.git
132
+ git clone git://github.com/pboling/activerecord-tablefree.git
130
133
 
131
134
  Install development libraries
132
135
 
@@ -175,16 +178,42 @@ existence of this gem is still justified.
175
178
 
176
179
  Rails 3 and 4 support is provided in the [activerecord-tableless gem](https://github.com/softace/activerecord-tableless), by [Jarl Friis](https://github.com/jarl-dk).
177
180
 
178
- This gem is a Rails 5 compatible update, and renaming of that gem.
181
+ This gem is a Rails 5+ compatible update, and renaming of that gem.
179
182
 
180
183
  For a history of technical implementation details feel free to take a
181
184
  look in the git log :-)
182
185
 
186
+ ## Versioning
187
+
188
+ This library aims to adhere to [Semantic Versioning 2.0.0][semver].
189
+ Violations of this scheme should be reported as bugs. Specifically,
190
+ if a minor or patch version is released that breaks backward
191
+ compatibility, a new version should be immediately released that
192
+ restores compatibility. Breaking changes to the public API will
193
+ only be introduced with new major versions.
194
+
195
+ As a result of this policy, you can (and should) specify a
196
+ dependency on this gem using the [Pessimistic Version Constraint][pvc] with two digits of precision.
197
+
198
+ For example:
199
+
200
+ ```ruby
201
+ spec.add_dependency 'activerecord-tablefree', '~> 3.0'
202
+ ```
183
203
 
184
204
  Copyright
185
205
  ---------
186
206
 
187
- Copyright (c) Jarl Friis.
188
- Copyright (c) Peter Boling, Bolt Threads.
207
+ * Copyright (c) 2008 - 2009 Kenneth Kalmer
208
+ * Copyright (c) 2012 - 2017 Jarl Friis
209
+ * Copyright (c) 2017 - 2018 [Peter H. Boling][peterboling] of [Rails Bling][railsbling]
210
+
211
+ The license is MIT. See [LICENSE.txt][license] for further details.
189
212
 
190
- The license is MIT. See LICENSE.txt for further details.
213
+ [license]: LICENSE.txt
214
+ [semver]: http://semver.org/
215
+ [pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint
216
+ [railsbling]: http://www.railsbling.com
217
+ [peterboling]: http://www.peterboling.com
218
+ [documentation]: http://rdoc.info/github/pboling/activerecord-tablefree/frames
219
+ [homepage]: http://www.railsbling.com/tags/activerecord-tablefree/
@@ -1,6 +1,8 @@
1
1
  # -*- ruby -*-
2
- $LOAD_PATH.push File.expand_path('../lib', __FILE__)
3
- require 'activerecord-tablefree/version'
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+
5
+ require 'activerecord/tablefree/version'
4
6
 
5
7
  Gem::Specification.new do |gem|
6
8
  gem.name = 'activerecord-tablefree'
@@ -32,13 +34,13 @@ Gem::Specification.new do |gem|
32
34
 
33
35
  gem.add_development_dependency('appraisal', '~> 1.0')
34
36
  gem.add_development_dependency('aruba', '~> 0.5')
35
- gem.add_development_dependency('cucumber', '~> 1.1')
37
+ gem.add_development_dependency('cucumber', '~> 3.1')
36
38
  gem.add_development_dependency('rspec', '~> 3.1')
37
39
  gem.add_development_dependency('rspec-collection_matchers', '~> 1.0')
38
40
 
39
- gem.add_development_dependency('capybara', '~> 0.0')
41
+ gem.add_development_dependency('capybara', '~> 2.17')
40
42
  gem.add_development_dependency('coveralls')
41
- gem.add_development_dependency('gem-release', '~> 1.0.0')
43
+ gem.add_development_dependency('gem-release')
42
44
  gem.add_development_dependency('listen')
43
45
  gem.add_development_dependency('nokogiri', '~> 1.0')
44
46
  gem.add_development_dependency('rails')
@@ -2,8 +2,6 @@
2
2
 
3
3
  source "https://rubygems.org"
4
4
 
5
- gem "mime-types", "< 2.0", :platform => :ruby_18
6
- gem "rubyzip", "< 1.0", :platform => :ruby_18
7
5
  gem "byebug"
8
6
  gem "rails", "~> 5.0.0"
9
7
  gem "jquery-rails"
@@ -2,8 +2,6 @@
2
2
 
3
3
  source "https://rubygems.org"
4
4
 
5
- gem "mime-types", "< 2.0", :platform => :ruby_18
6
- gem "rubyzip", "< 1.0", :platform => :ruby_18
7
5
  gem "byebug"
8
6
  gem "rails", "~> 5.1.0"
9
7
  gem "jquery-rails"
@@ -0,0 +1,9 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "byebug"
6
+ gem "rails", "~> 5.2.0"
7
+ gem "jquery-rails"
8
+
9
+ gemspec :path => "../"
@@ -24,5 +24,14 @@ module ActiveRecord::Tablefree
24
24
  def changed_in_place?(*_args)
25
25
  false
26
26
  end
27
+
28
+ def force_equality?(value)
29
+ case value
30
+ when ::Array, ::Range then
31
+ true
32
+ else
33
+ false
34
+ end
35
+ end
27
36
  end
28
37
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module ActiveRecord
4
4
  module Tablefree
5
- VERSION = '3.1.3'.freeze
5
+ VERSION = '3.1.4'.freeze
6
6
  end
7
7
  end
@@ -298,12 +298,13 @@ describe 'ActiveRecord with real database' do
298
298
  arm_rest = ArmRest.new(chair: chair)
299
299
  expect(arm_rest.name).to eq 'A'
300
300
  end
301
- it 'can be traversed by setting foreign key' do
302
- pending('more effort to implement')
303
- Chair.create(name: 'B')
304
- arm_rest = ArmRest.new(name: 'B')
305
- expect { arm_rest.chair }.to_not raise_error
306
- end
301
+ # This works on Rails 5.0, but not newer, because of the statement cache.
302
+ # it 'can be traversed by setting foreign key' do
303
+ # chair = Chair.create(name: 'B')
304
+ # arm_rest = ArmRest.new(name: 'B')
305
+ # expect { arm_rest.chair }.to_not raise_error
306
+ # expect(arm_rest.chair).to eq(chair)
307
+ # end
307
308
  end
308
309
  end
309
310
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activerecord-tablefree
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.3
4
+ version: 3.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jarl Friis
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2017-12-21 00:00:00.000000000 Z
14
+ date: 2018-09-08 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: activerecord
@@ -109,14 +109,14 @@ dependencies:
109
109
  requirements:
110
110
  - - "~>"
111
111
  - !ruby/object:Gem::Version
112
- version: '1.1'
112
+ version: '3.1'
113
113
  type: :development
114
114
  prerelease: false
115
115
  version_requirements: !ruby/object:Gem::Requirement
116
116
  requirements:
117
117
  - - "~>"
118
118
  - !ruby/object:Gem::Version
119
- version: '1.1'
119
+ version: '3.1'
120
120
  - !ruby/object:Gem::Dependency
121
121
  name: rspec
122
122
  requirement: !ruby/object:Gem::Requirement
@@ -151,14 +151,14 @@ dependencies:
151
151
  requirements:
152
152
  - - "~>"
153
153
  - !ruby/object:Gem::Version
154
- version: '0.0'
154
+ version: '2.17'
155
155
  type: :development
156
156
  prerelease: false
157
157
  version_requirements: !ruby/object:Gem::Requirement
158
158
  requirements:
159
159
  - - "~>"
160
160
  - !ruby/object:Gem::Version
161
- version: '0.0'
161
+ version: '2.17'
162
162
  - !ruby/object:Gem::Dependency
163
163
  name: coveralls
164
164
  requirement: !ruby/object:Gem::Requirement
@@ -177,16 +177,16 @@ dependencies:
177
177
  name: gem-release
178
178
  requirement: !ruby/object:Gem::Requirement
179
179
  requirements:
180
- - - "~>"
180
+ - - ">="
181
181
  - !ruby/object:Gem::Version
182
- version: 1.0.0
182
+ version: '0'
183
183
  type: :development
184
184
  prerelease: false
185
185
  version_requirements: !ruby/object:Gem::Requirement
186
186
  requirements:
187
- - - "~>"
187
+ - - ">="
188
188
  - !ruby/object:Gem::Version
189
- version: 1.0.0
189
+ version: '0'
190
190
  - !ruby/object:Gem::Dependency
191
191
  name: listen
192
192
  requirement: !ruby/object:Gem::Requirement
@@ -278,6 +278,7 @@ files:
278
278
  - features/support/selectors.rb
279
279
  - gemfiles/rails50.gemfile
280
280
  - gemfiles/rails51.gemfile
281
+ - gemfiles/rails52.gemfile
281
282
  - init.rb
282
283
  - lib/activerecord-tablefree.rb
283
284
  - lib/activerecord/tablefree.rb
@@ -310,7 +311,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
310
311
  version: '0'
311
312
  requirements: []
312
313
  rubyforge_project:
313
- rubygems_version: 2.6.14
314
+ rubygems_version: 2.7.7
314
315
  signing_key:
315
316
  specification_version: 4
316
317
  summary: A library for implementing tablefree ActiveRecord models in Rails 5+