normalizr 0.1.1 → 0.5.0

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: 9f01b405bb0c605fb3d1ee13165c30708a209ac2
4
- data.tar.gz: 585231449522b519400d785946f8d226fee9a1c2
2
+ SHA256:
3
+ metadata.gz: 6df1b6a2804509540eacc96b2df9fd1a35ef129f64e88d672bdad2361dd92513
4
+ data.tar.gz: 46d9326603da3d5741c9174e7a579c1cc994463cdbafaeeabd13fd4bff6002d4
5
5
  SHA512:
6
- metadata.gz: cfe8b07219b1869ce39d2e9795b98c0bf34af89547274e4e6e22c112ef47df6286be7c2098032584d9c40811280ecfc4ea139bbce4bc53a2a64415f0b8a6cebd
7
- data.tar.gz: f7ca6b8dc3cc39ae349a753190eb809f734c00334bf22c5a676addd5f0485cc2c822f5801be8180f22d5e08272da66368c7a2bf446eef2da67ea09bfb4767205
6
+ metadata.gz: b01d5e605d9b743a6763d68f00a14e61f70314c7f666ddc628cb1930c49acabf5faf85c2f0cccb8f5652b706f9dc6a158723e027352c792ced274338e7f946cb
7
+ data.tar.gz: 2a2501d6aca9ea1b4afdfd5b1d976b1c16cae4e285bf2f6d8cd2b143a69619d680a7b48e2c3b958810e8f057316718c91b5493d13a2fee89b1958e6202efa5e5
@@ -1,16 +1,18 @@
1
1
  language: ruby
2
2
  cache: bundler
3
3
  rvm:
4
- - 2.0
5
- - 2.1
6
- - 2.2
4
+ - 2.5.7
5
+ - 2.6.5
6
+ - 2.7.0
7
7
  gemfile:
8
- - gemfiles/activerecord-3.2.x.gemfile
9
- - gemfiles/activerecord-4.0.x.gemfile
10
- - gemfiles/activerecord-4.1.x.gemfile
11
- - gemfiles/activerecord-4.2.x.gemfile
8
+ - gemfiles/activerecord-5.2.x.gemfile
9
+ - gemfiles/activerecord-6.0.x.gemfile
12
10
  addons:
13
11
  code_climate:
14
- repo_token: 1cac54041089115a5bf218169b62c76c8b87a5896f5aa973f89637a8553c0376
12
+ repo_token:
13
+ secure: Dn+nXUOFHTRUhYqYM1NYSxYSyoDhFaB2EHvlhBJ/FK3QxCy4a0beSLhs+YnDl8kI1DOrZQMl7HDrh9AHlfYvu5fX4zADD5g7JkTA2mIx1Rk3yazAUuy1j1ftX/UaowzoUAR5t0qwYm344Nnqoh+O1FujvWbiGVuZvWa6vfjFbXA=
15
14
  matrix:
16
15
  fast_finish: true
16
+ before_install:
17
+ - gem install bundler
18
+ sudo: false
@@ -1,3 +1,27 @@
1
+ ### 0.5.0 / 2020-07-27
2
+
3
+ * Add ability to use default and custom normalizers together (@subbbotin)
4
+
5
+ ### 0.4.0 / 2020-01-20
6
+
7
+ * Support Ruby 2.7 (@badlamer)
8
+
9
+ ### 0.3.1 / 2018-03-22
10
+
11
+ * Fix conditional normalization
12
+
13
+ ### 0.3.0 / 2018-03-21
14
+
15
+ * Add a possibility to use if/unless cases for normalizer options (@TheTharin)
16
+
17
+ ### 0.2.0 / 2016-03-17
18
+
19
+ * Introduce arrays normalization
20
+
21
+ ### 0.1.1 / 2015-11-12
22
+
23
+ * New `parameterize` normalizer
24
+
1
25
  ### 0.1.0 / 2014-08-30
2
26
 
3
27
  * Add Mongoid integration
data/README.md CHANGED
@@ -1,6 +1,9 @@
1
1
  ## Normalizr
2
2
 
