Skip to content

Commit 6529336

Browse files
committed
Merge branch 'release-v0.12.0' into release
2 parents b419625 + 07f3dc0 commit 6529336

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+2009
-3053
lines changed

.travis.yml

+2-4
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,11 @@ cache: cargo
33
sudo: required
44
rust:
55
- nightly
6-
- beta
7-
- 1.9.0
6+
- 1.10.0
87
addons:
98
postgresql: 9.4
109
before_script:
1110
- "./.travis/setup.sh"
1211
script:
1312
- cargo test
14-
- cargo test --features "uuid rustc-serialize time unix_socket serde_json chrono openssl bit-vec eui48"
15-
- (test $TRAVIS_RUST_VERSION != "nightly" || cargo test --features nightly)
13+
- cargo test --features "$(cargo read-manifest | jq -r '.features|keys|map(select(. != "with-security-framework"))|join(" ")')"

.travis/server.crt

+20-58
Original file line numberDiff line numberDiff line change
@@ -1,62 +1,24 @@
1-
Certificate:
2-
Data:
3-
Version: 3 (0x2)
4-
Serial Number:
5-
9a:e5:7a:5f:05:5a:2f:e4
6-
Signature Algorithm: sha1WithRSAEncryption
7-
Issuer: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=localhost
8-
Validity
9-
Not Before: Dec 5 21:50:46 2015 GMT
10-
Not After : Jan 4 21:50:46 2016 GMT
11-
Subject: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=localhost
12-
Subject Public Key Info:
13-
Public Key Algorithm: rsaEncryption
14-
RSA Public Key: (1024 bit)
15-
Modulus (1024 bit):
16-
00:f1:9b:b6:24:64:66:bf:5e:da:77:2a:39:bd:39:
17-
93:56:28:26:f1:d7:1f:c9:60:1c:e3:82:a4:07:a2:
18-
0f:c8:d6:68:fc:30:2f:17:30:34:69:cd:d8:f1:e7:
19-
c7:84:f9:c5:90:b1:2c:42:d5:23:20:d2:1d:d7:18:
20-
15:70:0a:a3:1d:c7:2e:df:03:c0:9f:5c:cb:02:25:
21-
da:7d:2b:1a:09:78:e5:23:8a:c4:64:39:59:0d:4e:
22-
15:0b:75:7b:75:f9:8a:4c:c3:9d:f9:31:08:d5:da:
23-
00:a5:db:0c:df:09:e5:e4:14:d1:17:0f:bb:f6:cf:
24-
bd:3c:5d:14:6a:cb:c1:dc:e1
25-
Exponent: 65537 (0x10001)
26-
X509v3 extensions:
27-
X509v3 Subject Key Identifier:
28-
9E:09:C0:D1:1E:0E:07:B3:49:57:0A:49:47:F9:8A:5F:4E:FE:23:75
29-
X509v3 Authority Key Identifier:
30-
keyid:9E:09:C0:D1:1E:0E:07:B3:49:57:0A:49:47:F9:8A:5F:4E:FE:23:75
31-
DirName:/C=AU/ST=Some-State/O=Internet Widgits Pty Ltd/CN=localhost
32-
serial:9A:E5:7A:5F:05:5A:2F:E4
33-
34-
X509v3 Basic Constraints:
35-
CA:TRUE
36-
Signature Algorithm: sha1WithRSAEncryption
37-
4c:3b:c6:42:96:75:96:a0:9b:f5:d9:b1:9b:1b:4f:bd:d2:8d:
38-
f1:53:ed:87:80:f5:7b:5d:36:6e:38:c8:ae:1a:58:e5:39:9e:
39-
42:49:12:35:76:ab:0f:fa:b1:1f:4e:b1:85:f3:a3:6f:60:e3:
40-
6c:0e:a8:95:0d:c8:38:7f:e3:e3:ff:64:74:73:50:46:65:83:
41-
5f:1a:72:f9:69:44:07:cd:36:01:90:b9:b3:ed:d8:d7:bc:68:
42-
97:dd:11:ac:2b:ec:5d:a4:d4:d5:e8:8b:60:12:54:b9:c4:5f:
43-
00:f8:ce:5b:72:28:58:43:7c:d5:25:b7:dd:ec:71:da:aa:3a:
44-
f2:6c
451
-----BEGIN CERTIFICATE-----
46-
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
23+
NmFaAhoxnXA=
6224
-----END CERTIFICATE-----

