dbi-dbrc 1.1.9 → 1.2.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 +7 -0
- data/CHANGES +5 -0
- data/README +20 -20
- data/Rakefile +7 -2
- data/dbi-dbrc.gemspec +5 -6
- data/lib/dbi/dbrc.rb +2 -2
- data/test/test_dbi_dbrc.rb +6 -6
- metadata +26 -29
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: c06a82f0b5915c76160c669042762b9d997d0b19
|
4
|
+
data.tar.gz: da10908388b233637d14464a59999f4c8455426d
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: c28240c48fc90ece726f41b216b8d9afd23eda6b5f5183118765de25549fbfd1cc570528a9d759d7f27df38ae50c3cc97c7e01bdacc1b687ceaf98967f76e0b3
|
7
|
+
data.tar.gz: 837b3838c075a30b920c10ccc05ddaf5edd7ff3b94dc39374400c84eb0c261c66bd7cf3b9c01fe1194362968965567188c28837897b256fa9d0bacf60af06822
|
data/CHANGES
CHANGED
@@ -1,3 +1,8 @@
|
|
1
|
+
== 1.2.0 - 8-Nov-2014
|
2
|
+
* Updated dependency for MS Windows. Now uses win32-file-attributes instead
|
3
|
+
of win32-file.
|
4
|
+
* Minor updates to the Rakefile and gemspec.
|
5
|
+
|
1
6
|
== 1.1.9 - 10-Jan-2013
|
2
7
|
* Fixed an unused variable warning.
|
3
8
|
* Changed the way I check for MS Windows.
|
data/README
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
== Requirements
|
8
8
|
* sys-admin
|
9
|
-
* win32-file (MS Windows only)
|
9
|
+
* win32-file-attributes (MS Windows only)
|
10
10
|
* win32-dir (MS Windows only)
|
11
11
|
* win32-process (MS Windows only)
|
12
12
|
|
@@ -58,14 +58,14 @@
|
|
58
58
|
The format for XML (using the example above) is as follows:
|
59
59
|
|
60
60
|
<dbrc>
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
61
|
+
<database name="mydb">
|
62
|
+
<user>dan</user>
|
63
|
+
<password>mypass</password>
|
64
|
+
<driver>oracle</driver>
|
65
|
+
<interval>30</interval>
|
66
|
+
<timeout>10</timeout>
|
67
|
+
<maximum_reconnects>2</maximum_reconnects>
|
68
|
+
</database>
|
69
69
|
</dbrc>
|
70
70
|
|
71
71
|
The format for YAML is as follows:
|
@@ -189,18 +189,18 @@ DBRC#dsn=(dsn)
|
|
189
189
|
n = db.max_reconn
|
190
190
|
|
191
191
|
begin
|
192
|
-
|
193
|
-
|
194
|
-
|
192
|
+
Timeout.timeout(db.timeout){
|
193
|
+
DBI.connect(db.dsn, db.user, db.passwd)
|
194
|
+
}
|
195
195
|
rescue DBI::Error
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
196
|
+
n -= 1
|
197
|
+
if n > 0
|
198
|
+
sleep db.interval
|
199
|
+
retry
|
200
|
+
end
|
201
|
+
raise
|
202
202
|
rescue TimeoutError
|
203
|
-
|
203
|
+
# handle timeout error
|
204
204
|
end
|
205
205
|
|
206
206
|
== Notes for MS Windows Users
|
@@ -249,7 +249,7 @@ DBRC#dsn=(dsn)
|
|
249
249
|
If it's not correct, please let me know.
|
250
250
|
|
251
251
|
== Copyright
|
252
|
-
(C) Copyright 2002-
|
252
|
+
(C) Copyright 2002-2014, Daniel J. Berger, all rights reserved.
|
253
253
|
|
254
254
|
= Warranty
|
255
255
|
This package is provided "as is" and without any express or
|
data/Rakefile
CHANGED
@@ -13,13 +13,18 @@ namespace :gem do
|
|
13
13
|
desc "Create the dbi-dbrc gem"
|
14
14
|
task :create => [:clean] do
|
15
15
|
spec = eval(IO.read('dbi-dbrc.gemspec'))
|
16
|
-
Gem::
|
16
|
+
if Gem::VERSION < "2.0"
|
17
|
+
Gem::Builder.new(spec).build
|
18
|
+
else
|
19
|
+
require 'rubygems/package'
|
20
|
+
Gem::Package.build(spec)
|
21
|
+
end
|
17
22
|
end
|
18
23
|
|
19
24
|
desc "Install the dbi-dbrc gem"
|
20
25
|
task :install => [:create] do
|
21
26
|
gem = Dir["*.gem"].first
|
22
|
-
sh "gem install #{gem}"
|
27
|
+
sh "gem install -l #{gem}"
|
23
28
|
end
|
24
29
|
end
|
25
30
|
|
data/dbi-dbrc.gemspec
CHANGED
@@ -2,7 +2,7 @@ require 'rubygems'
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |spec|
|
4
4
|
spec.name = 'dbi-dbrc'
|
5
|
-
spec.version = '1.
|
5
|
+
spec.version = '1.2.0'
|
6
6
|
spec.author = 'Daniel Berger'
|
7
7
|
spec.email = 'djberg96@gmail.com'
|
8
8
|
spec.license = 'Artistic 2.0'
|
@@ -12,15 +12,14 @@ Gem::Specification.new do |spec|
|
|
12
12
|
spec.test_files = Dir['test/test*.rb']
|
13
13
|
|
14
14
|
spec.extra_rdoc_files = ['README', 'CHANGES', 'MANIFEST']
|
15
|
-
spec.rubyforge_project = 'shards'
|
16
15
|
|
17
|
-
spec.add_dependency('sys-admin'
|
16
|
+
spec.add_dependency('sys-admin')
|
18
17
|
spec.add_development_dependency('test-unit')
|
19
18
|
|
20
19
|
if File::ALT_SEPARATOR
|
21
|
-
spec.add_dependency('win32-file'
|
22
|
-
spec.add_dependency('win32-dir'
|
23
|
-
spec.add_dependency('win32-process'
|
20
|
+
spec.add_dependency('win32-file-attributes')
|
21
|
+
spec.add_dependency('win32-dir')
|
22
|
+
spec.add_dependency('win32-process')
|
24
23
|
spec.platform = Gem::Platform::CURRENT
|
25
24
|
spec.platform.cpu = 'universal'
|
26
25
|
end
|
data/lib/dbi/dbrc.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
if File::ALT_SEPARATOR
|
2
2
|
require 'win32/dir'
|
3
|
-
require 'win32/file'
|
3
|
+
require 'win32/file/attributes'
|
4
4
|
require 'win32/process'
|
5
5
|
end
|
6
6
|
|
@@ -16,7 +16,7 @@ module DBI
|
|
16
16
|
class Error < StandardError; end
|
17
17
|
|
18
18
|
# The version of the dbi-dbrc library
|
19
|
-
VERSION = '1.
|
19
|
+
VERSION = '1.2.0'
|
20
20
|
|
21
21
|
@@windows = File::ALT_SEPARATOR
|
22
22
|
|
data/test/test_dbi_dbrc.rb
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
# run via the 'rake test' task.
|
6
6
|
#########################################################################
|
7
7
|
require 'dbi/dbrc'
|
8
|
-
require 'test
|
8
|
+
require 'test-unit'
|
9
9
|
include DBI
|
10
10
|
|
11
11
|
class TC_DBI_DBRC < Test::Unit::TestCase
|
@@ -22,18 +22,18 @@ class TC_DBI_DBRC < Test::Unit::TestCase
|
|
22
22
|
@user2 = 'user2'
|
23
23
|
@db_bad = 'blah' # Doesn't exist
|
24
24
|
@user_bad = 'user8' # Doesn't exist
|
25
|
-
|
25
|
+
|
26
26
|
if @@windows && File.respond_to?(:set_attr)
|
27
27
|
File.set_attr(@file, File::HIDDEN)
|
28
28
|
else
|
29
29
|
File.chmod(0600, @file)
|
30
30
|
end
|
31
|
-
|
31
|
+
|
32
32
|
@dbrc = DBRC.new(@db1, nil, @dir)
|
33
33
|
end
|
34
34
|
|
35
35
|
def test_version
|
36
|
-
assert_equal('1.
|
36
|
+
assert_equal('1.2.0', DBRC::VERSION)
|
37
37
|
end
|
38
38
|
|
39
39
|
def test_bad_dbrc_properties
|
@@ -147,7 +147,7 @@ class TC_DBI_DBRC < Test::Unit::TestCase
|
|
147
147
|
|
148
148
|
# Same database, different user
|
149
149
|
def test_duplicate_database
|
150
|
-
db = DBRC.new("foo", "user2", @dir)
|
150
|
+
db = DBRC.new("foo", "user2", @dir)
|
151
151
|
assert_equal("user2", db.user)
|
152
152
|
assert_equal("pwd2", db.passwd)
|
153
153
|
assert_equal("OCI8", db.driver)
|
@@ -171,7 +171,7 @@ class TC_DBI_DBRC < Test::Unit::TestCase
|
|
171
171
|
|
172
172
|
# A database with only a couple fields defined
|
173
173
|
def test_nil_values
|
174
|
-
db = DBRC.new("baz", "user3", @dir)
|
174
|
+
db = DBRC.new("baz", "user3", @dir)
|
175
175
|
assert_equal("user3", db.user)
|
176
176
|
assert_equal("pwd4", db.passwd)
|
177
177
|
assert_nil(db.driver)
|
metadata
CHANGED
@@ -1,54 +1,52 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dbi-dbrc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
5
|
-
prerelease:
|
4
|
+
version: 1.2.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Daniel Berger
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2014-11-08 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: sys-admin
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ">="
|
20
18
|
- !ruby/object:Gem::Version
|
21
|
-
version:
|
19
|
+
version: '0'
|
22
20
|
type: :runtime
|
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
|
-
version:
|
26
|
+
version: '0'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: test-unit
|
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
|
-
description:
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
41
|
+
description: |2
|
42
|
+
The dbi-dbrc library provides an interface for storing database
|
43
|
+
connection information, including passwords, in a locally secure
|
44
|
+
file only accessible by you, or root. This allows you to avoid
|
45
|
+
hard coding login and password information in your programs
|
46
|
+
that require such information.
|
47
|
+
|
48
|
+
This library can also be used to store login and password information
|
49
|
+
for logins on remote hosts, not just databases.
|
52
50
|
email: djberg96@gmail.com
|
53
51
|
executables: []
|
54
52
|
extensions: []
|
@@ -58,41 +56,40 @@ extra_rdoc_files:
|
|
58
56
|
- MANIFEST
|
59
57
|
files:
|
60
58
|
- CHANGES
|
59
|
+
- MANIFEST
|
60
|
+
- README
|
61
|
+
- Rakefile
|
61
62
|
- dbi-dbrc.gemspec
|
62
63
|
- examples/plain/test.rb
|
63
64
|
- examples/xml/test_xml.rb
|
64
65
|
- examples/yml/test_yml.rb
|
65
66
|
- lib/dbi/dbrc.rb
|
66
|
-
- MANIFEST
|
67
|
-
- Rakefile
|
68
|
-
- README
|
69
67
|
- test/test_dbi_dbrc.rb
|
70
68
|
- test/test_dbi_dbrc_xml.rb
|
71
69
|
- test/test_dbi_dbrc_yml.rb
|
72
70
|
homepage: https://github.com/djberg96/dbi-dbrc
|
73
71
|
licenses:
|
74
72
|
- Artistic 2.0
|
73
|
+
metadata: {}
|
75
74
|
post_install_message:
|
76
75
|
rdoc_options: []
|
77
76
|
require_paths:
|
78
77
|
- lib
|
79
78
|
required_ruby_version: !ruby/object:Gem::Requirement
|
80
|
-
none: false
|
81
79
|
requirements:
|
82
|
-
- -
|
80
|
+
- - ">="
|
83
81
|
- !ruby/object:Gem::Version
|
84
82
|
version: '0'
|
85
83
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
86
|
-
none: false
|
87
84
|
requirements:
|
88
|
-
- -
|
85
|
+
- - ">="
|
89
86
|
- !ruby/object:Gem::Version
|
90
87
|
version: '0'
|
91
88
|
requirements: []
|
92
|
-
rubyforge_project:
|
93
|
-
rubygems_version:
|
89
|
+
rubyforge_project:
|
90
|
+
rubygems_version: 2.2.2
|
94
91
|
signing_key:
|
95
|
-
specification_version:
|
92
|
+
specification_version: 4
|
96
93
|
summary: A simple way to avoid hard-coding passwords with DBI
|
97
94
|
test_files:
|
98
95
|
- test/test_dbi_dbrc.rb
|