druuid 1.0.0 → 1.0.1
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 +7 -0
- data/druuid.rb +7 -7
- metadata +13 -18
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 5a713dab43e5bca952c2729d2b95b5a41c0ea067
|
4
|
+
data.tar.gz: a2b168e714e1ad0baca24c1d8f414a3722389ac2
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: f78b69bcb4536c01a82dd40779e63899f57acc966bed7b184b53963043b5b3549a827547c7885c0ff8d9e6af3a2dfb76ef2355ed8cc8b85d92830b1e621782dc
|
7
|
+
data.tar.gz: f6dfc909421fbb45e62e07e96d5a7b2c9c213a6ed05bd4382bf6db7c5b7e2aa85d6f32376a1711d7db04bad47b214cc03c46c3a30f6227747e546a317e108c55
|
data/druuid.rb
CHANGED
@@ -18,11 +18,11 @@ module Druuid
|
|
18
18
|
# @param [Time] time of UUID
|
19
19
|
# @param [Numeric] epoch offset
|
20
20
|
# @return [Bignum] UUID
|
21
|
-
def gen time = Time.now,
|
22
|
-
ms = ((time.to_f -
|
21
|
+
def gen time = Time.now, epoch_offset = epoch
|
22
|
+
ms = ((time.to_f - epoch_offset.to_i) * 1e3).round
|
23
23
|
rand = (SecureRandom.random_number * 1e16).round
|
24
|
-
id = ms << (
|
25
|
-
id | rand % (2 ** (
|
24
|
+
id = ms << (64 - 41)
|
25
|
+
id | rand % (2 ** (64 - 41))
|
26
26
|
end
|
27
27
|
|
28
28
|
# Determines when a given UUID was generated.
|
@@ -33,9 +33,9 @@ module Druuid
|
|
33
33
|
# @example
|
34
34
|
# Druuid.time 11142943683383068069
|
35
35
|
# # => 2012-02-04 00:00:00 -0800
|
36
|
-
def time uuid,
|
37
|
-
ms = uuid >> (
|
38
|
-
Time.at (ms / 1e3) +
|
36
|
+
def time uuid, epoch_offset = epoch
|
37
|
+
ms = uuid >> (64 - 41)
|
38
|
+
Time.at (ms / 1e3) + epoch_offset.to_i
|
39
39
|
end
|
40
40
|
|
41
41
|
end
|
metadata
CHANGED
@@ -1,46 +1,41 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: druuid
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
5
|
-
prerelease:
|
4
|
+
version: 1.0.1
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Stephen Celis
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2015-04-17 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: rake
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ">="
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '0'
|
22
20
|
type: :development
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '0'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rspec
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - ">="
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: '0'
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - ">="
|
44
39
|
- !ruby/object:Gem::Version
|
45
40
|
version: '0'
|
46
41
|
description: Druuid generates 64-bit, time-sortable UUIDs.
|
@@ -54,27 +49,27 @@ files:
|
|
54
49
|
homepage: https://github.com/recurly/druuid
|
55
50
|
licenses:
|
56
51
|
- MIT
|
52
|
+
metadata: {}
|
57
53
|
post_install_message:
|
58
54
|
rdoc_options: []
|
59
55
|
require_paths:
|
60
|
-
- .
|
56
|
+
- "."
|
61
57
|
required_ruby_version: !ruby/object:Gem::Requirement
|
62
|
-
none: false
|
63
58
|
requirements:
|
64
|
-
- -
|
59
|
+
- - ">="
|
65
60
|
- !ruby/object:Gem::Version
|
66
61
|
version: '1.9'
|
67
62
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
68
|
-
none: false
|
69
63
|
requirements:
|
70
|
-
- -
|
64
|
+
- - ">="
|
71
65
|
- !ruby/object:Gem::Version
|
72
66
|
version: '0'
|
73
67
|
requirements: []
|
74
68
|
rubyforge_project:
|
75
|
-
rubygems_version:
|
69
|
+
rubygems_version: 2.2.2
|
76
70
|
signing_key:
|
77
|
-
specification_version:
|
71
|
+
specification_version: 4
|
78
72
|
summary: Date-relative UUID generation
|
79
73
|
test_files:
|
80
74
|
- spec/druuid_spec.rb
|
75
|
+
has_rdoc:
|