.travis/server.der

261 Bytes
Binary file not shown.

.travis/server.key

+25-13
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,27 @@
11
-----BEGIN RSA PRIVATE KEY-----
2-
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
1527
-----END RSA PRIVATE KEY-----

.travis/setup.sh

+8-2
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,11 @@ psql -U postgres < setup.sql
88
sudo cp pg_hba.conf $(psql -U postgres -c "SHOW hba_file" -At)
99

1010
DATA_DIR=$(psql -U postgres -c "SHOW data_directory" -At)
11-
PG_PID=$(sudo head -n1 $DATA_DIR/postmaster.pid)
12-
sudo kill -SIGHUP $PG_PID
11+
CONFIG_FILE=$(psql -U postgres -c "SHOW config_file" -At)
12+
sudo install -m 0600 -o postgres server.crt $DATA_DIR
13+
sudo install -m 0600 -o postgres server.key $DATA_DIR
14+
sudo bash -c "echo ssl_cert_file = \\'server.crt\\' >> $CONFIG_FILE"
15+
sudo bash -c "echo ssl_key_file = \\'server.key\\' >> $CONFIG_FILE"
16+
17+
sudo service postgresql stop
18+
sudo service postgresql start 9.4

Cargo.toml

+20-11
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
[package]
22
name = "postgres"
3-
version = "0.11.11"
3+
version = "0.12.0"
44
authors = ["Steven Fackler <[email protected]>"]
55
license = "MIT"
66
description = "A native PostgreSQL driver"
77
repository = "https://github.com/sfackler/rust-postgres"
8-
documentation = "https://sfackler.github.io/rust-postgres/doc/v0.11.11/postgres"
8+
documentation = "https://sfackler.github.io/rust-postgres/doc/v0.12.0/postgres"
99
readme = "README.md"
1010
keywords = ["database", "postgres", "postgresql", "sql"]
1111
include = ["src/*", "Cargo.toml", "LICENSE", "README.md", "THIRD_PARTY"]
@@ -21,24 +21,33 @@ name = "test"
2121
path = "tests/test.rs"
2222

2323
[features]
24-
nightly = []
24+
with-bit-vec = ["bit-vec"]
25+
with-chrono = ["chrono"]
26+
with-eui48 = ["eui48"]
27+
with-openssl = ["openssl", "openssl-verify"]
28+
with-rustc-serialize = ["rustc-serialize"]
29+
with-security-framework = ["security-framework"]
30+
with-serde_json = ["serde_json"]
31+
with-time = ["time"]
32+
with-uuid = ["uuid"]
2533

2634
[dependencies]
2735
bufstream = "0.1"
28-
byteorder = "0.5"
36+
fallible-iterator = "0.1.3"
37+
hex = "0.2"
2938
log = "0.3"
3039
phf = "=0.7.15"
31-
hex = "0.2"
32-
rustc-serialize = { version = "0.3", optional = true }
40+
postgres-protocol = "0.1"
41+
bit-vec = { version = "0.4", optional = true }
3342
chrono = { version = "0.2.14", optional = true }
34-
openssl = { version = ">= 0.6.4, < 0.8", optional = true }
43+
eui48 = { version = "0.1", optional = true }
44+
openssl-verify = { version = "0.2", optional = true }
45+
openssl = { version = "0.8", optional = true }
46+
rustc-serialize = { version = "0.3", optional = true }
47+
security-framework = { version = "0.1.2", optional = true }
3548
serde_json = { version = ">= 0.6, < 0.9", optional = true }
3649
time = { version = "0.1.14", optional = true }
37-
unix_socket = { version = "0.5", optional = true }
3850
uuid = { version = ">= 0.1, < 0.4", optional = true }
39-
security-framework = { version = "0.1.2", optional = true }
40-
bit-vec = { version = "0.4", optional = true }
41-
eui48 = { version = "0.1", optional = true }
4251

