uuidable 0.2.0 → 0.2.5

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
- SHA1:
3
- metadata.gz: 20a81bfd257b2ccc14fcf0d5534cf959dd312e02
4
- data.tar.gz: 80d2fd04ee3c6d969c46737ec209e6673fb07a64
2
+ SHA256:
3
+ metadata.gz: 5628f9ea69f6e8c81ea139b7e9c737b6dd7531560c2f6e46240eee051d6c29bb
4
+ data.tar.gz: ed36c9a7b63affee80dd3149eaf7d6f5f194b1f6377559ba0b7922af507a52c8
5
5
  SHA512:
6
- metadata.gz: 826e63ce56cedda8472dda13aaa4032786263743bf9f88fe3ff5a530afba6d9261de75dbed7a4a2f57bf887672f1a653766a8c60957f9cad06b4501c30d6a5d4
7
- data.tar.gz: 8c20370fe8c1b20d91e3a96e66deefc6bbe9145ded75024999b363241c0a0029c3bb975fc65da40f28952e6d59f6fcf43c414f61d3dc2ac9ad9d452c5a6ce9d6
6
+ metadata.gz: b1d5aa768583511f4d4427b6dab13ca72de4193993a05fd0fc29ef7140c9fcf40f55111b2cfab5fa8afde26c568fee1ae58f7ab82dd504effe76e351d14414c2
7
+ data.tar.gz: 24aa031c103ae8c1958373806335d7de27c0b3cd5ebea17c625d79831610ef6db34784b46d0051163eb991e06e0b54b63f5c72a68fe2b06c216b4906c9f4f6eb
data/.gitignore CHANGED
@@ -1,6 +1,5 @@
1
1
  /.bundle/
2
2
  /.yardoc
3
- /Gemfile.lock
4
3
  /_yardoc/
5
4
  /coverage/
6
5
  /doc/
data/.travis.yml CHANGED
@@ -1,7 +1,7 @@
1
1
  language: ruby
2
2
  rvm:
3
- - 2.2.4
4
- before_install: gem install bundler -v 1.11.2
3
+ - 2.5.1
4
+ before_install: gem install bundler -v 1.17.3
5
5
  script:
6
6
  - bundle exec rubocop
7
7
  - bundle exec rspec
