135 Commits

Author SHA1 Message Date
tserakhau
d7c42f0d3d Regenerate jsonb array 2020-09-09 17:04:35 -05:00
tserakhau
52bfe2bc14 Fix 490: Add jsonb array support for pgx v3 2020-09-09 17:04:35 -05:00
Jack Christensen
48c3df3f8b Bit supports text format 2019-09-26 21:15:50 -05:00
David Hudson
d52bd74254 pgtype: Add ext type for gofrs uuid implementation
Add ext type for https://github.com/gofrs/uuid uuid type.

Change test and README from github.com/satori/go.uuid to
github.com/gofrs/uuid. The reason is due to this issue:
https://github.com/satori/go.uuid/issues/73. This was taken on board and
fixed in the community project of gofrs. The gofrs implementation has
the same interface as the original.
2019-09-13 16:50:15 +01:00
Nicholas Wilson
251e6b7730 Tidying: make underlyingTimeType consistent with other underlyingFooType
The first return value is ignored when returning false - so there's no
point returning an empty time.Time when it can be nil.
2019-07-24 12:32:43 +01:00
Nicholas Wilson
fc020c24ac Add support for pgtype.UUID to write into any [16]byte type 2019-07-24 12:32:18 +01:00
David Hudson
d678216f46 pgtype: Fix -0 for numeric types
Due to the special case of when the digits string was longer than 1 but
only contained the negative sign and a 0, it was incorrectly stripping
the 0 and attempting to parse "-" as a number.

The solution is to check an extra position along to make sure a trailing
0 is not immediately preceeded by a negetive sign.

Fixes #543
2019-06-07 15:15:46 +01:00
Josh Leverette
56f4f0b9d3 Hstore can have empty keys 2019-05-20 11:30:25 -07:00
Andrey Kuzmin
b4c77819da Use date as date, not datetime.
Marshal/unmarshal date without time part. Date is postgresql type without time.
2019-04-23 21:13:32 +03:00
Andrey Kuzmin
2492eae46c Support for pgtype.Date JSON marshal/unmarshal.
JSON marshalling for types added on a as-needed basis.
Partly closes https://github.com/jackc/pgx/issues/310.
2019-04-22 00:22:22 +03:00
David Bariod
0c7a1fc13e support binding of []int type to array integer 2019-01-15 11:01:18 +01:00
maxarchx
b1a17cf284 Apply UUID string length check before parsing 2018-11-30 15:13:43 +05:00
Jack Christensen
e44f0f24c4
Merge pull request #454 from regeda/macaddr-array
macaddr array is introduced
2018-09-01 22:46:13 -04:00
Jack Christensen
302c74f214 Fix: do not silently ignore assign NULL to *string
AssignTo can only assign NULL to a **string. Previous code tried to
assign nil to a *string, which did nothing. Correct behavior is to
detect this as an error.
2018-09-01 18:40:42 -05:00
Anthony Regeda
b0702cf2b1
macaddr-array macaddr array is introduced 2018-09-01 16:06:20 +03:00
Damir Vandic
fa045b7a4b Add the type of the value in all decode error messages 2018-06-04 21:02:20 +02:00
Tarik Demirci
1149b0f015
Allow setting nil to pgtype.Bool 2018-05-17 12:22:48 +02:00
Anthony Regeda
88c559bbcd
numeric_with_uint64 numeric array supports both types int64 and uint64 2018-04-24 16:31:31 +03:00
Jack Christensen
5297846239 pgtype.JSON(B).Value now returns []byte
Allows scanning jsonb column into *json.RawMessage.

fixes #409
2018-04-14 09:17:56 -05:00
Jack Christensen
cb4431028c Fix precision loss for test format geometric types
fixes #399
2018-03-17 10:26:03 -05:00
Jack Christensen
a07b87eb8b Skip line test of PG 9.3 2018-03-08 08:05:54 -05:00
Jack Christensen
b0c9bbbf71 Update shopspring decimal integration test
New version of shopspring/decimal improves precision. This broke a test.
2018-03-08 07:40:25 -05:00
Jack Christensen
55ca9db5d5 Skip test based on missing line type
Instead of explicit server version checking. Ubuntu installed version
string is not parsable by go-version. e.g.

