active_record_bitmask 0.0.2 → 0.0.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: 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