data/Gemfile.lock ADDED
@@ -0,0 +1,114 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ uuidable (0.2.5)
5
+ activerecord (>= 4.2, < 6.1)
6
+ uuidtools (>= 2.1, < 3)
7
+
8
+ GEM
9
+ remote: https://rubygems.org/
10
+ specs:
11
+ activemodel (6.0.3.5)
12
+ activesupport (= 6.0.3.5)
13
+ activerecord (6.0.3.5)
14
+ activemodel (= 6.0.3.5)
15
+ activesupport (= 6.0.3.5)
16
+ activesupport (6.0.3.5)
17
+ concurrent-ruby (~> 1.0, >= 1.0.2)
18
+ i18n (>= 0.7, < 2)
19
+ minitest (~> 5.1)
20
+ tzinfo (~> 1.1)
21
+ zeitwerk (~> 2.2, >= 2.2.2)
22
+ addressable (2.4.0)
23
+ ast (2.3.0)
24
+ backports (3.6.8)
25
+ concurrent-ruby (1.1.8)
26
+ diff-lcs (1.2.5)
27
+ ethon (0.8.1)
28
+ ffi (>= 1.3.0)
29
+ faraday (0.9.2)
30
+ multipart-post (>= 1.2, < 3)
31
+ faraday_middleware (0.10.0)
32
+ faraday (>= 0.7.4, < 0.10)
33
+ ffi (1.13.1)
34
+ gh (0.14.0)
35
+ addressable
36
+ backports
37
+ faraday (~> 0.8)
38
+ multi_json (~> 1.0)
39
+ net-http-persistent (>= 2.7)
40
+ net-http-pipeline
41
+ highline (1.7.8)
42
+ i18n (1.8.9)
43
+ concurrent-ruby (~> 1.0)
44
+ json (2.3.1)
45
+ launchy (2.4.3)
46
+ addressable (~> 2.3)
47
+ minitest (5.14.3)
48
+ multi_json (1.11.2)
49
+ multipart-post (2.0.0)
50
+ net-http-persistent (2.9.4)
51
+ net-http-pipeline (1.0.1)
52
+ parallel (1.12.0)
53
+ parser (2.4.0.2)
54
+ ast (~> 2.3)
55
+ powerpack (0.1.1)
56
+ pusher-client (0.6.2)
57
+ json
58
+ websocket (~> 1.0)
59
+ rainbow (2.2.2)
60
+ rake
61
+ rake (13.0.1)
62
+ rspec (3.4.0)
63
+ rspec-core (~> 3.4.0)
64
+ rspec-expectations (~> 3.4.0)
65
+ rspec-mocks (~> 3.4.0)
66
+ rspec-core (3.4.3)
67
+ rspec-support (~> 3.4.0)
68
+ rspec-expectations (3.4.0)
69
+ diff-lcs (>= 1.2.0, < 2.0)
70
+ rspec-support (~> 3.4.0)
71
+ rspec-mocks (3.4.1)
72
+ diff-lcs (>= 1.2.0, < 2.0)
73
+ rspec-support (~> 3.4.0)
74
+ rspec-support (3.4.1)
75
+ rubocop (0.50.0)
76
+ parallel (~> 1.10)
77
+ parser (>= 2.3.3.1, < 3.0)
78
+ powerpack (~> 0.1)
79
+ rainbow (>= 2.2.2, < 3.0)
80
+ ruby-progressbar (~> 1.7)
81
+ unicode-display_width (~> 1.0, >= 1.0.1)
82
+ ruby-progressbar (1.9.0)
83
+ thread_safe (0.3.6)
84
+ travis (1.8.2)
85
+ backports
86
+ faraday (~> 0.9)
87
+ faraday_middleware (~> 0.9, >= 0.9.1)
88
+ gh (~> 0.13)
89
+ highline (~> 1.6)
90
+ launchy (~> 2.1)
91
+ pusher-client (~> 0.4)
92
+ typhoeus (~> 0.6, >= 0.6.8)
93
+ typhoeus (0.8.0)
94
+ ethon (>= 0.8.0)
95
+ tzinfo (1.2.9)
96
+ thread_safe (~> 0.1)
97
+ unicode-display_width (1.3.0)
98
+ uuidtools (2.2.0)
99
+ websocket (1.2.2)
100
+ zeitwerk (2.4.2)
101
+
102
+ PLATFORMS
103
+ ruby
104
+
105
+ DEPENDENCIES
106
+ bundler (~> 1.11)
107
+ rake (~> 13.0)
108
+ rspec (~> 3.0)
109
+ rubocop
110
+ travis (~> 1.8, >= 1.8.2)
111
+ uuidable!
112
+
113
+ BUNDLED WITH
114
+ 1.17.3
@@ -21,7 +21,7 @@ module Uuidable
21
21
 
22
22
  def uuidable(as_param: true)
23
23
  after_initialize { self.uuid = Uuidable.generate_uuid if attributes.keys.include?('uuid') && uuid.blank? }
24
- validates :uuid, presence: true, uniqueness: true
24
+ validates :uuid, presence: true, uniqueness: true, if: :uuid_changed?
25
25
 
26
26
  if as_param
27
27
  define_method :to_param do
@@ -8,10 +8,12 @@ module Uuidable
8
8
  module TableDefinition
9
9
  def uuid(opts = {})
10
10
  index_opts = opts.delete(:index)
11
+ index_opts = {} if index_opts.nil?
12
+
11
13
  column_name = opts.delete(:column_name) || COLUMN_NAME
12
14
 
13
15
  column column_name, COLUMN_TYPE, COLUMN_OPTIONS.merge(opts)
14
- index column_name, INDEX_OPTIONS.merge(index_opts) unless index_opts == false
16
+ index column_name, INDEX_OPTIONS.merge(index_opts) if index_opts
15
17
  end
16
18
  end
17
19
 
@@ -19,11 +21,13 @@ module Uuidable
19
21
  module Migration
20
22
  def add_uuid_column(table_name, opts = {})
21
23
  index_opts = opts.delete(:index)
24
+ index_opts = {} if index_opts == true
25
+
22
26
  column_name = opts.delete(:column_name) || COLUMN_NAME
23
27
 
24
28
  add_column table_name, column_name, COLUMN_TYPE, COLUMN_OPTIONS.merge(opts)
25
29
 