3
- [![Travic CI](http://img.shields.io/travis/dimko/normalizr.svg)](https://travis-ci.org/dimko/normalizr) [![Code Climate](http://img.shields.io/codeclimate/github/dimko/normalizr.svg)](https://codeclimate.com/github/dimko/normalizr) [![Coverage](http://img.shields.io/codeclimate/coverage/github/dimko/normalizr.svg)](https://codeclimate.com/github/dimko/normalizr)
3
+ [![Gem Version](https://badge.fury.io/rb/normalizr.svg)](https://badge.fury.io/rb/normalizr)
4
+ [![Build Status](https://travis-ci.org/dmeremyanin/normalizr.svg?branch=master)](https://travis-ci.org/dmeremyanin/normalizr)
5
+ [![Code Climate](https://codeclimate.com/github/dmeremyanin/normalizr/badges/gpa.svg)](https://codeclimate.com/github/dmeremyanin/normalizr)
6
+ [![Test Coverage](https://codeclimate.com/github/dmeremyanin/normalizr/badges/coverage.svg)](https://codeclimate.com/github/dmeremyanin/normalizr/coverage)
4
7
 
5
8
  The [attribute_normalizer](https://github.com/mdeering/attribute_normalizer) replacement.
6
9
 
@@ -71,7 +74,7 @@ Normalizr.configure do
71
74
  add :indent do |value, amount = 2|
72
75
  if String === value
73
76
  value.indent(amount)
74
- end
77
+ else
75
78
  value
76
79
  end
77
80
  end
@@ -85,19 +88,29 @@ class User < ActiveRecord::Base
85
88
  normalize :first_name, :last_name, :about # with default normalizers
86
89
  normalize :email, with: :downcase
87
90
 
91
+ # you can use default and custom normalizers together
92
+ normalize :middle_name, with: [:default, :titleize]
93
+
88
94
  # supports `normalize_attribute` and `normalize_attributes` as well
89
95
  normalize_attribute :skype
96
+
97
+ # array normalization is supported too
98
+ normalize :skills
90
99
  end
91
100
 
92
- user = User.new(first_name: '', last_name: '')
101
+ user = User.new(first_name: '', last_name: '', middle_name: 'elizabeth ', skills: [nil, '', ' ruby'])
93
102
  user.email = "ADDRESS@example.com"
94
103
 
95
104
  user.first_name
96
105
  #=> nil
97
106
  user.last_name
98
107
  #=> nil
108
+ user.middle_name
109
+ #=> "Elizabeth"
99
110
  user.email
100
111
  #=> "address@example.com"
112
+ user.skills
113
+ #=> ["ruby"]
101
114
  ```
102
115
 
103
116
  ```ruby
@@ -122,6 +135,21 @@ sms.message
122
135
  #=> "It works"
123
136
  ```
124
137
 
138
+ You can also use if/unless options (they accept a symbol (method name) or proc):
139
+
140
+ ```ruby
141
+ class Book
142
+ include Normalizr::Concerns
143
+
144
+ attr_accessor :author, :description, :date
145
+
146
+ normalize :author, if: :author_should_be_normalized?
147
+ normalize :description, unless: :description_should_not_be_normalized?
148
+
149
+ normalize :author, if: -> { date.today? }
150
+ end
151
+ ```
152
+
125
153
  Normalize values outside of class:
126
154
 
127
155
  ```ruby
@@ -1,7 +1,7 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gem 'activerecord', '~> 3.2.0'
4
- gem 'mongoid', '~> 3.0'
3
+ gem 'activerecord', '~> 5.2.0'
4
+ gem 'mongoid', '~> 6.0'
5
5
  gem 'codeclimate-test-reporter', require: false
6
6
 
7
7
  gemspec path: '../'
@@ -1,7 +1,7 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gem 'activerecord', '~> 4.0.0'
4
- gem 'mongoid', '~> 4.0'
3
+ gem 'activerecord', '~> 6.0.0'
4
+ gem 'mongoid', '~> 7.0'
5
5
  gem 'codeclimate-test-reporter', require: false
6
6
 
7
7
  gemspec path: '../'
@@ -15,8 +15,12 @@ module Normalizr
15
15
  @configuration ||= Configuration.new
16
16
  end
17
17
 
18
- def configure
19
- configuration.instance_eval &Proc.new
18
+ def configure(&block)
19
+ unless block_given?
20
+ raise ArgumentError, '.configure must be called with a block'
21
+ end
22
+
23
+ configuration.instance_eval(&block)
20
24
  end
21
25
 
22
26
  def find(name)
@@ -27,13 +31,32 @@ module Normalizr
27
31
  end
28
32
  end
29
33
 
30
- def normalize(value, *normalizers)
31
- normalizers = configuration.default_normalizers if normalizers.empty?
32
- normalizers.each do |name|
34
+ def process(obj, name, options)
35
+ if Array === obj
36
+ obj.map { |item| process(item, name, options) }.tap do |ary|
37
+ ary.compact! if name == :blank
38
+ end
39
+ else
40
+ find(name).call(obj, options)
41
+ end
42
+ end
43
+
44
+ def normalize(obj, *normalizers)
45
+ normalizers_with_default(normalizers).reduce(obj) do |memo, name|
33
46
  name, options = name.first if Hash === name
34
- value = find(name).call(value, options)
47
+
48
+ process(memo, name, options)
35
49
  end
36
- value
50
+ end
51
+
52
+ private
53
+
54
+ def normalizers_with_default(normalizers)
55
+ default_index = normalizers.index(:default)
56
+
57
+ normalizers[default_index.to_i] = configuration.default_normalizers if normalizers.empty? || default_index
58
+ normalizers.flatten!
59
+ normalizers
37
60
  end
38
61
  end
39
62
 
@@ -11,8 +11,16 @@ module Normalizr
11
11
  prepend Module.new {
12
12
  options.attributes.each do |method|
13
13
  define_method :"#{method}=" do |value|
14
- value = Normalizr.normalize(value, *options.pre)
15
- value = Normalizr.normalize(value, *options.post) if options.post.any?
14
+ condition_lambda = -> condition { Proc === condition ? instance_exec(&condition) : send(condition) }
15
+
16
+ positive = options.positive_condition.all?(&condition_lambda)
17
+ negative = options.negative_condition.none?(&condition_lambda)
18
+
19
+ if positive && negative
20
+ value = Normalizr.normalize(value, *options.before)
21
+ value = Normalizr.normalize(value, *options.after) if options.after.any?
22
+ end
23
+
16
24
  super(value)
17
25
  end
18
26
  end
@@ -14,8 +14,12 @@ module Normalizr
14
14
  self.default_normalizers = normalizers
15
15
  end
16
16
 
17
- def add(name)
18
- normalizers[name] = Proc.new
17
+ def add(name, &block)
18
+ unless block_given?
19
+ raise ArgumentError, '#add must be called with a block'
20
+ end
21
+
22
+ normalizers[name] = block
19
23
  end
20
24
  end
21
25
  end
@@ -8,14 +8,22 @@ module Normalizr
8
8
  @block = block
9
9
  end
10
10
 
11
- def pre
11
+ def before
12
12
  options_at(:with, :before) { block }
13
13
  end
14
14
 
15
- def post
15
+ def after
16
16
  options_at(:after)
17
17
  end
18
18
 
19
+ def positive_condition
20
+ options_at(:if)
21
+ end
22
+
23
+ def negative_condition
24
+ options_at(:unless)
25
+ end
26
+
19
27
  private
20
28
 
21
29
  def options_at(*keys)
@@ -1,3 +1,3 @@
1
1
  module Normalizr
2
- VERSION = '0.1.1'
2
+ VERSION = '0.5.0'
3
3
  end
@@ -9,7 +9,7 @@ Gem::Specification.new do |spec|
9
9
  spec.email = ['deemox@gmail.com']
10
10
  spec.description = 'Writer methods parameters normalization'
11
11
  spec.summary = 'Writer methods parameters normalization'
12
- spec.homepage = 'https://github.com/dimko/normalizr'
12
+ spec.homepage = 'https://github.com/dmeremyanin/normalizr'
13
13
  spec.license = 'MIT'
14
14
 
15
15
  spec.files = `git ls-files`.split($/)
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
19
19
  spec.required_ruby_version = '>= 2.0'
20
20
 
21
21
  spec.add_development_dependency 'pry'
22
- spec.add_development_dependency 'bundler', '~> 1.5'
22
+ spec.add_development_dependency 'bundler'
23
23
  spec.add_development_dependency 'rake'
24
24
  spec.add_development_dependency 'rspec', '~> 3.0'
25
25
  spec.add_development_dependency 'rspec-its'
@@ -5,17 +5,27 @@ describe Normalizr::Configuration do
5
5
  subject { configuration }
6
6
 
7
7
  describe '#default' do
8
- before { configuration.default(:blank) }
9
- its(:default_normalizers) { should == [:blank] }
8
+ it 'accpets default normalizers' do
9
+ subject.default(:blank)
10
+ expect(subject.default_normalizers).to eq([:blank])
11
+ end
10
12
  end
11
13
 
12
14
  describe '#normalizer_names' do
13
- before { allow(configuration).to receive(:normalizers) {{ blank: proc {}}}}
14
- its(:normalizer_names) { should == [:blank] }
15
+ it 'returns normalized names' do
16
+ allow(subject).to receive(:normalizers) {{ blank: proc {}}}
17
+ expect(subject.normalizer_names).to eq([:blank])
18
+ end
15
19
  end
16
20
 
17
21
  describe '#add' do
18
- before { configuration.add(:blank) {}}
19
- its(:normalizer_names) { should include(:blank) }
22
+ it 'requires block' do
23
+ expect { subject.add(:blank) }.to raise_error(ArgumentError)
24
+ end
25
+
26
+ it 'accepts block' do
27
+ subject.add(:blank) {}
28
+ expect(subject.normalizer_names).to include(:blank)
29
+ end
20
30
  end
21
31
  end
@@ -17,7 +17,7 @@ describe Normalizr do
17
17
  context 'not existed normalizer' do
18
18
  let(:normalizer) { :not_existed }
19
19
 
20
- it 'raise exception with normalizer in message' do
20
+ it 'raises the exception with normalizer in message' do
21
21
  expect { subject }.to raise_error(Normalizr::MissingNormalizer, /not_existed/)
22
22
  end
23
23
  end
@@ -31,25 +31,113 @@ describe Normalizr do
31
31
  end
32
32
  end
33
33
 
34
+ describe '#process' do
35
+ subject { described_class.process(obj, name, {}) }
36
+
37
+ context 'string' do
38
+ let(:obj) { ' test ' }
39
+
40
+ context 'blank normalizer' do
41
+ let(:name) { :strip }
42
+
43
+ it 'strips the value' do
44
+ should == 'test'
45
+ end
46
+ end
47
+ end
48
+
49
+ context 'array ' do
50
+ let(:obj) { [nil, ' '] }
51
+
52
+ context 'strip normalizer' do
53
+ let(:name) { :strip }
54
+
55
+ it 'strips all elements' do
56
+ expect(subject).to eq([nil, ''])
57
+ end
58
+ end
59
+
60
+ context 'custom normalizer' do
61
+ let(:name) { proc { |value| value.prepend('N:') if String === value }}
62
+
63
+ it 'processes all elements with the custom normalizer' do
64
+ expect(subject).to eq([nil, 'N: '])
65
+ end
66
+ end
67
+
68
+ context 'blank normalizer' do
69
+ let(:name) { :blank }
70
+
71
+ it 'returns empty array' do
72
+ expect(subject).to eq([])
73
+ end
74
+ end
75
+ end
76
+ end
77
+
34
78
  describe '#normalize' do
35
79
  before { configuration.default_normalizers = [:strip, :blank] }
36
80
  subject { described_class.normalize(value, *normalizers) }
37
81
 
38
- context 'normalizers is empty' do
82
+
83
+ context 'normalizers are empty' do
39
84
  let(:normalizers) { [] }
40
- let(:value) { ' text ' }
41
85
 
42
- it 'use default normalizers' do
43
- expect(subject).to eq('text')
86
+ context 'string' do
87
+ let(:value) { ' text ' }
88
+
89
+ it 'uses the default normalizers' do
90
+ expect(subject).to eq('text')
91
+ end
92
+ end
93
+
94
+ context 'array' do
95
+ let(:value) { [nil, ' test '] }
96
+
97
+ it 'uses the default normalizers' do
98
+ expect(subject).to eq(['test'])
99
+ end
44
100
  end
45
101
  end
46
102
 
47
- context 'normalizers is not empty' do
103
+ context 'normalizers are not empty' do
48
104
  let(:normalizers) { [:strip, { truncate: { length: 8, omission: '...' }}, proc { |v| v.first(6) }] }
105
+
106
+ context 'string' do
107
+ let(:value) { ' Lorem ipsum dolor sit amet' }
108
+
109
+ it 'strips, truncates and then slices the value' do
110
+ expect(subject).to eq('Lorem.')
111
+ end
112
+ end
113
+
114
+ context 'array' do
115
+ let(:value) { [' Lorem ipsum dolor sit amet', ' One more sentence'] }
116
+
117
+ it 'strips, truncates and then slices the value' do
118
+ expect(subject).to eq(['Lorem.', 'One m.'])
119
+ end
120
+ end
121
+ end
122
+
123
+ context 'normalizers are default and custom' do
124
+ let(:normalizers) { [:default, { truncate: { length: 8, omission: '...' }}, proc { |v| v.first(6) }] }
49
125
  let(:value) { ' Lorem ipsum dolor sit amet' }
50
126
 
51
- it 'normalize value' do
52
- expect(subject).to eq('Lorem.')
127
+ context 'string' do
128
+ let(:value) { ' Lorem ipsum dolor sit amet' }
129
+
130
+ it 'uses the default normalizers, then truncates and slices the value' do
131
+ expect(subject).to eq('Lorem.')
132
+ end
133
+ end
134
+
135
+ context 'array' do
136
+ let(:value) { [' Lorem ipsum dolor sit amet', ' One more sentence', ''] }
137
+
138
+ it 'strips, truncates and then slices the value' do
139
+ expect(subject).to eq(['Lorem.', 'One m.'])
140
+ end
53
141
  end
54
142
  end
55
143
  end
@@ -1,12 +1,15 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe Book do
4
- it { should normalize_attribute(:author).from(' Michael Deering ').to('Michael Deering') }
5
- it { should normalize_attribute(:us_price).from('$3.50').to(3.50) }
6
- it { should normalize_attribute(:cnd_price).from('$3,450.98').to(3450.98) }
7
- it { should normalize_attribute(:summary).from(' Here is my summary that is a little to long ').to('Here is m...') }
4
+ it { should normalize(:author).from(' Michael Deering ').to('Michael Deering') }
5
+ it { should normalize(:us_price).from('$3.50').to(3.50) }
6
+ it { should normalize(:cnd_price).from('$3,450.98').to(3450.98) }
7
+ it { should normalize(:summary).from(' Here is my summary that is a little to long ').to('Here is m...') }
8
+ it { should normalize(:title).from('pick up chicks with magic tricks').to('Pick Up Chicks With Magic Tricks') }
8
9
 
9
- it { should normalize_attribute(:title).from('pick up chicks with magic tricks').to('Pick Up Chicks With Magic Tricks') }
10
+ it { should normalize(:tags).from(['', nil, ' ', ' test']).to(['test']) }
11
+ it { should normalize(:tags).from([[''], [nil, ' test ']]).to([[], ['test']]) } # nested arrays
12
+ it { should normalize(:tags).from([]).to([]) }
10
13
 
11
14
  context 'normalization should not interfere with other hooks and aliases on the attribute assignment' do
12
15
  before do
@@ -22,7 +25,7 @@ describe Book do
22
25
  before do
23
26
  @book = Book.create!(title: 'Original Title')
24
27
  @book2 = Book.find(@book.id)
25
- @book2.update_attributes(title: 'New Title')
28
+ @book2.update(title: 'New Title')
26
29
  end
27
30
 
28
31
  it "should reflect the change when the record is reloaded" do
@@ -4,4 +4,42 @@ describe User do
4
4
  context 'on default attribute with the default normalizer changed' do
5
5
  it { should normalize_attribute(:firstname).from(' here ').to('here') }
6
6
  end
7
+
8
+ context 'last name has to be normalized' do
9
+ before do
10
+ allow(subject).to receive(:should_normalize_lastname?).and_return(true)
11
+ end
12
+
13
+ it { is_expected.to normalize_attribute(:lastname).from(' here ').to('here') }
14
+ end
15
+
16
+ context 'last name cannot be normalized' do
17
+ before do
18
+ allow(subject).to receive(:should_normalize_lastname?).and_return(false)
19
+ end
20
+
21
+ it { is_expected.not_to normalize_attribute(:lastname).from(' here ').to('here') }
22
+ end
23
+
24
+ context 'maidenname has to be normalized' do
25
+ before do
26
+ allow(subject).to receive(:should_normalize_maidenname_positive?).and_return(true)
27
+ allow(subject).to receive(:should_normalize_maidenname_negative?).and_return(false)
28
+ end
29
+
30
+ it { is_expected.to normalize_attribute(:maidenname).from(' boba ').to('boba') }
31
+ end
32
+
33
+ context 'maidenname cannot to be normalized' do
34
+ before do
35
+ allow(subject).to receive(:should_normalize_maidenname_positive?).and_return(true)
36
+ allow(subject).to receive(:should_normalize_maidenname_negative?).and_return(true)
37
+ end
38
+
39
+ it { is_expected.not_to normalize_attribute(:maidenname).from(' boba ').to('boba') }
40
+ end
41
+
42
+ context 'favouritebook has to be normalized with proc' do
43
+ it { is_expected.to normalize_attribute(:favouritebook).from(' Евангелие от Матфея ').to('Евангелие от Матфея') }
44
+ end
7
45
  end
@@ -1,4 +1,4 @@
1
- require 'support/codeclimate'
1
+ require 'simplecov'
2
2
  require 'pry'
3
3
  require 'rspec'
4
4
  require 'rspec/its'
@@ -5,4 +5,7 @@ class Book < ActiveRecord::Base
5
5
  normalize_attributes :title do |value|
6
6
  String === value ? value.titleize.strip : value
7
7
  end
8
+
9
+ serialize :tags, Array
10
+ normalize :tags
8
11
  end
@@ -1,3 +1,21 @@
1
1
  class User < Person
2
2
  normalize_attribute :firstname
3
+
4
+ normalize :lastname, if: :should_normalize_lastname?
5
+ normalize :maidenname, if: :should_normalize_maidenname_positive?, unless: :should_normalize_maidenname_negative?
6
+ normalize :favouritebook, if: -> { true }
7
+
8
+ private
9
+
10
+ def should_normalize_lastname?
11
+ true
12
+ end
13
+
14
+ def should_normalize_maidenname_positive?
15
+ true
16
+ end
17
+
18
+ def should_normalize_maidenname_negative?
19
+ false
20
+ end
3
21
  end
@@ -22,6 +22,7 @@ ActiveRecord::Schema.define do
22
22
  t.decimal :us_price
23
23
  t.string :summary
24
24
  t.string :title
25
+ t.text :tags
25
26
  end
26
27
 
27
28
  create_table :journals, force: true do |t|
@@ -37,5 +38,7 @@ ActiveRecord::Schema.define do
37
38
  create_table :users, force: true do |t|
38
39
  t.string :firstname
39
40
  t.string :lastname
41
+ t.string :maidenname
42
+ t.string :favouritebook
40
43
  end
41
44
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: normalizr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dimko
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-11-13 00:00:00.000000000 Z
11
+ date: 2020-07-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pry
@@ -28,16 +28,16 @@ dependencies:
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '1.5'
33
+ version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '1.5'
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -151,10 +151,8 @@ files:
151
151
  - LICENSE.txt
152
152
  - README.md
153
153
  - Rakefile
154
- - gemfiles/activerecord-3.2.x.gemfile
155
- - gemfiles/activerecord-4.0.x.gemfile
156
- - gemfiles/activerecord-4.1.x.gemfile
157
- - gemfiles/activerecord-4.2.x.gemfile
154
+ - gemfiles/activerecord-5.2.x.gemfile
155
+ - gemfiles/activerecord-6.0.x.gemfile
158
156
  - lib/normalizr.rb
159
157
  - lib/normalizr/concern.rb
160
158
  - lib/normalizr/configuration.rb
@@ -193,7 +191,7 @@ files:
193
191
  - spec/support/models/publisher.rb
194
192
  - spec/support/models/user.rb
195
193
  - spec/support/schema.rb
196
- homepage: https://github.com/dimko/normalizr
194
+ homepage: https://github.com/dmeremyanin/normalizr
197
195
  licenses:
198
196
  - MIT
199
197
  metadata: {}
@@ -212,8 +210,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
212
210
  - !ruby/object:Gem::Version
213
211
  version: '0'
214
212
  requirements: []
215
- rubyforge_project:
216
- rubygems_version: 2.4.8
213
+ rubygems_version: 3.0.8
217
214
  signing_key:
218
215
  specification_version: 4
219
216
  summary: Writer methods parameters normalization
@@ -1,7 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gem 'activerecord', '~> 4.1.0'
4
- gem 'mongoid', '~> 4.0'
5
- gem 'codeclimate-test-reporter', require: false
6
-
7
- gemspec path: '../'
@@ -1,7 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gem 'activerecord', '~> 4.2.0'
4
- gem 'mongoid', '~> 4.0'
5
- gem 'codeclimate-test-reporter', require: false
6
-
7
- gemspec path: '../'