active_record_bitmask 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c280de0aa76c1faf1a0eedaa01e79e1cd573409e0fe213e0ec2ec2a386fd6905
4
- data.tar.gz: a12217033318fbcc0de0fa377fb008d873efb4f715229df96d9f311f86be3d9b
3
+ metadata.gz: 83cc7c7817104269769c84be2190c59c2fe2d4501d60844aef239913a1ce1924
4
+ data.tar.gz: 2e373579a128366eba6ee1403743f9cf6954720b66bebe10982817e7306e78e3
5
5
  SHA512:
6
- metadata.gz: 4e2b1d0f778ef4cfb1ebd4ee438b5ea3777b86dcea8f25bfd686a1ce06439d5a62778376f624dd4cd036f6aa2fc083226458b0632867a2e5d661c0bf68afb266
7
- data.tar.gz: 39be7a07fca3f6ab7b4e3e3c806e4f63aba832451ddb2acfd9ef0710a6951499365ae0e9b6f72322d7e65cf770797646fa36de01effa6657abd521cf4dc6a60f
6
+ metadata.gz: 8f3bae3a299ab90f8f709b59f44aa1befdc7b06e949043fec24f74c2923cb5d93b49ed5f6f517c68ef15c31272843f7e9f6f78cb841ddfcfbb0aed7f0f27a401
7
+ data.tar.gz: 63ff0a8977e527a7be95a6e89e37d6ca09e3b19075dd80f89b39b86c5eeabcdab9afa9e75995bdc74f0523069e27f4f2c8d037a282f0034f489980eeb23767ac
data/.gitignore CHANGED
@@ -7,3 +7,5 @@
7
7
  /pkg/
8
8
  /spec/reports/
9
9
  /tmp/
10
+ /gemfiles/*.lock
11
+ /gemfiles/.bundle
@@ -1,6 +1,7 @@
1
1
  AllCops:
2
2
  Exclude:
3
3
  - '.bundle/**/*'
4
+ - 'gemfiles/**/*'
4
5
  - Gemfile
5
6
  TargetRubyVersion: 2.6
6
7
  DisplayCopNames: true
@@ -1,5 +1,15 @@
1
1
  sudo: false
2
2
  language: ruby
3
3
  rvm:
4
- - 2.4.0
5
- before_install: gem install bundler -v 1.13.7
4
+ - 2.5.7
5
+ - 2.6.5
6
+ - 2.7.0
7
+ before_install: gem install bundler
8
+ gemfile:
9
+ - gemfiles/5.0_stable.gemfile
10
+ - gemfiles/5.1_stable.gemfile
11
+ - gemfiles/5.2_stable.gemfile
12
+ - gemfiles/6.0_stable.gemfile
13
+ script:
14
+ - bundle exec rspec
15
+ - bundle exec rubocop
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ appraise '5.0-stable' do
4
+ gem 'activerecord', '~> 5.0.0'
5
+ gem 'sqlite3', '~> 1.3.6'
6
+ end
7
+
8
+ appraise '5.1-stable' do
9
+ gem 'activerecord', '~> 5.1.0'
10
+ end
11
+
12
+ appraise '5.2-stable' do
13
+ gem 'activerecord', '~> 5.2.0'
14
+ end
15
+
16
+ appraise '6.0-stable' do
17
+ gem 'activerecord', '~> 6.0.0'
18
+ end
data/Gemfile CHANGED
@@ -4,7 +4,3 @@ gemspec
4
4
 
5
5
  gem 'pry'
6
6
  gem 'rubocop'
7
-
8
- group :test do
9
- gem 'sqlite3'
10
- end
@@ -20,7 +20,8 @@ Gem::Specification.new do |spec|
20
20
  spec.require_paths = ['lib']
21
21
 
22
22
  spec.add_dependency 'activerecord', '>= 5.0'
23
- spec.add_development_dependency 'bundler'
23
+ spec.add_development_dependency 'appraisal'
24
24
  spec.add_development_dependency 'rake'
25
25
  spec.add_development_dependency 'rspec'
26
+ spec.add_development_dependency 'sqlite3'
26
27
  end
