summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDirk Meyer <dinoex@FreeBSD.org>2018-04-15 06:41:42 +0000
committerDirk Meyer <dinoex@FreeBSD.org>2018-04-15 06:41:42 +0000
commit6293b53c4434de66c4a728c68661d110de671bbe (patch)
tree9078a32b991644bd7a2687c25b168655ae1e92d1
parentUpdate to 3.8.5. (diff)
- fix API for pg-1.0.0
-rw-r--r--databases/rubygem-dbd-pg/Makefile2
-rw-r--r--databases/rubygem-dbd-pg/files/patch-database.rb62
-rw-r--r--databases/rubygem-dbd-pg/files/patch-statement.rb11
-rw-r--r--databases/rubygem-dbd-pg/files/patch-type.rb20
4 files changed, 87 insertions, 8 deletions
diff --git a/databases/rubygem-dbd-pg/Makefile b/databases/rubygem-dbd-pg/Makefile
index 19605c4f3ff3..75a1155f0132 100644
--- a/databases/rubygem-dbd-pg/Makefile
+++ b/databases/rubygem-dbd-pg/Makefile
@@ -2,7 +2,7 @@
PORTNAME= dbd-pg
PORTVERSION= 0.3.9
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= databases rubygems
MASTER_SITES= RG
diff --git a/databases/rubygem-dbd-pg/files/patch-database.rb b/databases/rubygem-dbd-pg/files/patch-database.rb
index 00ff711b0d55..d1c958fa08a6 100644
--- a/databases/rubygem-dbd-pg/files/patch-database.rb
+++ b/databases/rubygem-dbd-pg/files/patch-database.rb
@@ -1,4 +1,4 @@
---- lib/dbd/pg/database.rb.orig 2018-03-17 05:55:55 UTC
+--- lib/dbd/pg/database.rb.orig 2018-04-15 06:18:20 UTC
+++ lib/dbd/pg/database.rb
@@ -48,7 +48,7 @@ class DBI::DBD::Pg::Database < DBI::Base
hash['tty'] ||= ''
@@ -18,7 +18,33 @@
raise DBI::OperationalError.new(err.message)
end
-@@ -443,7 +443,7 @@ class DBI::DBD::Pg::Database < DBI::Base
+@@ -96,7 +96,7 @@ class DBI::DBD::Pg::Database < DBI::Base
+ else
+ return false
+ end
+- rescue PGError
++ rescue PG::Error
+ return false
+ ensure
+ answer.clear if answer
+@@ -426,7 +426,7 @@ class DBI::DBD::Pg::Database < DBI::Base
+ def __blob_import(file)
+ start_transaction unless @in_transaction
+ @connection.lo_import(file)
+- rescue PGError => err
++ rescue PG::Error => err
+ raise DBI::DatabaseError.new(err.message)
+ end
+
+@@ -436,27 +436,27 @@ class DBI::DBD::Pg::Database < DBI::Base
+ def __blob_export(oid, file)
+ start_transaction unless @in_transaction
+ @connection.lo_export(oid.to_i, file)
+- rescue PGError => err
++ rescue PG::Error => err
+ raise DBI::DatabaseError.new(err.message)
+ end
+
#
# Create a BLOB.
#
@@ -26,8 +52,11 @@
+ def __blob_create(mode=PG::Connection::INV_READ)
start_transaction unless @in_transaction
@connection.lo_creat(mode)
- rescue PGError => err
-@@ -453,7 +453,7 @@ class DBI::DBD::Pg::Database < DBI::Base
+- rescue PGError => err
++ rescue PG::Error => err
+ raise DBI::DatabaseError.new(err.message)
+ end
+
#
# Open a BLOB.
#
@@ -35,7 +64,20 @@
+ def __blob_open(oid, mode=PG::Connection::INV_READ)
start_transaction unless @in_transaction
@connection.lo_open(oid.to_i, mode)
- rescue PGError => err
+- rescue PGError => err
++ rescue PG::Error => err
+ raise DBI::DatabaseError.new(err.message)
+ end
+
+@@ -466,7 +466,7 @@ class DBI::DBD::Pg::Database < DBI::Base
+ def __blob_unlink(oid)
+ start_transaction unless @in_transaction
+ @connection.lo_unlink(oid.to_i)
+- rescue PGError => err
++ rescue PG::Error => err
+ raise DBI::DatabaseError.new(err.message)
+ end
+
@@ -474,7 +474,7 @@ class DBI::DBD::Pg::Database < DBI::Base
# Read a BLOB and return the data.
#
@@ -54,7 +96,7 @@
raise DBI::DatabaseError.new(err.message)
end
-@@ -494,7 +494,7 @@ class DBI::DBD::Pg::Database < DBI::Base
+@@ -494,14 +494,14 @@ class DBI::DBD::Pg::Database < DBI::Base
#
def __blob_write(oid, value)
start_transaction unless @in_transaction
@@ -63,6 +105,14 @@
res = @connection.lo_write(blob, value)
# FIXME not sure why PG doesn't like to close here -- seems to be
# working but we should make sure it's not eating file descriptors
+ # up before release.
+ # @connection.lo_close(blob)
+ return res
+- rescue PGError => err
++ rescue PG::Error => err
+ raise DBI::DatabaseError.new(err.message)
+ end
+
@@ -510,7 +510,7 @@ class DBI::DBD::Pg::Database < DBI::Base
#
def __set_notice_processor(proc)
diff --git a/databases/rubygem-dbd-pg/files/patch-statement.rb b/databases/rubygem-dbd-pg/files/patch-statement.rb
index 4f8f3915f97b..20492e039f5a 100644
--- a/databases/rubygem-dbd-pg/files/patch-statement.rb
+++ b/databases/rubygem-dbd-pg/files/patch-statement.rb
@@ -1,4 +1,4 @@
---- lib/dbd/pg/statement.rb.orig 2018-03-17 05:55:55 UTC
+--- lib/dbd/pg/statement.rb.orig 2018-04-15 06:18:20 UTC
+++ lib/dbd/pg/statement.rb
@@ -18,7 +18,7 @@ class DBI::DBD::Pg::Statement < DBI::Bas
@result = nil
@@ -9,6 +9,15 @@
raise DBI::ProgrammingError.new(err.message)
end
+@@ -36,7 +36,7 @@ class DBI::DBD::Pg::Statement < DBI::Bas
+ # replace DBI::Binary object by oid returned by lo_import
+ @bindvars.collect! do |var|
+ if var.is_a? DBI::Binary then
+- oid = @db.__blob_create(PGconn::INV_WRITE)
++ oid = @db.__blob_create(PG::Connection::INV_WRITE)
+ @db.__blob_write(oid, var.to_s)
+ oid
+ else
@@ -58,7 +58,7 @@ class DBI::DBD::Pg::Statement < DBI::Bas
end
diff --git a/databases/rubygem-dbd-pg/files/patch-type.rb b/databases/rubygem-dbd-pg/files/patch-type.rb
new file mode 100644
index 000000000000..e43ad233e45a
--- /dev/null
+++ b/databases/rubygem-dbd-pg/files/patch-type.rb
@@ -0,0 +1,20 @@
+--- lib/dbd/pg/type.rb.orig 2018-04-15 06:18:20 UTC
++++ lib/dbd/pg/type.rb
+@@ -32,7 +32,7 @@ module DBI::DBD::Pg::Type
+ # Escapes the supplied data. Has no effect on the object.
+ #
+ def escape_bytea(str)
+- PGconn.escape_bytea(str)
++ PG::Connection.escape_bytea(str)
+ end
+
+ #
+@@ -62,7 +62,7 @@ module DBI::DBD::Pg::Type
+ #
+ # Fix this for now, but beware that we'll have to unfix this as
+ # soon as they fix their end.
+- ret = PGconn.unescape_bytea(obj)
++ ret = PG::Connection.unescape_bytea(obj)
+
+ # XXX
+ # String#split does not properly create a full array if the the