activerecord-advantage-adapter 0.1.4 → 0.1.6
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2d10f6102f8391080901ec11c4394d7b47cfab4b7072f2ca7255e44a05c138a3
|
4
|
+
data.tar.gz: 7aece77305d027f0d6e1ceec3fd3b0e07a3a10c92eccd24d853ab3a504a17881
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b5cfeeb5eb5080e7ccb15594e4b0d2e0cb3defdbdbb94b8b9d8c39b0c09128f69c332e506f28ce9d84f8db7698a700f202403aa1be74abdbc3692b143cd76309
|
7
|
+
data.tar.gz: c5c2245d339343294ea183cb5c1cd2a76f88619c275f26683bcf9bcac841550f65ec3e2b52e4696534030b4b1b10d897ed765ef5d79af7ac1e898c332bf990d6
|
@@ -1,49 +1,48 @@
|
|
1
1
|
lib = File.expand_path("../lib", __FILE__)
|
2
2
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
3
3
|
|
4
|
-
pkg_version = "0.1.
|
4
|
+
pkg_version = "0.1.6"
|
5
5
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
|
-
spec.name =
|
7
|
+
spec.name = 'activerecord-advantage-adapter'
|
8
8
|
spec.version = pkg_version
|
9
|
-
spec.authors = [
|
10
|
-
spec.email = [
|
9
|
+
spec.authors = ['Edgar Sherman', 'Jon Adams']
|
10
|
+
spec.email = ['advantage@sybase.com', 't12nslookup@googlemail.com']
|
11
11
|
|
12
|
-
spec.summary =
|
13
|
-
spec.description =
|
14
|
-
spec.homepage =
|
15
|
-
spec.license =
|
12
|
+
spec.summary = 'ActiveRecord driver for Advantage'
|
13
|
+
spec.description = 'ActiveRecord driver for the Advantage Database connector'
|
14
|
+
spec.homepage = 'http://devzone.advantagedatabase.com'
|
15
|
+
spec.license = 'Apache-2.0'
|
16
16
|
|
17
17
|
# Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
|
18
18
|
# to allow pushing to a single host or delete this section to allow pushing to any host.
|
19
19
|
if spec.respond_to?(:metadata)
|
20
|
-
spec.metadata[
|
20
|
+
spec.metadata['allowed_push_host'] = 'https://rubygems.org'
|
21
21
|
|
22
|
-
spec.metadata[
|
22
|
+
spec.metadata['homepage_uri'] = spec.homepage
|
23
23
|
# Changed to the github project, as this is the actively maintained source, now.
|
24
|
-
spec.metadata[
|
25
|
-
spec.metadata[
|
24
|
+
spec.metadata['source_code_uri'] = 'https://github.com/t12nslookup/activerecord-advantage-adapter/'
|
25
|
+
spec.metadata['changelog_uri'] = 'https://github.com/t12nslookup/activerecord-advantage-adapter/blob/main/CHANGELOG.md'
|
26
26
|
else
|
27
|
-
raise
|
28
|
-
|
27
|
+
raise 'RubyGems 2.0 or newer is required to protect against ' \
|
28
|
+
'public gem pushes.'
|
29
29
|
end
|
30
30
|
|
31
31
|
# Specify which files should be added to the gem when it is released.
|
32
32
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
33
|
-
spec.files = Dir.chdir(File.expand_path(
|
34
|
-
|
35
|
-
end
|
36
|
-
spec.files = Dir[
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
spec.require_paths = [
|
41
|
-
|
42
|
-
spec.add_development_dependency
|
43
|
-
spec.add_development_dependency
|
44
|
-
spec.add_development_dependency
|
45
|
-
|
46
|
-
spec.add_runtime_dependency
|
33
|
+
# spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
|
34
|
+
# `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
35
|
+
# end
|
36
|
+
spec.files = Dir['{test,lib}/**/*',
|
37
|
+
'LICENSE',
|
38
|
+
'README',
|
39
|
+
'activerecord-advantage-adapter.gemspec']
|
40
|
+
spec.require_paths = ['lib']
|
41
|
+
|
42
|
+
spec.add_development_dependency 'bundler', '~> 1.17'
|
43
|
+
spec.add_development_dependency 'rake', '~> 10.0'
|
44
|
+
spec.add_development_dependency 'rspec', '~> 3.0'
|
45
|
+
|
46
|
+
spec.add_runtime_dependency 'advantage', '~> 0.1', '>= 0.1.2'
|
47
47
|
# spec.add_runtime_dependency 'activerecord', '>= 3.2.0'
|
48
|
-
|
49
48
|
end
|
@@ -433,6 +433,26 @@ SQL
|
|
433
433
|
execute "ALTER TABLE #{quote_table_name(table_name)} DROP #{quote_column_name(column_name)}"
|
434
434
|
end
|
435
435
|
|
436
|
+
if Rails::VERSION::MAJOR == 5 && Rails::VERSION::MINOR < 2
|
437
|
+
def combine_bind_parameters(
|
438
|
+
from_clause: [],
|
439
|
+
join_clause: [],
|
440
|
+
where_clause: [],
|
441
|
+
having_clause: [],
|
442
|
+
limit: nil,
|
443
|
+
offset: nil
|
444
|
+
) # :nodoc:
|
445
|
+
result = []
|
446
|
+
result << limit if limit
|
447
|
+
result += from_clause if from_clause.any?
|
448
|
+
result += join_clause if join_clause.any?
|
449
|
+
result += where_clause if where_clause.any?
|
450
|
+
result += having_clause if having_clause.any?
|
451
|
+
result << offset if offset
|
452
|
+
result
|
453
|
+
end
|
454
|
+
end
|
455
|
+
|
436
456
|
protected
|
437
457
|
|
438
458
|
# Execute a query
|
@@ -13,7 +13,7 @@ module Arel
|
|
13
13
|
end
|
14
14
|
|
15
15
|
def visit_Arel_Nodes_Limit(o, collector)
|
16
|
-
collector << "TOP
|
16
|
+
collector << "TOP "
|
17
17
|
visit o.expr, collector
|
18
18
|
collector << " "
|
19
19
|
collector
|
@@ -21,38 +21,63 @@ module Arel
|
|
21
21
|
|
22
22
|
# copied from informix.rb
|
23
23
|
def visit_Arel_Nodes_SelectStatement(o, collector)
|
24
|
-
collector <<
|
24
|
+
collector << 'SELECT '
|
25
25
|
collector = maybe_visit o.limit, collector
|
26
26
|
collector = maybe_visit o.offset, collector
|
27
|
-
collector = o.cores.inject(collector)
|
27
|
+
collector = o.cores.inject(collector) do |c, x|
|
28
28
|
visit_Arel_Nodes_SelectCore x, c
|
29
|
-
|
29
|
+
end
|
30
30
|
if o.orders.any?
|
31
|
-
collector <<
|
32
|
-
collector = inject_join o.orders, collector,
|
31
|
+
collector << ' ORDER BY '
|
32
|
+
collector = inject_join o.orders, collector, ', '
|
33
33
|
end
|
34
34
|
collector
|
35
35
|
end
|
36
36
|
|
37
37
|
def visit_Arel_Nodes_SelectCore(o, collector)
|
38
|
-
collector =
|
38
|
+
collector = maybe_visit o.set_quantifier, collector
|
39
|
+
collector = inject_join o.projections, collector, ', '
|
39
40
|
if o.source && !o.source.empty?
|
40
|
-
collector <<
|
41
|
+
collector << ' FROM '
|
41
42
|
collector = visit o.source, collector
|
42
43
|
end
|
43
44
|
|
44
45
|
if o.wheres.any?
|
45
|
-
collector <<
|
46
|
-
collector = inject_join o.wheres, collector,
|
46
|
+
collector << ' WHERE '
|
47
|
+
collector = inject_join o.wheres, collector, ' AND '
|
47
48
|
end
|
48
49
|
|
49
50
|
if o.groups.any?
|
50
|
-
collector <<
|
51
|
-
collector = inject_join o.groups, collector,
|
51
|
+
collector << ' GROUP BY '
|
52
|
+
collector = inject_join o.groups, collector, ', '
|
52
53
|
end
|
53
54
|
|
54
55
|
collector
|
55
56
|
end
|
57
|
+
|
58
|
+
def visit_Arel_Nodes_Distinct(o, collector)
|
59
|
+
collector << 'DISTINCT '
|
60
|
+
end
|
61
|
+
|
62
|
+
# Rails version > 5?
|
63
|
+
def unboundable?(value)
|
64
|
+
value.respond_to?(:unboundable?) && value.unboundable?
|
65
|
+
end
|
66
|
+
|
67
|
+
def visit_Arel_Nodes_NotEqual(o, collector)
|
68
|
+
right = o.right
|
69
|
+
|
70
|
+
return collector << ' 1=1' if unboundable?(right)
|
71
|
+
|
72
|
+
collector = visit o.left, collector
|
73
|
+
|
74
|
+
if right.nil?
|
75
|
+
collector << ' IS NOT NULL'
|
76
|
+
else
|
77
|
+
collector << ' <> '
|
78
|
+
visit right, collector
|
79
|
+
end
|
80
|
+
end
|
56
81
|
else
|
57
82
|
# Rails 3 or lower
|
58
83
|
def visit_Arel_Nodes_Offset(o)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activerecord-advantage-adapter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Edgar Sherman
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2022-06-10 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -94,7 +94,7 @@ metadata:
|
|
94
94
|
allowed_push_host: https://rubygems.org
|
95
95
|
homepage_uri: http://devzone.advantagedatabase.com
|
96
96
|
source_code_uri: https://github.com/t12nslookup/activerecord-advantage-adapter/
|
97
|
-
changelog_uri: https://github.com/t12nslookup/activerecord-advantage-adapter/CHANGELOG.md
|
97
|
+
changelog_uri: https://github.com/t12nslookup/activerecord-advantage-adapter/blob/main/CHANGELOG.md
|
98
98
|
post_install_message:
|
99
99
|
rdoc_options: []
|
100
100
|
require_paths:
|