@@ -0,0 +1,10 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "pry"
6
+ gem "rubocop"
7
+ gem "activerecord", "~> 5.0.0"
8
+ gem "sqlite3", "~> 1.3.6"
9
+
10
+ gemspec path: "../"
@@ -0,0 +1,9 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "pry"
6
+ gem "rubocop"
7
+ gem "activerecord", "~> 5.1.0"
8
+
9
+ gemspec path: "../"
@@ -0,0 +1,9 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "pry"
6
+ gem "rubocop"
7
+ gem "activerecord", "~> 5.2.0"
8
+
9
+ gemspec path: "../"
@@ -0,0 +1,9 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "pry"
6
+ gem "rubocop"
7
+ gem "activerecord", "~> 6.0.0"
8
+
9
+ gemspec path: "../"
@@ -5,11 +5,11 @@ require 'active_support/lazy_load_hooks'
5
5
  module ActiveRecordBitmask
6
6
  require 'active_record_bitmask/version'
7
7
  require 'active_record_bitmask/attribute_methods'
8
- require 'active_record_bitmask/bitmask_type'
9
8
  require 'active_record_bitmask/map'
10
9
  end
11
10
 
12
11
  ActiveSupport.on_load :active_record do
13
12
  require 'active_record_bitmask/model'
13
+ require 'active_record_bitmask/bitmask_type'
14
14
  include(ActiveRecordBitmask::Model)
15
15
  end
@@ -1,7 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'active_model'
4
-
5
3
  module ActiveRecordBitmask
6
4
  class BitmaskType < ActiveModel::Type::Value
7
5
  # @param name [String]
@@ -1,7 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'active_support/core_ext/module/delegation'
4
+
3
5
  module ActiveRecordBitmask
4
6
  class Map
7
+ include Enumerable
8
+
9
+ delegate(:each, :keys, :values, to: :mapping)
10
+
5
11
  # Default blank values for checkbox
6
12
  BLANK_VALUES = [:'', :'0'].freeze
7
13
 
@@ -64,16 +70,6 @@ module ActiveRecordBitmask
64
70
  end
65
71
  end
66
72
 
67
- # @return [Array<Symbol>]
68
- def keys
69
- mapping.keys
70
- end
71
-
72
- # @return [Array<Integer>]
73
- def values
74
- mapping.values
75
- end
76
-
77
73
  private
78
74
 
79
75
  def reject_blank_attributes(attributes)
@@ -9,7 +9,10 @@ module ActiveRecordBitmask
9
9
 
10
10
  included do
11
11
  include ActiveRecordBitmask::AttributeMethods::Query
12
- class_attribute(:bitmasks, instance_accessor: false, default: {})
12
+ class_attribute(:bitmasks, instance_accessor: false)
13
+
14
+ # `class_attribute` on Rails 5.0 doesn't support default option.
15
+ self.bitmasks = {}
13
16
  end
14
17
 
15
18
  class_methods do
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ActiveRecordBitmask
4
- VERSION = '0.0.2'
4
+ VERSION = '0.0.3'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_record_bitmask
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - alpaca-tc
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-01-22 00:00:00.000000000 Z
11
+ date: 2020-02-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -25,7 +25,7 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '5.0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: bundler
28
+ name: appraisal
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
@@ -66,6 +66,20 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: sqlite3
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
69
83
  description:
70
84
  email:
71
85
  - alpaca-tc@alpaca.tc
@@ -77,10 +91,15 @@ files:
77
91
  - ".rspec"
78
92
  - ".rubocop.yml"
79
93
  - ".travis.yml"
94
+ - Appraisals
80
95
  - Gemfile
81
96
  - README.md
82
97
  - Rakefile
83
98
  - active_record_bitmask.gemspec
99
+ - gemfiles/5.0_stable.gemfile
100
+ - gemfiles/5.1_stable.gemfile
101
+ - gemfiles/5.2_stable.gemfile
102
+ - gemfiles/6.0_stable.gemfile
84
103
  - lib/active_record_bitmask.rb
85
104
  - lib/active_record_bitmask/attribute_methods.rb
86
105
  - lib/active_record_bitmask/attribute_methods/query.rb