obfuscate_id 0.0.4 → 0.1.0

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
  SHA1:
3
- metadata.gz: cd7d195e3e48bc52a6a503768fa97a6e3a1e2ecf
4
- data.tar.gz: 06c755b17b92e191a58ee54c20e9660a04330ebd
3
+ metadata.gz: 64cbe78cad20f6cb99005995704498fedda9314c
4
+ data.tar.gz: 45018536b1d0d39375cdaa3fa62a3ab4d1865c52
5
5
  SHA512:
6
- metadata.gz: c414a598a21e07bdb67aa85e0a5d07808124cabf44ab6a7f91198a5a2579f74f6620a79c86edbf6e2b40bd705cc76342780b3b13dcd03d851524be4d4d2aedae
7
- data.tar.gz: 44df8d341bea9f1a482e8488a50095402c0e50ccd2d0033e605557fce1a41bb8ca6cd04def070698a86ac432b59a46ae180bed2e33b8aa09032ee0f3ae0ab895
6
+ metadata.gz: e6cfc54d13875e07a55e1a238fb33e1baff7480ce50fa439c27131e2cda403a58133ffa7614aa94e4a04e9fa615741838f1104ebbd0cb346731f3fd828de7401
7
+ data.tar.gz: 9c8568e7b102128ea9230595929ba80d52c057809b125fdf6575bbbc965d6934ebe1031c15fbb92ef313364166b98a75f8ad8ae5d1785589007b205caf61f789
data/lib/obfuscate_id.rb CHANGED
@@ -1,5 +1,4 @@
1
1
  module ObfuscateId
2
-
3
2
  def obfuscate_id(options = {})
4
3
  require 'scatter_swap'
5
4
 
@@ -29,8 +28,7 @@ module ObfuscateId
29
28
  scope = deobfuscate_id(scope)
30
29
  end
31
30
  end
32
- options.delete(:no_obfuscated_id)
33
- super(scope, options)
31
+ super(scope)
34
32
  end
35
33
 
36
34
  def has_obfuscated_id?
@@ -49,7 +47,7 @@ module ObfuscateId
49
47
  number = name.split("").collect do |char|
50
48
  alphabet.index(char)
51
49
  end
52
- number.join.to_i
50
+ number.shift(12).join.to_i
53
51
  end
54
52
 
55
53
  end
@@ -61,9 +59,29 @@ module ObfuscateId
61
59
 
62
60
  # As ActiveRecord::Persistence#reload uses self.id
63
61
  # reload without deobfuscating
62
+ # def reload(options = nil)
63
+ # options = (options || {}).merge(:no_obfuscated_id => true)
64
+ # super(options)
65
+ # end
66
+
64
67
  def reload(options = nil)
65
68
  options = (options || {}).merge(:no_obfuscated_id => true)
66
- super(options)
69
+ clear_aggregation_cache
70
+ clear_association_cache
71
+ fresh_object =
72
+ if options && options[:lock]
73
+ self.class.unscoped { self.class.lock(options[:lock]).find(id, options) }
74
+ else
75
+ self.class.unscoped { self.class.find(id, options) }
76
+ end
77
+
78
+ @attributes.update(fresh_object.instance_variable_get('@attributes'))
79
+
80
+ @column_types = self.class.column_types
81
+ @column_types_override = fresh_object.instance_variable_get('@column_types_override')
82
+ @attributes_cache = {}
83
+ @new_record = false
84
+ self
67
85
  end
68
86
 
69
87
  def deobfuscate_id(obfuscated_id)
@@ -1,3 +1,3 @@
1
1
  module ObfuscateId
2
- VERSION = "0.0.4"
2
+ VERSION = "0.1.0"
3
3
  end
metadata CHANGED
@@ -1,125 +1,167 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: obfuscate_id
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nathan Amick
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-29 00:00:00.000000000 Z
11
+ date: 2015-02-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: scatter_swap
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: 0.0.3
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: 0.0.3
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rails
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '='
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 3.2.15
33
+ version: 4.1.8
34
34
  type: :runtime
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: 3.2.15
40
+ version: 4.1.8
41
+ - !ruby/object:Gem::Dependency
42
+ name: activeresource
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 4.0.0
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 4.0.0
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: sqlite3
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
- - - '>='
59
+ - - ">="
46
60
  - !ruby/object:Gem::Version
47
61
  version: '0'
48
62
  type: :development
