Commit Graph

834 Commits (aac8fd66f20d1e0763230238b75266d890337c02)

Author SHA1 Message Date
Jack Christensen aac8fd66f2 Remove Set self support from pgtype
Set having the capability to assign an object of the same type was
inconsistently implemented. Some places it was not implemented at all, some
places it was a shallow copy, some places a deep copy. Given that it doesn't
seem likely to ever be used, and if it is needed it is easy enough to do
outside of the library this code has been removed.
2017-03-11 20:18:56 -06:00
Jack Christensen 5cf4b97681 Document that Decode* must not keep src
- Also fix Bytea.DecodeBinary to not keep src.
2017-03-11 20:12:47 -06:00
Jack Christensen 7da69cd3db Restructure *Rows.Values() to use Get() 2017-03-11 20:07:31 -06:00
Jack Christensen 57494a6a0f Expand pgtype.Value interface
- Include and rename ConvertFrom to Set
- Add Get
- Include AssignTo
2017-03-11 19:53:45 -06:00
Jack Christensen 542eac08c6 Add json/jsonb to pgtype 2017-03-11 18:46:51 -06:00
Jack Christensen 743b98b298 Name PG types as words
Though this doesn't follow Go naming conventions exactly it makes names more
consistent with PostgreSQL and it is easier to read. For example, TIDOID becomes
TidOid. In addition this is one less breaking change in the move to V3.
2017-03-11 17:03:23 -06:00
Jack Christensen 3dc509df94 Rename array files 2017-03-11 16:53:07 -06:00
Jack Christensen 6694e0e618 Move Tid to pgtype 2017-03-11 16:48:37 -06:00
Jack Christensen f10ed4ff5d Remove unused function 2017-03-11 16:14:13 -06:00
Jack Christensen fa1c81fec4 Move ACLItem to pgtype 2017-03-11 16:13:05 -06:00
Jack Christensen b0cd63bcf0 Remove unused ScannerV3 2017-03-11 15:44:21 -06:00
Jack Christensen 77c57c780d Add pgtype.ByteaArray
Also fix up quoting array elements for text arrays.
2017-03-11 13:32:32 -06:00
Jack Christensen 1f3e484ca1 pgtype.Encode(Binary|Text) do not write length
To aid in composability, these methods no longer write their own length. This
is especially useful for text formatted arrays and may be useful for future
database/sql compatibility. It also makes the code a little simpler as the
types no longer have to compute their own size.

Along with this, these methods cannot encode NULL. They now return a boolean
if they are NULL. This also benefits text array encoding as numeric arrays
require NULL to be exactly `NULL` while string arrays require NULL to be
`"NULL"`.
2017-03-11 12:45:30 -06:00
Jack Christensen 6c26c3a4a3 Improve replication test reliability
It was failing intermittently when run concurrently.
2017-03-11 11:17:51 -06:00
Jack Christensen 8162634259 Decode(Text|Binary) now accepts []byte instead of io.Reader 2017-03-10 16:08:47 -06:00
Jack Christensen ac9228a1a3 Fix typed_array_gen.sh typo 2017-03-09 21:09:36 -06:00
Jack Christensen bac4af13bb Add bytea 2017-03-09 21:07:40 -06:00
Jack Christensen fa36ad9196 Move "char" to pgtype 2017-03-07 19:39:57 -06:00
Jack Christensen 7b1dbd8558 Move Name to pgtype 2017-03-06 17:55:20 -06:00
Jack Christensen 5702f34407 Fix replication with context
The normal connection context timeout cancels the current query. That isn't
appropriate for a replication connection.
2017-03-05 14:00:38 -06:00
Jack Christensen 071f4cc2ad Conn.Close waits for server to close connection 2017-03-05 13:47:28 -06:00
Jack Christensen af8519991e Move OID to pgtype 2017-03-05 13:05:49 -06:00
Jack Christensen f66b80c387 Fix comment on XID 2017-03-05 09:18:50 -06:00
Jack Christensen 164bf9eebe Extract pguint32 2017-03-05 09:13:25 -06:00
Jack Christensen cb1c05476f Move XID to pgypte 2017-03-05 09:07:07 -06:00
Jack Christensen 0f68bdcd52 Generalize array template 2017-03-05 08:59:26 -06:00
Jack Christensen 575574cf98 Move cid to pgtype 2017-03-04 22:12:03 -06:00
Jack Christensen 12ac0c33b8 Remove unused array code from pgx 2017-03-04 21:23:57 -06:00
Jack Christensen fa57904d6b Add text to pgtype 2017-03-04 21:20:56 -06:00
Jack Christensen b1fc8109db Remove AF_INET fetching system
Also remove old encode/decode inet/cidr code. This removed some functionality
from Rows.Values, but that entire system will soon change anyway.
2017-03-04 18:00:51 -06:00
Jack Christensen 005916166a Remove behavior migrated to pgtype 2017-03-04 17:43:12 -06:00
Jack Christensen 4cdea13f0f Add inet and cidr to pgtype 2017-03-04 17:33:41 -06:00
Jack Christensen 2010bea555 Add float4, float8 and arrays 2017-03-04 13:29:04 -06:00
Jack Christensen 3179e2debc Add timestamp to pgtype 2017-03-04 12:36:24 -06:00
Jack Christensen ffb949054d Add arrays to all other pgtypes 2017-03-04 11:48:53 -06:00
Jack Christensen aabf43a725 Remove types from Decode handled by pgtypes 2017-03-04 09:44:10 -06:00
Jack Christensen 0e8dd862b1 Add tests for pgtype.Int2Array 2017-03-03 19:19:31 -06:00
Jack Christensen 6a3b22cee8 Add pgtype error cases 2017-03-03 18:39:52 -06:00
Jack Christensen 5b861d0a5f Add tests to more pgtypes
Int4, Int8, Date, Timestamptz
2017-03-03 18:23:26 -06:00
Jack Christensen 9e5d81d8f5 Add test for pgtype.Int2.AssignTo 2017-03-03 17:59:26 -06:00
Jack Christensen 2fb46fb16f Fix travis.yml 2017-03-03 17:42:25 -06:00
Jack Christensen 7fd09c4cd2 Supply DATABASE_URL for travis 2017-03-03 17:39:55 -06:00
Jack Christensen 272f095a44 Standardize receiver variable name for pgtype
Conversion functions now use standardized src and dst depending on their role.
2017-03-03 17:35:02 -06:00
Jack Christensen 66712f8259 travis needs go 1.8 not 1.8.0 2017-03-03 17:16:07 -06:00
Jack Christensen 2e2b11be34 Add more tests for pgtype.Bool 2017-03-03 17:15:05 -06:00
Jack Christensen 0a0c086edd Fix broken stdlib tests 2017-03-03 16:46:50 -06:00
Jack Christensen ed9e8bb168 Remove skip test for missing json type
All supported versions of PostgreSQL now have json type.
2017-03-03 16:08:00 -06:00
Jack Christensen 908c439317 Use stdlib context 2017-03-03 16:01:06 -06:00
Jack Christensen 15b44f4096 Remove -short from travis 2017-03-03 16:00:08 -06:00
Jack Christensen cea412f2ba Fix chat example 2017-03-03 15:57:24 -06:00