diff options
author | Dirk Meyer <dinoex@FreeBSD.org> | 2018-04-15 06:41:42 +0000 |
---|---|---|
committer | Dirk Meyer <dinoex@FreeBSD.org> | 2018-04-15 06:41:42 +0000 |
commit | 6293b53c4434de66c4a728c68661d110de671bbe (patch) | |
tree | 9078a32b991644bd7a2687c25b168655ae1e92d1 | |
parent | Update to 3.8.5. (diff) |
- fix API for pg-1.0.0
-rw-r--r-- | databases/rubygem-dbd-pg/Makefile | 2 | ||||
-rw-r--r-- | databases/rubygem-dbd-pg/files/patch-database.rb | 62 | ||||
-rw-r--r-- | databases/rubygem-dbd-pg/files/patch-statement.rb | 11 | ||||
-rw-r--r-- | databases/rubygem-dbd-pg/files/patch-type.rb | 20 |
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 |