sequel 0.5 → 0.5.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.
- data/CHANGELOG +8 -0
- data/Rakefile +9 -3
- data/bin/sequel +0 -3
- data/lib/sequel.rb +13 -1
- data/lib/sequel/database.rb +16 -6
- data/lib/sequel/exceptions.rb +3 -3
- data/spec/database_spec.rb +3 -3
- metadata +12 -3
data/CHANGELOG
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
=== 0.5.0.1 (2007-12-31)
|
2
|
+
|
3
|
+
* Added a stub for Sequel::Model that auto-loads sequel_model.
|
4
|
+
|
5
|
+
* Changed Sequel.method_missing and Database.adapter_class to raise AdapterNotFound if an adapter could not be loaded.
|
6
|
+
|
7
|
+
* Fixed behavior of error trap in sequel command line tool.
|
8
|
+
|
1
9
|
=== 0.5 (2007-12-30)
|
2
10
|
|
3
11
|
* Removed model code into separate sub-project. Rearranged trunk into core, model and model_plugins.
|
data/Rakefile
CHANGED
@@ -9,7 +9,7 @@ include FileUtils
|
|
9
9
|
# Configuration
|
10
10
|
##############################################################################
|
11
11
|
NAME = "sequel"
|
12
|
-
VERS = "0.5"
|
12
|
+
VERS = "0.5.0.1"
|
13
13
|
CLEAN.include ["**/.*.sw?", "pkg/*", ".config", "doc/*", "coverage/*"]
|
14
14
|
RDOC_OPTS = [
|
15
15
|
"--quiet",
|
@@ -57,15 +57,21 @@ spec = Gem::Specification.new do |s|
|
|
57
57
|
s.executables = ["sequel"]
|
58
58
|
s.required_ruby_version = ">= 1.8.4"
|
59
59
|
|
60
|
+
s.add_dependency("metaid")
|
61
|
+
|
60
62
|
case RUBY_PLATFORM
|
61
63
|
when /mswin/
|
62
64
|
s.platform = Gem::Platform::CURRENT
|
65
|
+
s.add_dependency("RubyInline", ">= 3.6.6")
|
66
|
+
s.add_dependency("ParseTree", ">= 2.1.1")
|
67
|
+
s.add_dependency("ruby2ruby")
|
63
68
|
when /java/
|
64
69
|
s.platform = "jruby"
|
65
70
|
else
|
66
71
|
s.platform = Gem::Platform::RUBY
|
67
|
-
|
68
|
-
s.add_dependency("
|
72
|
+
# ParseTree on win32 requires PT2.1.1 and RI3.6.6
|
73
|
+
s.add_dependency("RubyInline", ">= 3.6.6")
|
74
|
+
s.add_dependency("ParseTree", ">= 2.1.1")
|
69
75
|
s.add_dependency("ruby2ruby")
|
70
76
|
end
|
71
77
|
|
data/bin/sequel
CHANGED
data/lib/sequel.rb
CHANGED
@@ -45,10 +45,22 @@ module Sequel #:nodoc:
|
|
45
45
|
opts = args[1].merge(:database => args[0])
|
46
46
|
end
|
47
47
|
rescue
|
48
|
-
raise Error, "Unknown adapter (#{m})"
|
48
|
+
raise Error::AdapterNotFound, "Unknown adapter (#{m})"
|
49
49
|
end
|
50
50
|
c.new(opts)
|
51
51
|
end
|
52
|
+
|
53
|
+
# stub for Sequel::Model()
|
54
|
+
def Model(*args)
|
55
|
+
require 'sequel_model'
|
56
|
+
if respond_to?(:Model)
|
57
|
+
send(:Model, *args)
|
58
|
+
else
|
59
|
+
raise LoadError
|
60
|
+
end
|
61
|
+
rescue LoadError
|
62
|
+
raise SequelError, "The sequel_model library could not be found. In order to use Sequel models please install sequel_model."
|
63
|
+
end
|
52
64
|
end
|
53
65
|
end
|
54
66
|
|
data/lib/sequel/database.rb
CHANGED
@@ -371,13 +371,23 @@ module Sequel
|
|
371
371
|
end
|
372
372
|
|
373
373
|
def self.adapter_class(scheme)
|
374
|
-
|
375
|
-
|
376
|
-
|
377
|
-
|
374
|
+
adapter_name = scheme.to_s =~ /\-/ ? scheme.to_s.gsub('-', '_').to_sym : scheme.to_sym
|
375
|
+
scheme = scheme.to_sym
|
376
|
+
|
377
|
+
if (klass = @@adapters[scheme]).nil?
|
378
|
+
# attempt to load the adapter file
|
379
|
+
begin
|
380
|
+
require File.join(File.dirname(__FILE__), "adapters/#{scheme}")
|
381
|
+
rescue LoadError => e
|
382
|
+
raise Error::AdapterNotFound, "Could not load #{scheme} adapter:\n #{e.message}"
|
383
|
+
end
|
384
|
+
|
385
|
+
# make sure we actually loaded the adapter
|
386
|
+
if (klass = @@adapters[scheme]).nil?
|
387
|
+
raise Error::AdapterNotFound, "Could not load #{scheme} adapter"
|
388
|
+
end
|
378
389
|
end
|
379
|
-
|
380
|
-
c
|
390
|
+
return klass
|
381
391
|
end
|
382
392
|
|
383
393
|
# call-seq:
|
data/lib/sequel/exceptions.rb
CHANGED
@@ -5,8 +5,6 @@ module Sequel
|
|
5
5
|
# Rollback is a special error used to rollback a transactions.
|
6
6
|
# A transaction block will catch this error and wont pass further up the stack.
|
7
7
|
class Rollback < Error ; end
|
8
|
-
|
9
|
-
class InvalidDatabaseScheme < Error; end
|
10
8
|
|
11
9
|
# Represents an invalid value stored in the database.
|
12
10
|
class InvalidValue < Error ; end
|
@@ -26,7 +24,9 @@ module Sequel
|
|
26
24
|
class InvalidJoinType < Error ; end
|
27
25
|
|
28
26
|
class WorkerStop < RuntimeError ; end
|
29
|
-
|
27
|
+
|
28
|
+
# Raised when Sequel is unable to load a specified adapter.
|
29
|
+
class AdapterNotFound < Error ; end
|
30
30
|
end
|
31
31
|
end
|
32
32
|
|
data/spec/database_spec.rb
CHANGED
@@ -545,15 +545,15 @@ end
|
|
545
545
|
|
546
546
|
context "An unknown database scheme" do
|
547
547
|
specify "should raise an error in Sequel::Database.connect" do
|
548
|
-
proc {Sequel::Database.connect('ddd://localhost/db')}.should raise_error(
|
548
|
+
proc {Sequel::Database.connect('ddd://localhost/db')}.should raise_error(Sequel::Error::AdapterNotFound)
|
549
549
|
end
|
550
550
|
|
551
551
|
specify "should raise an error in Sequel.connect" do
|
552
|
-
proc {Sequel.connect('ddd://localhost/db')}.should raise_error(
|
552
|
+
proc {Sequel.connect('ddd://localhost/db')}.should raise_error(Sequel::Error::AdapterNotFound)
|
553
553
|
end
|
554
554
|
|
555
555
|
specify "should raise an error in Sequel.open" do
|
556
|
-
proc {Sequel.open('ddd://localhost/db')}.should raise_error(
|
556
|
+
proc {Sequel.open('ddd://localhost/db')}.should raise_error(Sequel::Error::AdapterNotFound)
|
557
557
|
end
|
558
558
|
end
|
559
559
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sequel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 0.5.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sharon Rosner
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2007-12-
|
12
|
+
date: 2007-12-31 00:00:00 +02:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -21,6 +21,15 @@ dependencies:
|
|
21
21
|
- !ruby/object:Gem::Version
|
22
22
|
version: "0"
|
23
23
|
version:
|
24
|
+
- !ruby/object:Gem::Dependency
|
25
|
+
name: RubyInline
|
26
|
+
version_requirement:
|
27
|
+
version_requirements: !ruby/object:Gem::Requirement
|
28
|
+
requirements:
|
29
|
+
- - ">="
|
30
|
+
- !ruby/object:Gem::Version
|
31
|
+
version: 3.6.6
|
32
|
+
version:
|
24
33
|
- !ruby/object:Gem::Dependency
|
25
34
|
name: ParseTree
|
26
35
|
version_requirement:
|
@@ -28,7 +37,7 @@ dependencies:
|
|
28
37
|
requirements:
|
29
38
|
- - ">="
|
30
39
|
- !ruby/object:Gem::Version
|
31
|
-
version: 2.
|
40
|
+
version: 2.1.1
|
32
41
|
version:
|
33
42
|
- !ruby/object:Gem::Dependency
|
34
43
|
name: ruby2ruby
|