49
63
  prerelease: false
50
64
  version_requirements: !ruby/object:Gem::Requirement
51
65
  requirements:
52
- - - '>='
66
+ - - ">="
53
67
  - !ruby/object:Gem::Version
54
68
  version: '0'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: rspec-rails
57
71
  requirement: !ruby/object:Gem::Requirement
58
72
  requirements:
59
- - - '>='
73
+ - - ">="
60
74
  - !ruby/object:Gem::Version
61
75
  version: '0'
62
76
  type: :development
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
- - - '>='
80
+ - - ">="
67
81
  - !ruby/object:Gem::Version
68
82
  version: '0'
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: capybara
71
85
  requirement: !ruby/object:Gem::Requirement
72
86
  requirements:
73
- - - '>='
87
+ - - ">="
74
88
  - !ruby/object:Gem::Version
75
89
  version: '0'
76
90
  type: :development
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
- - - '>='
94
+ - - ">="
81
95
  - !ruby/object:Gem::Version
82
96
  version: '0'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: guard-rspec
85
99
  requirement: !ruby/object:Gem::Requirement
86
100
  requirements:
87
- - - '>='
101
+ - - ">="
88
102
  - !ruby/object:Gem::Version
89
103
  version: '0'
90
104
  type: :development
91
105
  prerelease: false
92
106
  version_requirements: !ruby/object:Gem::Requirement
93
107
  requirements:
94
- - - '>='
108
+ - - ">="
95
109
  - !ruby/object:Gem::Version
96
110
  version: '0'
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: guard-spork
99
113
  requirement: !ruby/object:Gem::Requirement
100
114
  requirements:
101
- - - '>='
115
+ - - ">="
102
116
  - !ruby/object:Gem::Version
103
117
  version: '0'
104
118
  type: :development
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
107
121
  requirements:
108
- - - '>='
122
+ - - ">="
109
123
  - !ruby/object:Gem::Version
110
124
  version: '0'
111
125
  - !ruby/object:Gem::Dependency
112
126
  name: rb-inotify
113
127
  requirement: !ruby/object:Gem::Requirement
114
128
  requirements:
115
- - - '>='
129
+ - - ">="
116
130
  - !ruby/object:Gem::Version
117
131
  version: '0'
118
132
  type: :development
119
133
  prerelease: false
120
134
  version_requirements: !ruby/object:Gem::Requirement
121
135
  requirements:
122
- - - '>='
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: pry
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: launchy
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
123
165
  - !ruby/object:Gem::Version
124
166
  version: '0'
125
167
  description: Make your ActiveRecord IDs non-obvious
@@ -129,14 +171,15 @@ executables: []
129
171
  extensions: []
130
172
  extra_rdoc_files: []
131
173
  files:
132
- - lib/obfuscate_id/version.rb
133
- - lib/obfuscate_id.rb
134
- - lib/tasks/obfuscate_id_tasks.rake
135
174
  - MIT-LICENSE
136
- - Rakefile
137
175
  - README.md
176
+ - Rakefile
177
+ - lib/obfuscate_id.rb
178
+ - lib/obfuscate_id/version.rb
138
179
  homepage: https://github.com/namick/obfuscate_id
139
- licenses: []
180
+ licenses:
181
+ - MIT
182
+ - GPL-2
140
183
  metadata: {}
141
184
  post_install_message:
142
185
  rdoc_options: []
@@ -144,19 +187,18 @@ require_paths:
144
187
  - lib
145
188
  required_ruby_version: !ruby/object:Gem::Requirement
146
189
  requirements:
147
- - - '>='
190
+ - - ">="
148
191
  - !ruby/object:Gem::Version
149
192
  version: '0'
150
193
  required_rubygems_version: !ruby/object:Gem::Requirement
151
194
  requirements:
152
- - - '>='
195
+ - - ">="
153
196
  - !ruby/object:Gem::Version
154
197
  version: '0'
155
198
  requirements: []
156
199
  rubyforge_project:
157
- rubygems_version: 2.0.6
200
+ rubygems_version: 2.2.2
158
201
  signing_key:
159
202
  specification_version: 4
160
203
  summary: Mask ActiveRecord IDs
161
204
  test_files: []
162
- has_rdoc:
@@ -1,4 +0,0 @@
1
- # desc "Explaining what the task does"
2
- # task :obfuscate_id do
3
- # # Task goes here
4
- # end