4352
[dev-dependencies]
4453
url = "1.0"

README.md

+22-30
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,22 @@
11
# Rust-Postgres
22
A native PostgreSQL driver for Rust.
33

4-
[Documentation](https://sfackler.github.io/rust-postgres/doc/v0.11.11/postgres)
4+
[Documentation](https://sfackler.github.io/rust-postgres/doc/v0.12.0/postgres)
55

66
[![Build Status](https://travis-ci.org/sfackler/rust-postgres.png?branch=master)](https://travis-ci.org/sfackler/rust-postgres) [![Latest Version](https://img.shields.io/crates/v/postgres.svg)](https://crates.io/crates/postgres)
77

88
You can integrate Rust-Postgres into your project through the [releases on crates.io](https://crates.io/crates/postgres):
99
```toml
10-
# Cargo.toml
1110
[dependencies]
12-
postgres = "0.11"
11+
postgres = "0.12"
1312
```
1413

1514
## Overview
1615
Rust-Postgres is a pure-Rust frontend for the popular PostgreSQL database.
1716
```rust
1817
extern crate postgres;
1918

20-
use postgres::{Connection, SslMode};
19+
use postgres::{Connection, TlsMode};
2120

2221
struct Person {
2322
id: i32,
@@ -26,7 +25,7 @@ struct Person {
2625
}
2726

2827
fn main() {
29-
let conn = Connection::connect("postgres://postgres@localhost", SslMode::None).unwrap();
28+
let conn = Connection::connect("postgres://postgres@localhost", TlsMode::None).unwrap();
3029
conn.execute("CREATE TABLE person (
3130
id SERIAL PRIMARY KEY,
3231
name VARCHAR NOT NULL,
@@ -51,7 +50,7 @@ fn main() {
5150
```
5251

5352
## Requirements
54-
* **Rust** - Rust-Postgres is developed against the 1.9 release of Rust
53+
* **Rust** - Rust-Postgres is developed against the 1.10 release of Rust
5554
available on http://www.rust-lang.org. It should also compile against more
5655
recent releases.
5756

@@ -65,19 +64,18 @@ fn main() {
6564
Connect to a Postgres server using the standard URI format:
6665
```rust
6766
let conn = try!(Connection::connect("postgres://user:pass@host:port/database?arg1=val1&arg2=val2",
68-
SslMode::None));
67+
TlsMode::None));
6968
```
7069
`pass` may be omitted if not needed. `port` defaults to `5432` and `database`
7170
defaults to the value of `user` if not specified. The driver supports `trust`,
7271
`password`, and `md5` authentication.
7372

74-
Unix domain sockets can be used as well by activating the `unix_socket` or
75-
`nightly` features. The `host` portion of the URI should be set to the absolute
76-
path to the directory containing the socket file. Since `/` is a reserved
77-
character in URLs, the path should be URL encoded. If Postgres stored its socket
78-
files in `/run/postgres`, the connection would then look like:
73+
Unix domain sockets can be used as well. The `host` portion of the URI should
74+
be set to the absolute path to the directory containing the socket file. Since
75+
`/` is a reserved character in URLs, the path should be URL encoded. If Postgres
76+
stored its socket files in `/run/postgres`, the connection would then look like:
7977
```rust
80-
let conn = try!(Connection::connect("postgres://postgres@%2Frun%2Fpostgres", SslMode::None));
78+
let conn = try!(Connection::connect("postgres://postgres@%2Frun%2Fpostgres", TlsMode::None));
8179
```
8280
Paths which contain non-UTF8 characters can be handled in a different manner;
8381
see the documentation for details.
@@ -182,7 +180,7 @@ types. The driver currently supports the following conversions:
182180
</tr>
183181
<tr>
184182
<td>str/String</td>
185-
<td>VARCHAR, CHAR(n), TEXT, CITEXT</td>
183+
<td>VARCHAR, CHAR(n), TEXT, CITEXT, NAME</td>
186184
</tr>
187185
<tr>
188186
<td>[u8]/Vec&lt;u8&gt;</td>
@@ -285,42 +283,36 @@ crate.
285283

286284
## Optional features
287285

288-
### Unix socket connections
289-
290-
Support for connections through Unix domain sockets is provided optionally by
291-
either the `unix_socket` or `nightly` features. It is only available on "unixy"
292-
platforms such as OSX, BSD and Linux.
293-
294286
### UUID type
295287

296288
[UUID](http://www.postgresql.org/docs/9.4/static/datatype-uuid.html) support is
297-
provided optionally by the `uuid` feature, which adds `ToSql` and `FromSql`
289+
provided optionally by the `with-uuid` feature, which adds `ToSql` and `FromSql`
298290
implementations for `uuid`'s `Uuid` type.
299291

300292
### JSON/JSONB types
301293

302294
[JSON and JSONB](http://www.postgresql.org/docs/9.4/static/datatype-json.html)
303-
support is provided optionally by the `rustc-serialize` feature, which adds
295+
support is provided optionally by the `with-rustc-serialize` feature, which adds
304296
`ToSql` and `FromSql` implementations for `rustc-serialize`'s `Json` type, and
305-
the `serde_json` feature, which adds implementations for `serde_json`'s `Value`
306-
type.
297+
the `with-serde_json` feature, which adds implementations for `serde_json`'s
298+
`Value` type.
307299

308300
### TIMESTAMP/TIMESTAMPTZ/DATE/TIME types
309301

310302
[Date and Time](http://www.postgresql.org/docs/9.1/static/datatype-datetime.html)
311-
support is provided optionally by the `time` feature, which adds `ToSql` and
312-
`FromSql` implementations for `time`'s `Timespec` type, or the `chrono`
303+
support is provided optionally by the `with-time` feature, which adds `ToSql`
304+
and `FromSql` implementations for `time`'s `Timespec` type, or the `with-chrono`
313305
feature, which adds `ToSql` and `FromSql` implementations for `chrono`'s
314306
`DateTime`, `NaiveDateTime`, `NaiveDate` and `NaiveTime` types.
315307

316308
### BIT/VARBIT types
317309

318310
[BIT and VARBIT](http://www.postgresql.org/docs/9.4/static/datatype-bit.html)
319-
support is provided optionally by the `bit-vec` feature, which adds `ToSql` and
320-
`FromSql` implementations for `bit-vec`'s `BitVec` type.
311+
support is provided optionally by the `with-bit-vec` feature, which adds `ToSql`
312+
and `FromSql` implementations for `bit-vec`'s `BitVec` type.
321313

322314
### MACADDR type
323315

324316
[MACADDR](http://www.postgresql.org/docs/9.4/static/datatype-net-types.html#DATATYPE-MACADDR)
325-
support is provided optionally by the `eui48` feature, which adds `ToSql` and
326-
`FromSql` implementations for `eui48`'s `MacAddress` type.
317+
support is provided optionally by the `with-eui48` feature, which adds `ToSql`
318+
and `FromSql` implementations for `eui48`'s `MacAddress` type.

THIRD_PARTY

-31
Original file line numberDiff line numberDiff line change
@@ -57,34 +57,3 @@ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
5757
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
5858
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
5959
DEALINGS IN THE SOFTWARE.
60-
61-
-------------------------------------------------------------------------------
62-
63-
* src/md5.rs has been copied from rust-crypto
64-
65-
Copyright (c) 2006-2009 Graydon Hoare
66-
Copyright (c) 2009-2013 Mozilla Foundation
67-
68-
Permission is hereby granted, free of charge, to any
69-
person obtaining a copy of this software and associated
70-
documentation files (the "Software"), to deal in the
71-
Software without restriction, including without
72-
limitation the rights to use, copy, modify, merge,
73-
publish, distribute, sublicense, and/or sell copies of
74-
the Software, and to permit persons to whom the Software
75-
is furnished to do so, subject to the following
76-
conditions:
77-
78-
The above copyright notice and this permission notice
79-
shall be included in all copies or substantial portions
80-
of the Software.
81-
82-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF
83-
ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
84-
TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
85-
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
86-
SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
87-
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
88-
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
89-
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
90-
DEALINGS IN THE SOFTWARE.

0 commit comments

Comments
 (0)