aboutsummaryrefslogtreecommitdiffstats
path: root/community/cargo
diff options
context:
space:
mode:
authorJakub Jirutka <jakub@jirutka.cz>2018-02-16 01:47:34 +0100
committerJakub Jirutka <jakub@jirutka.cz>2018-02-16 01:55:38 +0100
commit7dbccc4f0781db1940354d2c390351ea98708d8c (patch)
treed0177af1542f3837c4fe7eb3ec7c526f86661e7a /community/cargo
parentb1f5a020aa4060b6b3341bdb5e440dc8e315eda3 (diff)
downloadaports-7dbccc4f0781db1940354d2c390351ea98708d8c.tar.bz2
aports-7dbccc4f0781db1940354d2c390351ea98708d8c.tar.xz
community/cargo: rebuild against libgit2 0.26.0 and newer openssl crate
I had to update crate openssl to 0.9.24 to make it build against libressl 2.6.4.
Diffstat (limited to 'community/cargo')
-rw-r--r--community/cargo/APKBUILD20
-rw-r--r--community/cargo/openssl-fix-libressl-cmsh-detection.patch47
-rw-r--r--community/cargo/openssl-libressl263-compat.patch140
-rw-r--r--community/cargo/replace-openssl-crate.patch138
-rw-r--r--community/cargo/tests-ignore-rustdoc.patch31
5 files changed, 152 insertions, 224 deletions
diff --git a/community/cargo/APKBUILD b/community/cargo/APKBUILD
index 4aa01f057e..2c3c677bfb 100644
--- a/community/cargo/APKBUILD
+++ b/community/cargo/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=cargo
pkgver=0.22.0
-pkgrel=3
+pkgrel=4
pkgdesc="The Rust package manager"
url="https://crates.io"
arch="x86_64" # limited by rust pkg
@@ -25,21 +25,20 @@ subpackages="$pkgname-doc
_bootstrap_cargo_ver=0.17.0
# We must use newer version of openssl crate and patch it for compatibility
# with LibreSSL 2.6.3.
-_crate_openssl_ver="0.9.20"
+_crate_openssl_ver="0.9.24"
source="$pkgname-$pkgver.tar.gz::https://github.com/rust-lang/$pkgname/archive/$pkgver.tar.gz
https://dev.alpinelinux.org/archive/$pkgname/$pkgname-$_bootstrap_cargo_ver-x86_64-alpine-linux-musl.tar.gz
tests-fix-build-auth-http_auth_offered.patch
tests-ignore-ssh_something_happens.patch
+ tests-ignore-rustdoc.patch
replace-openssl-crate.patch
- rust-openssl-$_crate_openssl_ver.tar.gz::https://github.com/sfackler/rust-openssl/archive/v$_crate_openssl_ver.tar.gz
- openssl-fix-libressl-cmsh-detection.patch
- openssl-libressl263-compat.patch"
+ rust-openssl-$_crate_openssl_ver.tar.gz::https://github.com/sfackler/rust-openssl/archive/openssl-v$_crate_openssl_ver.tar.gz"
builddir="$srcdir/$pkgname-$pkgver"
export CARGO_HOME="$srcdir/.cargo"
_bootstrap_cargo="$srcdir/$pkgname-$_bootstrap_cargo_ver-$CHOST/bin/cargo"
-_cargo_opts="--release --locked --verbose ${JOBS:+--jobs $JOBS}"
+_cargo_opts="--release --verbose ${JOBS:+--jobs $JOBS}"
# Uploaded cargo binary from the built package to dev.a.o, so it can be used
# for building cargo next time (needed for bootstrapping).
@@ -61,7 +60,7 @@ snapshot() {
}
prepare() {
- mv "$srcdir"/rust-openssl-$_crate_openssl_ver "$builddir"/openssl
+ mv "$srcdir"/rust-openssl-openssl-v$_crate_openssl_ver "$builddir"/openssl
default_prepare
}
@@ -120,7 +119,6 @@ sha512sums="31764df0462fcd0e7ddd29aee63ed0916b0d05e44d72aa815b3b823256e90f85e582
b78a03942344852fd1a8c0ac893580c589757d4946150e5959e1df08b163b94ce5319236a48506c18f987cf3500a2c7cfe808eef13092c45d271e169946a18d1 cargo-0.17.0-x86_64-alpine-linux-musl.tar.gz
4e9a0d409951a72b5c1d3578cb310c0efc5d98a5b963432ec4f485f1d58d2354f0050c31574d6bd9090b7247468ef1a13b04b133deabe6daed91032764468f97 tests-fix-build-auth-http_auth_offered.patch
17c669a71443e21cc5e5cc6eb99933c20562b7df9d859c493ff25252167eb1aea6dd7322a06207776eab1c769464f95a432d1520a949512a52592b1eb115a4be tests-ignore-ssh_something_happens.patch
-f066262423d7f092080629bc0b91f8445757c230d5fa441b1c367f3ac44c7def59c05ff8d95f8df8b8c8dbb51e4de8df41b41c95ef18415d20deede3b0f5661f replace-openssl-crate.patch
-a1a83416d7ef75fedcd98ac2368c6c6041916ce73438a2f1de7aeafb39c32e7156ade5efd3340e58f0eb666c8b60305d030fffd134bc403fddccbe65914b0815 rust-openssl-0.9.20.tar.gz
-e50464c72d94515768763c72778b1e6bd25f83a07eb8ef666fe6efaa592c9fec96307cf5d56643e05665273d4d1c480f28a1e29956a2e24cf4fda9424ead1879 openssl-fix-libressl-cmsh-detection.patch
-8dce5569eee5bbf99a52b0589a7907b6a558eaff04e3701e40e575000fdd2a164736aaa9b104bd38973ad914e6cf5eaed903db13761f8217049ed4100121283d openssl-libressl263-compat.patch"
+cf2c55d71cb376fdaac7efedfd9bb7a1d8b8709c7cd98aa7e74e574885e8dfa17fbb61050335d7fc63932c5b45ac1ca33cf516d4340e1ba9fe5f41fd6983078e tests-ignore-rustdoc.patch
+93232da79f95703976568475e02246cf9c8b5df0240a5395c00682324e4ae426313356c8345db8a6a99fad8ec2cf72560dbb498801e6994aa0a43939938dc65c replace-openssl-crate.patch
+885add87d74e3a8cbaf7fa66a632d1f58fbe729964fc48eae7abefd0d738d8bfea3a76801cca7f93868fdc52012813bed6de622ec87704b2cfae29826517e76f rust-openssl-0.9.24.tar.gz"
diff --git a/community/cargo/openssl-fix-libressl-cmsh-detection.patch b/community/cargo/openssl-fix-libressl-cmsh-detection.patch
deleted file mode 100644
index 3548f3401b..0000000000
--- a/community/cargo/openssl-fix-libressl-cmsh-detection.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 6e66bf9c38653b3a06fb4efb96e71e9bada25d79 Mon Sep 17 00:00:00 2001
-From: Greg V <greg@unrelenting.technology>
-Date: Mon, 6 Nov 2017 16:19:16 +0300
-Subject: [PATCH] Fix LibreSSL cms.h detection
-
-Patch-Source: https://github.com/sfackler/rust-openssl/commit/6e66bf9c38653b3a06fb4efb96e71e9bada25d79
-
---- a/openssl/systest/build.rs
-+++ b/openssl/systest/build.rs
-@@ -5,6 +5,7 @@ use std::env;
- fn main() {
- let mut cfg = ctest::TestGenerator::new();
- let target = env::var("TARGET").unwrap();
-+ let mut is_libressl = false;
-
- if let Ok(out) = env::var("DEP_OPENSSL_INCLUDE") {
- cfg.include(&out);
-@@ -24,6 +25,7 @@ fn main() {
-
- if let Ok(_) = env::var("DEP_OPENSSL_LIBRESSL") {
- cfg.cfg("libressl", None);
-+ is_libressl = true;
- } else if let Ok(version) = env::var("DEP_OPENSSL_VERSION") {
- cfg.cfg(&format!("ossl{}", version), None);
- }
-@@ -41,12 +43,6 @@ fn main() {
- }
- }
-
-- let has_cms_h = if let Ok(version) = env::var("DEP_OPENSSL_LIBRESSL_VERSION") {
-- version != "261" && version != "262"
-- } else {
-- true
-- };
--
- cfg.header("openssl/comp.h")
- .header("openssl/dh.h")
- .header("openssl/ossl_typ.h")
-@@ -64,7 +60,7 @@ fn main() {
- .header("openssl/aes.h")
- .header("openssl/ocsp.h");
-
-- if has_cms_h {
-+ if !is_libressl {
- cfg.header("openssl/cms.h");
- }
-
diff --git a/community/cargo/openssl-libressl263-compat.patch b/community/cargo/openssl-libressl263-compat.patch
deleted file mode 100644
index ca8f6e26a9..0000000000
--- a/community/cargo/openssl-libressl263-compat.patch
+++ /dev/null
@@ -1,140 +0,0 @@
-From 22e79596e7b162bbe65db13fa00a6c23fd7b5555 Mon Sep 17 00:00:00 2001
-From: phoebe jenkins <feeeb@protonmail.com>
-Date: Mon, 23 Oct 2017 13:56:39 -0400
-Subject: [PATCH] Add support for LibreSSL 2.6.3
-
-Patch-Source: https://github.com/sfackler/rust-openssl/pull/759
-
---- a/openssl/openssl-sys/build.rs
-+++ b/openssl/openssl-sys/build.rs
-@@ -316,8 +316,10 @@ fn validate_headers(include_dirs: &[PathBuf]) -> Version {
- #include <openssl/opensslv.h>
- #include <openssl/opensslconf.h>
-
--#if LIBRESSL_VERSION_NUMBER >= 0x20603000
-+#if LIBRESSL_VERSION_NUMBER >= 0x20604000
- RUST_LIBRESSL_NEW
-+#elif LIBRESSL_VERSION_NUMBER >= 0x20603000
-+RUST_LIBRESSL_263
- #elif LIBRESSL_VERSION_NUMBER >= 0x20602000
- RUST_LIBRESSL_262
- #elif LIBRESSL_VERSION_NUMBER >= 0x20601000
-@@ -475,6 +477,13 @@ See rust-openssl README for more information:
- println!("cargo:libressl_version=262");
- println!("cargo:version=101");
- Version::Libressl
-+ } else if expanded.contains("RUST_LIBRESSL_263") {
-+ println!("cargo:rustc-cfg=libressl");
-+ println!("cargo:rustc-cfg=libressl263");
-+ println!("cargo:libressl=true");
-+ println!("cargo:libressl_version=263");
-+ println!("cargo:version=101");
-+ Version::Libressl
- } else if expanded.contains("RUST_OPENSSL_110F") {
- println!("cargo:rustc-cfg=ossl110");
- println!("cargo:rustc-cfg=ossl110f");
---- a/openssl/openssl-sys/src/lib.rs
-+++ b/openssl/openssl-sys/src/lib.rs
-@@ -1250,14 +1250,14 @@ pub const SSL_VERIFY_NONE: c_int = 0;
- pub const SSL_VERIFY_PEER: c_int = 1;
- pub const SSL_VERIFY_FAIL_IF_NO_PEER_CERT: c_int = 2;
-
--#[cfg(not(any(libressl261, libressl262, ossl101)))]
-+#[cfg(not(any(libressl261, libressl262, libressl263, ossl101)))]
- pub const SSL_OP_TLSEXT_PADDING: c_ulong = 0x00000010;
--#[cfg(any(libressl261, libressl262))]
-+#[cfg(any(libressl261, libressl262, libressl263))]
- pub const SSL_OP_TLSEXT_PADDING: c_ulong = 0x0;
- pub const SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS: c_ulong = 0x00000800;
--#[cfg(not(any(libressl261, libressl262)))]
-+#[cfg(not(any(libressl261, libressl262, libressl263)))]
- pub const SSL_OP_CRYPTOPRO_TLSEXT_BUG: c_ulong = 0x80000000;
--#[cfg(any(libressl261, libressl262))]
-+#[cfg(any(libressl261, libressl262, libressl263))]
- pub const SSL_OP_CRYPTOPRO_TLSEXT_BUG: c_ulong = 0x0;
- pub const SSL_OP_LEGACY_SERVER_CONNECT: c_ulong = 0x00000004;
- #[cfg(not(libressl))]
---- a/openssl/openssl-sys/src/libressl/mod.rs
-+++ b/openssl/openssl-sys/src/libressl/mod.rs
-@@ -345,9 +345,9 @@ pub const SSL_CTRL_OPTIONS: c_int = 32;
- pub const SSL_CTRL_CLEAR_OPTIONS: c_int = 77;
- pub const SSL_CTRL_SET_ECDH_AUTO: c_int = 94;
-
--#[cfg(any(libressl261, libressl262))]
-+#[cfg(any(libressl261, libressl262, libressl263))]
- pub const SSL_OP_ALL: c_ulong = 0x4;
--#[cfg(not(any(libressl261, libressl262)))]
-+#[cfg(not(any(libressl261, libressl262, libressl263)))]
- pub const SSL_OP_ALL: c_ulong = 0x80000014;
- pub const SSL_OP_CISCO_ANYCONNECT: c_ulong = 0x0;
- pub const SSL_OP_NO_COMPRESSION: c_ulong = 0x0;
-@@ -360,9 +360,9 @@ pub const SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER: c_ulong = 0x0;
- pub const SSL_OP_SSLEAY_080_CLIENT_DH_BUG: c_ulong = 0x0;
- pub const SSL_OP_TLS_D5_BUG: c_ulong = 0x0;
- pub const SSL_OP_TLS_BLOCK_PADDING_BUG: c_ulong = 0x0;
--#[cfg(any(libressl261, libressl262))]
-+#[cfg(any(libressl261, libressl262, libressl263))]
- pub const SSL_OP_SINGLE_ECDH_USE: c_ulong = 0x0;
--#[cfg(not(any(libressl261, libressl262)))]
-+#[cfg(not(any(libressl261, libressl262, libressl263)))]
- pub const SSL_OP_SINGLE_ECDH_USE: c_ulong = 0x00080000;
- pub const SSL_OP_SINGLE_DH_USE: c_ulong = 0x00100000;
- pub const SSL_OP_NO_SSLv2: c_ulong = 0x0;
---- a/openssl/openssl/src/ssl/mod.rs
-+++ b/openssl/openssl/src/ssl/mod.rs
-@@ -652,7 +652,7 @@ impl SslContextBuilder {
-
- /// Set the protocols to be used during Next Protocol Negotiation (the protocols
- /// supported by the application).
-- #[cfg(not(any(libressl261, libressl262)))]
-+ #[cfg(not(any(libressl261, libressl262, libressl263)))]
- pub fn set_npn_protocols(&mut self, protocols: &[&[u8]]) -> Result<(), ErrorStack> {
- // Firstly, convert the list of protocols to a byte-array that can be passed to OpenSSL
- // APIs -- a list of length-prefixed strings.
-@@ -1311,7 +1311,7 @@ impl SslRef {
- ///
- /// The protocol's name is returned is an opaque sequence of bytes. It is up to the client
- /// to interpret it.
-- #[cfg(not(any(libressl261, libressl262)))]
-+ #[cfg(not(any(libressl261, libressl262, libressl263)))]
- pub fn selected_npn_protocol(&self) -> Option<&[u8]> {
- unsafe {
- let mut data: *const c_uchar = ptr::null();
---- a/openssl/openssl/src/ssl/tests/mod.rs
-+++ b/openssl/openssl/src/ssl/tests/mod.rs
-@@ -503,7 +503,7 @@ fn test_connect_with_unilateral_alpn() {
- /// Tests that connecting with the client using NPN, but the server not does not
- /// break the existing connection behavior.
- #[test]
--#[cfg(not(any(libressl261, libressl262)))]
-+#[cfg(not(any(libressl261, libressl262, libressl263)))]
- fn test_connect_with_unilateral_npn() {
- let (_s, stream) = Server::new();
- let mut ctx = SslContext::builder(SslMethod::tls()).unwrap();
-@@ -616,7 +616,7 @@ fn test_connect_with_npn_successful_single_match() {
- /// Tests that when the `SslStream` is created as a server stream, the protocols
- /// are correctly advertised to the client.
- #[test]
--#[cfg(not(any(libressl261, libressl262)))]
-+#[cfg(not(any(libressl261, libressl262, libressl263)))]
- fn test_npn_server_advertise_multiple() {
- let listener = TcpListener::bind("127.0.0.1:0").unwrap();
- let localhost = listener.local_addr().unwrap();
-@@ -1241,7 +1241,7 @@ fn tmp_dh_callback() {
- }
-
- #[test]
--#[cfg(any(all(feature = "v101", ossl101, not(any(libressl261, libressl262))), all(feature = "v102", ossl102)))]
-+#[cfg(any(all(feature = "v101", ossl101, not(any(libressl261, libressl262, libressl263))), all(feature = "v102", ossl102)))]
- fn tmp_ecdh_callback() {
- use ec::EcKey;
- use nid;
-@@ -1308,7 +1308,7 @@ fn tmp_dh_callback_ssl() {
- }
-
- #[test]
--#[cfg(any(all(feature = "v101", ossl101, not(any(libressl261, libressl262))), all(feature = "v102", ossl102)))]
-+#[cfg(any(all(feature = "v101", ossl101, not(any(libressl261, libressl262, libressl263))), all(feature = "v102", ossl102)))]
- fn tmp_ecdh_callback_ssl() {
- use ec::EcKey;
- use nid;
diff --git a/community/cargo/replace-openssl-crate.patch b/community/cargo/replace-openssl-crate.patch
index daf92f00b9..29fbbe5d12 100644
--- a/community/cargo/replace-openssl-crate.patch
+++ b/community/cargo/replace-openssl-crate.patch
@@ -1,4 +1,4 @@
-Use local openssl and openssl-sys crates patched for LibreSSL 2.6.3.
+Use local openssl and openssl-sys crates patched for LibreSSL 2.6.4.
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -8,8 +8,8 @@ Use local openssl and openssl-sys crates patched for LibreSSL 2.6.3.
doc = false
+
+[replace]
-+"openssl:0.9.20" = { path = "openssl/openssl" }
-+"openssl-sys:0.9.20" = { path = "openssl/openssl-sys" }
++"openssl:0.9.24" = { path = "openssl/openssl" }
++"openssl-sys:0.9.23" = { path = "openssl/openssl-sys" }
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -30,7 +30,7 @@
@@ -17,7 +17,7 @@ Use local openssl and openssl-sys crates patched for LibreSSL 2.6.3.
"miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 1.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "openssl 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl 0.9.20 (registry+https://github.com/rust-lang/crates.io-index)",
++ "openssl 0.9.24 (registry+https://github.com/rust-lang/crates.io-index)",
"psapi-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
"scoped-tls 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -38,7 +38,7 @@ Use local openssl and openssl-sys crates patched for LibreSSL 2.6.3.
"libc 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
"openssl-probe 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "openssl-sys 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl-sys 0.9.20 (registry+https://github.com/rust-lang/crates.io-index)",
++ "openssl-sys 0.9.23 (registry+https://github.com/rust-lang/crates.io-index)",
"socket2 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -47,58 +47,115 @@ Use local openssl and openssl-sys crates patched for LibreSSL 2.6.3.
"libc 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
"libz-sys 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)",
- "openssl-sys 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl-sys 0.9.20 (registry+https://github.com/rust-lang/crates.io-index)",
++ "openssl-sys 0.9.23 (registry+https://github.com/rust-lang/crates.io-index)",
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
"vcpkg 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-@@ -318,7 +323,7 @@
+@@ -238,7 +243,7 @@
+ version = "0.8.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde_derive 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -291,10 +296,18 @@
+
+ [[package]]
+ name = "foreign-types"
+-version = "0.2.0"
++version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++dependencies = [
++ "foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++]
+
+ [[package]]
++name = "foreign-types-shared"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
+ name = "fs2"
+ version = "0.4.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -318,7 +331,7 @@
"libc 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
"libgit2-sys 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
"openssl-probe 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "openssl-sys 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl-sys 0.9.20 (registry+https://github.com/rust-lang/crates.io-index)",
++ "openssl-sys 0.9.23 (registry+https://github.com/rust-lang/crates.io-index)",
"url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
-@@ -445,7 +450,7 @@
+@@ -393,7 +406,7 @@
+ dependencies = [
+ "crossbeam 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "globset 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -426,10 +439,15 @@
+
+ [[package]]
+ name = "lazy_static"
+-version = "0.2.8"
++version = "0.2.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+
+ [[package]]
++name = "lazy_static"
++version = "1.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
++[[package]]
+ name = "libc"
+ version = "0.2.28"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -445,7 +463,7 @@
"libc 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
"libssh2-sys 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
"libz-sys 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)",
- "openssl-sys 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl-sys 0.9.20 (registry+https://github.com/rust-lang/crates.io-index)",
++ "openssl-sys 0.9.23 (registry+https://github.com/rust-lang/crates.io-index)",
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
]
-@@ -457,7 +462,7 @@
+@@ -457,7 +475,7 @@
"cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
"libz-sys 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)",
- "openssl-sys 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl-sys 0.9.20 (registry+https://github.com/rust-lang/crates.io-index)",
++ "openssl-sys 0.9.23 (registry+https://github.com/rust-lang/crates.io-index)",
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
]
-@@ -623,32 +628,43 @@
+@@ -623,32 +641,43 @@
[[package]]
name = "openssl"
-version = "0.9.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-+version = "0.9.20"
++version = "0.9.24"
dependencies = [
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "foreign-types 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "foreign-types 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "foreign-types 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
- "openssl-sys 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl-sys 0.9.20",
++ "openssl-sys 0.9.23",
]
[[package]]
+name = "openssl"
-+version = "0.9.20"
++version = "0.9.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
-+replace = "openssl 0.9.20"
++replace = "openssl 0.9.24"
+
+[[package]]
name = "openssl-probe"
@@ -109,7 +166,7 @@ Use local openssl and openssl-sys crates patched for LibreSSL 2.6.3.
name = "openssl-sys"
-version = "0.9.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-+version = "0.9.20"
++version = "0.9.23"
dependencies = [
- "gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cc 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -120,15 +177,24 @@ Use local openssl and openssl-sys crates patched for LibreSSL 2.6.3.
[[package]]
+name = "openssl-sys"
-+version = "0.9.20"
++version = "0.9.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
-+replace = "openssl-sys 0.9.20"
++replace = "openssl-sys 0.9.23"
+
+[[package]]
name = "percent-encoding"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-@@ -1013,6 +1029,7 @@
+@@ -888,7 +917,7 @@
+ version = "0.3.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
+ "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+
+@@ -1013,6 +1042,7 @@
"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d"
"checksum bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5"
"checksum bufstream 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "f2f382711e76b9de6c744cc00d0497baba02fb00a787f088c879f01d09468e32"
@@ -136,15 +202,35 @@ Use local openssl and openssl-sys crates patched for LibreSSL 2.6.3.
"checksum cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d4c819a1287eb618df47cc647173c5c4c66ba19d888a6e50d605672aed3140de"
"checksum cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b8ebbb35d3dc9cd09497168f33de1acb79b265d350ab0ac34133b98f8509af1f"
"checksum conv 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "78ff10625fd0ac447827aa30ea8b861fead473bb60aeb73af6c1c58caf0d1299"
-@@ -1067,9 +1084,9 @@
+@@ -1030,7 +1060,8 @@
+ "checksum filetime 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "5363ab8e4139b8568a6237db5248646e5a8a2f89bd5ccb02092182b11fd3e922"
+ "checksum flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)" = "36df0166e856739905cd3d7e0b210fe818592211a008862599845e012d8d304c"
+ "checksum fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6cc484842f1e2884faf56f529f960cc12ad8c71ce96cc7abba0a067c98fee344"
+-"checksum foreign-types 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3e4056b9bd47f8ac5ba12be771f77a0dae796d1bbaaf5fd0b9c2d38b69b8a29d"
++"checksum foreign-types 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a21b40436003b2a1e22483c5ed6c3d25e755b6b3120f601cc22aa57e25dc9065"
++"checksum foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+ "checksum fs2 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9ab76cfd2aaa59b7bf6688ad9ba15bbae64bff97f04ea02144cfd3443e5c2866"
+ "checksum gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)" = "120d07f202dcc3f72859422563522b66fe6463a4c513df062874daad05f85f0a"
+ "checksum git2 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "aa01936ac96555c083c0e8553f672616274408d9d3fc5b8696603fbf63ff43ee"
+@@ -1045,7 +1076,8 @@
+ "checksum itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eb2f404fbc66fd9aac13e998248505e7ecb2ad8e44ab6388684c5fb11c6c251c"
+ "checksum jobserver 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "443ae8bc0af6c106e6e8b77e04684faecc1a5ce94e058f4c2b0a037b0ea1b133"
+ "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
+-"checksum lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3b37545ab726dd833ec6420aaba8231c5b320814b9029ad585555d2a03e94fbf"
++"checksum lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73"
++"checksum lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c8f31047daa365f19be14b47c29df4f7c3b581832407daabe6ae77397619237d"
+ "checksum libc 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)" = "bb7b49972ee23d8aa1026c365a5b440ba08e35075f18c459980c7395c221ec48"
+ "checksum libgit2-sys 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)" = "df18a822100352d9863b302faf6f8f25c0e77f0e60feb40e5dbe1238b7f13b1d"
+ "checksum libssh2-sys 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0db4ec23611747ef772db1c4d650f8bd762f07b461727ec998f953c614024b75"
+@@ -1067,9 +1099,9 @@
"checksum num-rational 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "288629c76fac4b33556f4b7ab57ba21ae202da65ba8b77466e6d598e31990790"
"checksum num-traits 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "99843c856d68d8b4313b03a17e33c4bb42ae8f6610ea81b28abe076ac721b9b0"
"checksum num_cpus 1.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "aec53c34f2d0247c5ca5d32cca1478762f301740468ee9ee6dcb7a0dd7a0c584"
-"checksum openssl 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)" = "f776f1d8af832fd2c637ee182c801e8f7ea8895718a2be9914cca001f6e2c40a"
-+"checksum openssl 0.9.20 (registry+https://github.com/rust-lang/crates.io-index)" = "8bf434ff6117485dc16478d77a4f5c84eccc9c3645c4da8323b287ad6a15a638"
++"checksum openssl 0.9.24 (registry+https://github.com/rust-lang/crates.io-index)" = "a3605c298474a3aa69de92d21139fb5e2a81688d308262359d85cdd0d12a7985"
"checksum openssl-probe 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d98df0270d404ccd3c050a41d579c52d1db15375168bb3471e04ec0f5f378daf"
-"checksum openssl-sys 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)" = "ad95f8160d1c150c4f44d4c4959732e048ac046c37f597fe362f8bf57561ffb4"
-+"checksum openssl-sys 0.9.20 (registry+https://github.com/rust-lang/crates.io-index)" = "0ad395f1cee51b64a8d07cc8063498dc7554db62d5f3ca87a67f4eed2791d0c8"
++"checksum openssl-sys 0.9.23 (registry+https://github.com/rust-lang/crates.io-index)" = "2200ffec628e3f14c39fc0131a301db214f1a7d584e36507ee8700b0c7fb7a46"
"checksum percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de154f638187706bde41d9b4738748933d64e6b37bdbffc0b47a97d16a6ae356"
"checksum pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "3a8b4c6b8165cd1a1cd4b9b120978131389f64bdaf456435caa41e630edba903"
"checksum psapi-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "abcd5d1a07d360e29727f757a9decb3ce8bc6e0efa8969cfaad669a8317a2478"
diff --git a/community/cargo/tests-ignore-rustdoc.patch b/community/cargo/tests-ignore-rustdoc.patch
new file mode 100644
index 0000000000..8bd0a2f92d
--- /dev/null
+++ b/community/cargo/tests-ignore-rustdoc.patch
@@ -0,0 +1,31 @@
+These tests fail after upgrade to rust 1.23.0, most likely because of
+some changes in rustdoc.
+
+TODO: Remove this patch after upgrading cargo!
+
+--- a/tests/rustdoc.rs
++++ b/tests/rustdoc.rs
+@@ -28,6 +28,7 @@
+ }
+
+ #[test]
++#[ignore]
+ fn rustdoc_args() {
+ let p = project("foo")
+ .file("Cargo.toml", r#"
+@@ -54,6 +55,7 @@
+
+
+ #[test]
++#[ignore]
+ fn rustdoc_foo_with_bar_dependency() {
+ let foo = project("foo")
+ .file("Cargo.toml", r#"
+@@ -98,6 +100,7 @@
+ }
+
+ #[test]
++#[ignore]
+ fn rustdoc_only_bar_dependency() {
+ let foo = project("foo")
+ .file("Cargo.toml", r#"