26
- add_uuid_index(index_opts.merge(column_name: column_name)) unless index_opts == false
30
+ add_uuid_index(table_name, index_opts.merge(column_name: column_name)) if index_opts
27
31
  end
28
32
 
29
33
  def add_uuid_index(table_name, opts = {})
@@ -1,3 +1,3 @@
1
1
  module Uuidable
2
- VERSION = '0.2.0'.freeze
2
+ VERSION = '0.2.5'.freeze
3
3
  end
data/uuidable.gemspec CHANGED
@@ -1,5 +1,3 @@
1
- # coding: utf-8
2
-
3
1
  lib = File.expand_path('../lib', __FILE__)
4
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
3
  require 'uuidable/version'
@@ -21,10 +19,10 @@ Gem::Specification.new do |spec|
21
19
  spec.require_paths = ['lib']
22
20
 
23
21
  spec.add_development_dependency 'bundler', '~> 1.11'
24
- spec.add_development_dependency 'rake', '~> 10.0'
22
+ spec.add_development_dependency 'rake', '~> 13.0'
25
23
  spec.add_development_dependency 'rspec', '~> 3.0'
26
24
  spec.add_development_dependency 'travis', '~> 1.8', '>= 1.8.2'
27
25
 
26
+ spec.add_dependency 'activerecord', '>= 4.2', '< 6.1'
28
27
  spec.add_dependency 'uuidtools', '>= 2.1', '< 3'
29
- spec.add_dependency 'activerecord', '>= 4.2', '< 5.1'
30
28
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uuidable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sergey Gnuskov
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-09-04 00:00:00.000000000 Z
11
+ date: 2021-02-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '13.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: '10.0'
40
+ version: '13.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -73,45 +73,45 @@ dependencies:
73
73
  - !ruby/object:Gem::Version
74
74
  version: 1.8.2
75
75
  - !ruby/object:Gem::Dependency
76
- name: uuidtools
76
+ name: activerecord
77
77
  requirement: !ruby/object:Gem::Requirement
78
78
  requirements:
79
79
  - - ">="
80
80
  - !ruby/object:Gem::Version
81
- version: '2.1'
81
+ version: '4.2'
82
82
  - - "<"
83
83
  - !ruby/object:Gem::Version
84
- version: '3'
84
+ version: '6.1'
85
85
  type: :runtime
86
86
  prerelease: false
87
87
  version_requirements: !ruby/object:Gem::Requirement
88
88
  requirements:
89
89
  - - ">="
90
90
  - !ruby/object:Gem::Version
91
- version: '2.1'
91
+ version: '4.2'
92
92
  - - "<"
93
93
  - !ruby/object:Gem::Version
94
- version: '3'
94
+ version: '6.1'
95
95
  - !ruby/object:Gem::Dependency
96
- name: activerecord
96
+ name: uuidtools
97
97
  requirement: !ruby/object:Gem::Requirement
98
98
  requirements:
99
99
  - - ">="
100
100
  - !ruby/object:Gem::Version
101
- version: '4.2'
101
+ version: '2.1'
102
102
  - - "<"
103
103
  - !ruby/object:Gem::Version
104
- version: '5.1'
104
+ version: '3'
105
105
  type: :runtime
106
106
  prerelease: false
107
107
  version_requirements: !ruby/object:Gem::Requirement
108
108
  requirements:
109
109
  - - ">="
110
110
  - !ruby/object:Gem::Version
111
- version: '4.2'
111
+ version: '2.1'
112
112
  - - "<"
113
113
  - !ruby/object:Gem::Version
114
- version: '5.1'
114
+ version: '3'
115
115
  description: ''
116
116
  email:
117
117
  - sergey.gnuskov@flant.com
@@ -125,6 +125,7 @@ files:
125
125
  - ".rubocop.yml"
126
126
  - ".travis.yml"
127
127
  - Gemfile
128
+ - Gemfile.lock
128
129
  - LICENSE.txt
129
130
  - README.md
130
131
  - Rakefile
@@ -154,8 +155,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
154
155
  - !ruby/object:Gem::Version
155
156
  version: '0'
156
157
  requirements: []
157
- rubyforge_project:
158
- rubygems_version: 2.6.13
158
+ rubygems_version: 3.0.8
159
159
  signing_key:
160
160
  specification_version: 4
161
161
  summary: Helps using uuid everywhere in routes instead of id for ActiveRecord models.