10.2 (Ubuntu 10.2-1.pgdg16.04+1)
2018-02-16 21:39:19 -06:00
Jack Christensen
a680463718 Import encoding/json package 2018-01-13 18:14:42 -06:00
Jack Christensen
6ca9b1279e Merge branch 'patch-1' of https://github.com/eruca/pgx into eruca-patch-1 2018-01-13 18:12:35 -06:00
Iurii Krasnoshchok
90de4adfa7 Add support for bpchar type 2018-01-02 12:29:40 +01:00
eruca
de72a2c730
UnmarshalJSON for Int8 missing 2017-12-29 21:09:22 +08:00
Jack Christensen
4fb47ac8c9
Merge pull request #371 from ferhatelmas/gofmt-simplify
Run gofmt with simplify flag
2017-12-23 10:32:44 -06:00
Jack Christensen
21dad60cf7 Add test for record with unknown OID 2017-12-23 10:24:09 -06:00
ferhat elmas
763deea17e Run gofmt with simplify flag 2017-12-21 23:45:26 +01:00
Iurii Krasnoshchok
0bc891e780 Return error on unknown oid while decoding record instead of panic 2017-12-20 14:47:52 +01:00
Jack Christensen
5e08a4a5f1 Add support for bit type 2017-11-18 21:13:34 -06:00
Jack Christensen
5785eea828 Fix missing interval mapping 2017-11-17 09:37:57 -06:00
Jack Christensen
f6d37536c4 Detect erroneous JSON(B) encoding
JSON(B) automatically marshals any value. Avoid marshalling values of
pgtype.JSON and pgtype.JSONB. The caller certainly meant to call on a
pointer.

See https://github.com/jackc/pgx/issues/350 for discussion.

refs #350
2017-11-04 19:09:24 -05:00
Jack Christensen
425fbe1c88 Fix ranges with text format where end is unbounded
fixes #342
2017-11-04 14:03:46 -05:00
Jack Christensen
d6cd3b1962 Add String method to pgtype.BoundType
Character representation is much easier to read than numeric.
2017-11-04 13:47:03 -05:00
Jack Christensen
e16749774d Use named value instead of literal 2017-11-04 13:37:47 -05:00
Jack Christensen
ab9a1af65b Add support for array of enum
fixes #338
2017-10-17 20:31:11 -05:00
Jack Christensen
63f58fd32e Add UnmarshalJSON to a few types 2017-09-29 15:26:37 -05:00
Jack Christensen
47c0e9cbac Fix decoding row with same type values
Row decoding was reusing and returning connection owned values for
decoding. Instead allocate new value each time.

fixes #313
2017-08-29 15:38:45 -05:00
Jack Christensen
4e26b04d6e Generate UUIDArray from template
- Fix error in Set
- Specifically handle untyped nil
2017-08-29 14:33:25 -05:00
Kelsey Francis
1e36edf4b0 Add UUIDArray type
Also change UUID.Set() to convert nil to NULL in order for
UUIDArray.Set() to support converting [][]byte slices that contain nil.
2017-08-27 19:36:53 -07:00
Jack Christensen
5e91defb41 Merge pull request #306 from cyberdelia/rows
Add more ColumnType support
2017-08-22 14:21:47 -05:00
Timothée Peignier
0f84f73c7b
Add more ColumnType support 2017-08-18 18:22:08 -07:00
Wei Congrui
ce654ad1e1 Fix numeric EncodeBinary bug 2017-08-18 15:20:39 +08:00
Jack Christensen
d2a8d4ddca Return error on MarshalJSON of status Undefined
Previously "undefined" was returned as a value. While this is a
valid JavaScript value, it is not valid JSON.
2017-08-12 16:40:18 -05:00
Jack Christensen
8f4178b3d3 Use github.com/pkg/errors 2017-06-04 21:30:03 -05:00
Jack Christensen
8712627257 Use Go casing convention for CID/TID/XID/CIDR 2017-06-03 12:01:49 -05:00
Jack Christensen
24fb04edb5 Use Go casing convention for ACLItem 2017-06-03 11:58:40 -05:00
Jack Christensen
6688466123 Use Go casing convention for JSON(B) 2017-06-03 11:57:14 -05:00