Merge pull request #319969 from magneticflux-/influxdb2-update
{influxdb, influxdb2}: update to fix build on Rust 1.78
This commit is contained in:
commit
e08c98222a
@ -1,9 +1,9 @@
|
||||
{ lib, buildGoModule, fetchFromGitHub, stdenv, pkg-config, rustPlatform, libiconv, fetchpatch, nixosTests }:
|
||||
|
||||
let
|
||||
libflux_version = "0.188.0";
|
||||
libflux_version = "0.194.5";
|
||||
|
||||
# This is copied from influxdb2 with flux version matching the needed by thi
|
||||
# This is copied from influxdb2 with the required flux version
|
||||
flux = rustPlatform.buildRustPackage rec {
|
||||
pname = "libflux";
|
||||
version = "v${libflux_version}";
|
||||
@ -11,21 +11,22 @@ let
|
||||
owner = "influxdata";
|
||||
repo = "flux";
|
||||
rev = "v${libflux_version}";
|
||||
hash = "sha256-4Z6Vfdyh0zimQlE47plSIjTWBYiju0Qu09M+MgMQOL4=";
|
||||
hash = "sha256-XHT/+JMu5q1cPjZT2x/OKEPgxFJcnjrQKqn8w9/Mb3s=";
|
||||
};
|
||||
patches = [
|
||||
# https://github.com/influxdata/flux/pull/5440
|
||||
# fix compile error with Rust 1.72.0
|
||||
# Fix build on Rust 1.78 (included after v0.195.0)
|
||||
(fetchpatch {
|
||||
url = "https://github.com/influxdata/flux/commit/8d1d6c8b485eb7e15b6a5f57762d1f766b17defd.patch";
|
||||
name = "fix-build-on-rust-1.78.patch";
|
||||
url = "https://github.com/influxdata/flux/commit/68c831c40b396f0274f6a9f97d77707c39970b02.patch";
|
||||
stripLen = 2;
|
||||
extraPrefix = "";
|
||||
hash = "sha256-BDBmGKsC2RWMyObDm7dPwFq/3cVIdBKF8ZVaCL+uftw=";
|
||||
includes = [ "flux/src/lib.rs" ];
|
||||
excludes = [ ];
|
||||
hash = "sha256-6LOTgbOCfETNTmshyXgtDZf9y4t/2iqRuVPkz9dYPHc=";
|
||||
})
|
||||
../influxdb2/fix-unsigned-char.patch
|
||||
];
|
||||
sourceRoot = "${src.name}/libflux";
|
||||
cargoHash = "sha256-925U9weBOvMuyApsTOjtQxik3nqT2UpK+DPM64opc7c=";
|
||||
cargoHash = "sha256-O+t4f4P5291BuyARH6Xf3LejMFEQEBv+qKtyjHRhclA=";
|
||||
nativeBuildInputs = [ rustPlatform.bindgenHook ];
|
||||
buildInputs = lib.optional stdenv.isDarwin libiconv;
|
||||
pkgcfg = ''
|
||||
@ -48,16 +49,16 @@ let
|
||||
in
|
||||
buildGoModule rec {
|
||||
pname = "influxdb";
|
||||
version = "1.10.5";
|
||||
version = "1.10.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "influxdata";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-FvKGNqy27q6/X2DI/joJXfGVrax6hQcNcx5nJDeSLm0=";
|
||||
hash = "sha256-Aibu3yG/D1501Hr2F2qsGvjig14tbEAI+MBfqbxlpg8=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-1jeZBVmNOxF5NPlTKg+YRw6VqIIZDcT3snnoMLX3y4g=";
|
||||
vendorHash = "sha256-AA6uj7PgXjC+IK2ZSwRnYpHS4MFScOROO1BpP+s33IU=";
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
|
@ -13,15 +13,15 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version = "2.7.1";
|
||||
ui_version = "OSS-v${version}";
|
||||
libflux_version = "0.193.0";
|
||||
version = "2.7.6";
|
||||
ui_version = "OSS-v2.7.1";
|
||||
libflux_version = "0.194.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "influxdata";
|
||||
repo = "influxdb";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-JWu4V2k8ItbzBa421EtzgMVlDznoDdGjIhfDSaZ0j6c=";
|
||||
hash = "sha256-0gqFUIV0ETdVuVmC+SwoKsO6OkoT/s+qKO1f8fkaZj4=";
|
||||
};
|
||||
|
||||
ui = fetchurl {
|
||||
@ -36,21 +36,22 @@ let
|
||||
owner = "influxdata";
|
||||
repo = "flux";
|
||||
rev = "v${libflux_version}";
|
||||
hash = "sha256-gx6vnGOFu35wasLl7X/73eDsE0/50cAzjmBjZ+H2Ne4=";
|
||||
hash = "sha256-XHT/+JMu5q1cPjZT2x/OKEPgxFJcnjrQKqn8w9/Mb3s=";
|
||||
};
|
||||
patches = [
|
||||
# Fix build with recent rust versions
|
||||
# Fix build on Rust 1.78 (included after v0.195.0)
|
||||
(fetchpatch {
|
||||
url = "https://github.com/influxdata/flux/commit/6dc8054cfeec4b65b5c7ae786d633240868b8589.patch";
|
||||
name = "fix-build-on-rust-1.78.patch";
|
||||
url = "https://github.com/influxdata/flux/commit/68c831c40b396f0274f6a9f97d77707c39970b02.patch";
|
||||
stripLen = 2;
|
||||
extraPrefix = "";
|
||||
excludes = [ "rust-toolchain.toml" ];
|
||||
hash = "sha256-w3z+Z26Xhy9TNICyNhc8XiWNSpdLA23ADI4K/AOMYhg=";
|
||||
excludes = [ ];
|
||||
hash = "sha256-6LOTgbOCfETNTmshyXgtDZf9y4t/2iqRuVPkz9dYPHc=";
|
||||
})
|
||||
./no-deny-warnings.patch
|
||||
./fix-unsigned-char.patch
|
||||
];
|
||||
sourceRoot = "${src.name}/libflux";
|
||||
cargoSha256 = "sha256-MoI5nxLGA/3pduZ+vgmSG3lm3Nx58SP+6WXQl2pX9Lc=";
|
||||
cargoHash = "sha256-O+t4f4P5291BuyARH6Xf3LejMFEQEBv+qKtyjHRhclA=";
|
||||
nativeBuildInputs = [ rustPlatform.bindgenHook ];
|
||||
buildInputs = lib.optional stdenv.isDarwin libiconv;
|
||||
pkgcfg = ''
|
||||
@ -78,7 +79,7 @@ in buildGoModule {
|
||||
|
||||
nativeBuildInputs = [ go-bindata pkg-config perl ];
|
||||
|
||||
vendorHash = "sha256-5b1WRq3JndkOkKBhMzGZnSyBDY5Lk0UGe/WGHQJp0CQ=";
|
||||
vendorHash = "sha256-3Vf8BCrOwliXrH+gmZ4RJ1YBEbqL0Szx2prW3ie9CNg=";
|
||||
subPackages = [ "cmd/influxd" "cmd/telemetryd" ];
|
||||
|
||||
PKG_CONFIG_PATH = "${flux}/pkgconfig";
|
||||
|
13
pkgs/servers/nosql/influxdb2/fix-unsigned-char.patch
Normal file
13
pkgs/servers/nosql/influxdb2/fix-unsigned-char.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/flux/src/cffi.rs b/flux/src/cffi.rs
|
||||
index ba18e3d5..0c1badf8 100644
|
||||
--- a/flux/src/cffi.rs
|
||||
+++ b/flux/src/cffi.rs
|
||||
@@ -1149,7 +1149,7 @@ from(bucket: v.bucket)
|
||||
fn parse_with_invalid_utf8() {
|
||||
let cfname = CString::new("foo.flux").unwrap();
|
||||
let cfname_ptr: *const c_char = cfname.as_ptr();
|
||||
- let v: Vec<c_char> = vec![-61, 0];
|
||||
+ let v: Vec<c_char> = vec![-61i8 as c_char, 0];
|
||||
let csrc: *const c_char = &v[0];
|
||||
// Safety: both pointers are valid
|
||||
let pkg = unsafe { flux_parse(cfname_ptr, csrc) };
|
@ -1,10 +0,0 @@
|
||||
diff --git a/flux/src/lib.rs b/flux/src/lib.rs
|
||||
index 3fdf4071..a4c02277 100644
|
||||
--- a/flux/src/lib.rs
|
||||
+++ b/flux/src/lib.rs
|
||||
@@ -1,5 +1,3 @@
|
||||
-#![cfg_attr(feature = "strict", deny(warnings, missing_docs))]
|
||||
-
|
||||
//! This module provides the public facing API for Flux's Go runtime, including formatting,
|
||||
//! parsing, and standard library analysis.
|
||||
use std::sync::Arc;
|
Loading…
Reference in New Issue
Block a user