uuid 2.3.5 → 2.3.6

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.
Files changed (7) hide show
  1. data/CHANGELOG +13 -0
  2. data/Rakefile +5 -5
  3. data/bin/uuid +51 -12
  4. data/lib/uuid.rb +5 -0
  5. data/test/test-uuid.rb +15 -0
  6. data/uuid.gemspec +1 -1
  7. metadata +12 -7
data/CHANGELOG CHANGED
@@ -1,3 +1,16 @@
1
+ 2.3.6 (2012-11-18)
2
+
3
+ Manually setting the state_file path sets mode too (Tom Lea).
4
+
5
+ When manually setting the state file, set the mode too. Failure to do so
6
+ causes an implicit conversion of nil to integer on first usage.
7
+
8
+ Also provided a mode method to set the mode explicitly.
9
+
10
+
11
+ Reverted executable loss (Michael Witrant ).
12
+
13
+
1
14
  2.3.4 (2012-01-23)
2
15
 
3
16
  Source files are now UTF-8 (Vicente Reig)
data/Rakefile CHANGED
@@ -1,5 +1,5 @@
1
1
  require 'rake/testtask'
2
- require 'rake/rdoctask'
2
+ #require 'rake/rdoctask'
3
3
 
4
4
 
5
5
  spec = Gem::Specification.load(File.expand_path("uuid.gemspec", File.dirname(__FILE__)))
@@ -16,10 +16,10 @@ Rake::TestTask.new do |test|
16
16
  end
17
17
 
18
18
  # Create the documentation.
19
- Rake::RDocTask.new do |rdoc|
20
- rdoc.rdoc_files.include "README.rdoc", "lib/**/*.rb"
21
- rdoc.options = spec.rdoc_options
22
- end
19
+ #Rake::RDocTask.new do |rdoc|
20
+ # rdoc.rdoc_files.include "README.rdoc", "lib/**/*.rb"
21
+ # rdoc.options = spec.rdoc_options
22
+ #end
23
23
 
24
24
 
25
25
 
data/bin/uuid CHANGED
@@ -1,16 +1,55 @@
1
1
  #!/usr/bin/env ruby
2
- #
3
- # This file was generated by Bundler.
4
- #
5
- # The application 'uuid' is installed as part of a gem, and
6
- # this file is here to facilitate running it.
7
- #
2
+ require "uuid"
3
+ require "optparse"
8
4
 
9
- require 'pathname'
10
- ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile",
11
- Pathname.new(__FILE__).realpath)
5
+ address = nil
6
+ count = 1
7
+ format = :default
8
+ server = false
12
9
 
13
- require 'rubygems'
14
- require 'bundler/setup'
10
+ opts = OptionParser.new("", 24, ' ') do |opts|
11
+ opts.banner = "Usage: #{File.basename($0)} [options]"
15
12
 
16
- load Gem.bin_path('uuid', 'uuid')
13
+ opts.separator "\nOptions:"
14
+ opts.on("-s", "--socket {HOST:PORT|PATH}",
15
+ "communicate on HOST:PORT or PATH (default: #{UUID::SOCKET_NAME})") do |value|
16
+ address = value
17
+ end
18
+
19
+ opts.on("-S", "--server", "run as a server") do |value|
20
+ server = value ? true : false
21
+ end
22
+
23
+ opts.on("-F", "--format {FORMAT}", "UUID format (client only)") do |value|
24
+ format = value.to_sym
25
+ end
26
+
27
+ opts.on("-C", "--count {COUNT}", "returns give number of UUIDs") do |value|
28
+ count = value.to_i
29
+ end
30
+
31
+ opts.on("-h", "--help", "Show this message") do
32
+ puts opts.to_s.gsub(/^.*DEPRECATED.*$/s, '')
33
+ exit
34
+ end
35
+
36
+ opts.on("-v", "--version", "Show version") do
37
+ puts "UUID v#{UUID::VERSION}"
38
+ exit
39
+ end
40
+
41
+ opts.parse! ARGV
42
+ end
43
+
44
+
45
+ if server
46
+ $stdout << "Starting UUID server on #{address}\n"
47
+ UUID::Server.new.listen(address || UUID::SOCKET_NAME)
48
+ else
49
+ UUID.server = address if address
50
+ $stdout << UUID.generate(format)
51
+ (count - 1).times do
52
+ $stdout.putc "\n"
53
+ $stdout << UUID.generate(format)
54
+ end
55
+ end
@@ -114,6 +114,10 @@ class UUID
114
114
  @mode
115
115
  end
116
116
 
117
+ def self.mode=(mode)
118
+ @mode = mode
119
+ end
120
+
117
121
  ##
118
122
  # Generates a new UUID string using +format+. See FORMATS for a list of
119
123
  # supported formats.
@@ -185,6 +189,7 @@ class UUID
185
189
  # hosts).
186
190
  def self.state_file=(path)
187
191
  @state_file = path
192
+ @mode ||= 0644
188
193
  end
189
194
 
190
195
  ##
@@ -37,6 +37,21 @@ class TestUUID < Test::Unit::TestCase
37
37
  assert_equal path, UUID.state_file
38
38
  end
39
39
 
40
+ def test_mode_is_set_on_state_file_specify
41
+ UUID.class_eval{ @state_file = nil; @mode = nil }
42
+ path = File.join("/tmp", "ruby-uuid-test")
43
+ File.delete path if File.exist?(path)
44
+
45
+ UUID.state_file = path
46
+
47
+ old_umask = File.umask(0022)
48
+ UUID.new.generate
49
+ File.umask(old_umask)
50
+
51
+ UUID.class_eval{ @state_file = nil; @mode = nil }
52
+ assert_equal '0644', sprintf('%04o', File.stat(path).mode & 0777)
53
+ end
54
+
40
55
  def test_with_no_state_file
41
56
  UUID.state_file = false
42
57
  assert !UUID.state_file
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'uuid'
3
- s.version = '2.3.5'
3
+ s.version = '2.3.6'
4
4
  s.summary = "UUID generator"
5
5
  s.description = <<-EOF
6
6
  UUID generator for producing universally unique identifiers based on RFC 4122
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uuid
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.5
4
+ version: 2.3.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-01-23 00:00:00.000000000Z
13
+ date: 2012-11-18 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: macaddr
17
- requirement: &70206291414820 !ruby/object:Gem::Requirement
17
+ requirement: !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ~>
@@ -22,7 +22,12 @@ dependencies:
22
22
  version: '1.0'
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *70206291414820
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ none: false
27
+ requirements:
28
+ - - ~>
29
+ - !ruby/object:Gem::Version
30
+ version: '1.0'
26
31
  description: ! 'UUID generator for producing universally unique identifiers based
27
32
  on RFC 4122
28
33
 
@@ -68,7 +73,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
68
73
  version: '0'
69
74
  segments:
70
75
  - 0
71
- hash: 4057213684264310664
76
+ hash: -3353469269955199070
72
77
  required_rubygems_version: !ruby/object:Gem::Requirement
73
78
  none: false
74
79
  requirements:
@@ -77,10 +82,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
77
82
  version: '0'
78
83
  segments:
79
84
  - 0
80
- hash: 4057213684264310664
85
+ hash: -3353469269955199070
81
86
  requirements: []
82
87
  rubyforge_project:
83
- rubygems_version: 1.8.10
88
+ rubygems_version: 1.8.23
84
89
  signing_key:
85
90
  specification_version: 3
86
91
  summary: UUID generator