diff options
author | neoninteger | 2020-03-12 21:46:34 +1030 |
---|---|---|
committer | neoninteger | 2020-03-12 21:46:34 +1030 |
commit | d127f1fec5e40683f186e680ca67c066799c45f6 (patch) | |
tree | 425cbb6c8837625e059ed1d7beabb1508ca91be8 | |
parent | 573594fba306b9c42bd6ddec1aa2334a6c68e941 (diff) | |
download | aur-d127f1fec5e40683f186e680ca67c066799c45f6.tar.gz |
Add patch to update url version
As Turtl's codebase continues to be left unmaintained, more and more build
issues appear with it due to changes in Rust. Like with rusqlite, recently the
url library started experiencing build issues with the current Rust compiler.
So I added another patch to update the url version from v1.6.0 to v1.7.2, which
appears to work around the issue. There's still an ever increasing amount of
build warnings, though all of the unit and integration tests still pass, so for
now, its probably okay.
I didn't update it to the latest version because, like with rusqlite, I was
worried about the possibility of API-breaking changes that would require
patching the source code to fix.
The long-term fix for this would of course be for me to actually learn Rust and
its packaging system, and then update all of the dependencies to the latest
versions (dealing with and fixing compiler errors/warnings as I go) and then
sending it as a pull request to the core-rs repository on GitHub.
But for now, this is really all I can do. :(
The pkgrel has been bumped to 5 for this change, as it results in a different
binary then previously.
-rw-r--r-- | .SRCINFO | 6 | ||||
-rw-r--r-- | PKGBUILD | 18 | ||||
-rw-r--r-- | rusqlite.patch | 60 | ||||
-rw-r--r-- | url.patch | 48 |
4 files changed, 120 insertions, 12 deletions
@@ -1,7 +1,7 @@ pkgbase = turtl-core-rs pkgdesc = Turtl's logic core, built in Rust pkgver = 0.1.2 - pkgrel = 4 + pkgrel = 5 url = https://github.com/turtl/core-rs arch = i686 arch = x86_64 @@ -14,10 +14,12 @@ pkgbase = turtl-core-rs source = config-client.yaml source = config-server.yaml source = rusqlite.patch + source = url.patch sha256sums = 71c1caf3aeb6245040abb0ee063b574dd6ece6314c60edabbe4299a11df49b68 sha256sums = 31791752feae4d5b0a19272bbb15df827bf67bb9df237e45431dc4b15b212c2e sha256sums = f3c974201d4d7b8bc00e51595cb0738d3772fd3bbd73624abc32536838465308 - sha256sums = cd784b2b1de7bb0dba4d92623a525fc970627fd60b44b41d6f2d8e520770fce4 + sha256sums = bbe83ed13302a40db4589966aad01539c1165327dc74ff999a32350fb3c05e92 + sha256sums = a5985c5a5af81e59a6caf8eb4046dc7a4f581b50abe0fce7cffb1b3a07bd0d94 pkgname = turtl-core-rs @@ -1,7 +1,7 @@ # Maintainer: Callum Parsey <neoninteger@protonmail.com> pkgname=turtl-core-rs pkgver=0.1.2 -pkgrel=4 +pkgrel=5 pkgdesc="Turtl's logic core, built in Rust" arch=("i686" "x86_64") url="https://github.com/turtl/core-rs" @@ -18,18 +18,28 @@ _commithash="774fa361d021d9ef5237d32d09515ab7b2a32ad2" source=("https://github.com/turtl/core-rs/archive/${_commithash}.tar.gz" "config-client.yaml" "config-server.yaml" - "rusqlite.patch") + "rusqlite.patch" + "url.patch") sha256sums=("71c1caf3aeb6245040abb0ee063b574dd6ece6314c60edabbe4299a11df49b68" "31791752feae4d5b0a19272bbb15df827bf67bb9df237e45431dc4b15b212c2e" "f3c974201d4d7b8bc00e51595cb0738d3772fd3bbd73624abc32536838465308" - "cd784b2b1de7bb0dba4d92623a525fc970627fd60b44b41d6f2d8e520770fce4") + "bbe83ed13302a40db4589966aad01539c1165327dc74ff999a32350fb3c05e92" + "a5985c5a5af81e59a6caf8eb4046dc7a4f581b50abe0fce7cffb1b3a07bd0d94") prepare() { - # This version of Turtl depends on an old version of rusqlite (v0.13.0) + # This version of core-rs depends on an old version of rusqlite (v0.13.0) # which can't be built on current versions of Rust. This patch updates the # version of rusqlite used to v0.14.0, the first release to contain the # fix that allows it to compile again. patch -Np0 -i rusqlite.patch + + # Same with url - it needs to be updated from v1.6.0 to v1.7.2 in order to + # fix build issues. For now, I chose not to go with the latest version due + # to the potential for API-breaking changes that would require actual + # patching on the core-rs source code. The correct fix would be for me to + # learn Rust, update all of the dependencies for core-rs and then send that + # as a pull request to its repository. + patch -Np0 -i url.patch } build() { diff --git a/rusqlite.patch b/rusqlite.patch index da04d114fae8..a05f042fe1ba 100644 --- a/rusqlite.patch +++ b/rusqlite.patch @@ -1,6 +1,54 @@ +diff -rupN core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/Cargo.lock core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2/Cargo.lock +--- core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/Cargo.lock 2020-03-12 18:58:45.235115772 +1030 ++++ core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2/Cargo.lock 2020-03-12 20:34:05.860148346 +1030 +@@ -105,7 +105,7 @@ name = "clouseau" + version = "0.1.0" + dependencies = [ + "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +- "rusqlite 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)", ++ "rusqlite 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + ] + + [[package]] +@@ -176,7 +176,7 @@ dependencies = [ + "jedi 0.1.0", + "libc 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)", + "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +- "rusqlite 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)", ++ "rusqlite 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.27 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", + ] +@@ -781,7 +781,7 @@ dependencies = [ + + [[package]] + name = "rusqlite" +-version = "0.13.0" ++version = "0.14.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + dependencies = [ + "bitflags 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", +@@ -1050,7 +1050,7 @@ dependencies = [ + "protected_derive 0.1.0", + "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 0.1.80 (registry+https://github.com/rust-lang/crates.io-index)", +- "rusqlite 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)", ++ "rusqlite 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.27 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.27 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", +@@ -1290,7 +1290,7 @@ dependencies = [ + "checksum regex 0.1.80 (registry+https://github.com/rust-lang/crates.io-index)" = "4fd4ace6a8cf7860714a2c2280d6c1f7e6a413486c13298bbc86fd3da019402f" + "checksum regex-syntax 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "f9ec002c35e86791825ed294b50008eea9ddfc8def4420124fbc6b08db834957" + "checksum remove_dir_all 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b5d2f806b0fcdabd98acd380dc8daef485e22bcb7cddc811d1337967f2528cf5" +-"checksum rusqlite 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d9409d78a5a9646685688266e1833df8f08b71ffcae1b5db6c1bfb5970d8a80f" ++"checksum rusqlite 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c9d9118f1ce84d8d0b67f9779936432fb42bb620cef2122409d786892cce9a3c" + "checksum rustc-demangle 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "76d7ba1feafada44f2d38eed812bd2489a03c0f5abb975799251518b68848649" + "checksum rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)" = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda" + "checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9" diff -rupN core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/Cargo.toml core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2/Cargo.toml ---- core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/Cargo.toml 2019-11-14 15:41:30.353803437 +1030 -+++ core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2/Cargo.toml 2019-11-14 12:42:07.004160374 +1030 +--- core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/Cargo.toml 2018-10-09 13:44:29.000000000 +1030 ++++ core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2/Cargo.toml 2020-03-12 20:33:49.308388783 +1030 @@ -45,7 +45,7 @@ num_cpus = "1.8.0" protected_derive = { path = "protected_derive" } quick-error = "1.2.2" @@ -11,8 +59,8 @@ diff -rupN core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/Cargo.toml core serde_derive = "1.0.8" serde_json = "1.0.2" diff -rupN core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/clouseau/Cargo.toml core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2/clouseau/Cargo.toml ---- core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/clouseau/Cargo.toml 2019-11-14 15:41:30.357136770 +1030 -+++ core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2/clouseau/Cargo.toml 2019-11-14 12:42:30.750826254 +1030 +--- core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/clouseau/Cargo.toml 2018-10-09 13:44:29.000000000 +1030 ++++ core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2/clouseau/Cargo.toml 2020-03-12 20:33:14.672420698 +1030 @@ -5,5 +5,5 @@ authors = ["Andrew Danger Lyon <orthecre [dependencies] @@ -21,8 +69,8 @@ diff -rupN core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/clouseau/Cargo. +rusqlite = "0.14.0" diff -rupN core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/dumpy/Cargo.toml core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2/dumpy/Cargo.toml ---- core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/dumpy/Cargo.toml 2019-11-14 15:41:30.357136770 +1030 -+++ core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2/dumpy/Cargo.toml 2019-11-14 12:42:57.057492048 +1030 +--- core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/dumpy/Cargo.toml 2018-10-09 13:44:29.000000000 +1030 ++++ core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2/dumpy/Cargo.toml 2020-03-12 20:33:29.377228920 +1030 @@ -6,7 +6,7 @@ authors = ["Andrew Danger Lyon <orthecre [dependencies] jedi = { path = "../jedi" } diff --git a/url.patch b/url.patch new file mode 100644 index 000000000000..5e2d55e3c609 --- /dev/null +++ b/url.patch @@ -0,0 +1,48 @@ +diff -rupN core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/Cargo.lock core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2/Cargo.lock +--- core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2.orig/Cargo.lock 2020-03-12 18:53:30.468974004 +1030 ++++ core-rs-774fa361d021d9ef5237d32d09515ab7b2a32ad2/Cargo.lock 2020-03-12 18:58:45.235115772 +1030 +@@ -95,7 +97,7 @@ dependencies = [ + "serde 1.0.27 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.27 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_yaml 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", +- "url 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)", ++ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", + ] + + [[package]] +@@ -132,7 +134,7 @@ dependencies = [ + "openssl 0.7.14 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", +- "url 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)", ++ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", + ] + + [[package]] +@@ -387,7 +389,7 @@ dependencies = [ + "traitobject 0.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "typeable 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", +- "url 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)", ++ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", + ] + + [[package]] +@@ -1097,7 +1099,7 @@ dependencies = [ + + [[package]] + name = "url" +-version = "1.6.0" ++version = "1.7.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + dependencies = [ + "idna 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", +@@ -1320,7 +1322,7 @@ dependencies = [ + "checksum unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "51ccda9ef9efa3f7ef5d91e8f9b83bbe6955f9bf86aec89d5cce2c874625920f" + "checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc" + "checksum unreachable 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1f2ae5ddb18e1c92664717616dd9549dde73f539f01bd7b77c2edb2446bdff91" +-"checksum url 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fa35e768d4daf1d85733418a49fb42e10d7f633e394fccab4ab7aba897053fe2" ++"checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" + "checksum user32-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4ef4711d107b21b410a3a974b1204d9accc8b10dad75d8324b5d755de1617d47" + "checksum utf-8 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a9aee9ba280438b56d1ebc5329f2094f0ff457f811eeeff0b278d75aa99db400" + "checksum utf8-ranges 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a1ca13c08c41c9c3e04224ed9ff80461d97e121589ff27c753a16cb10830ae0f" |