Skip to content

Commit

Permalink
kapacitor: fix build of embedded libflux dependency with current rust
Browse files Browse the repository at this point in the history
The embedded `libflux` dependency of `kapacitor` fails to build with
more current rust tooling due to an unneeded `.clone()` call that
is promoted into an error message by a strict linting build config.

This introduces a patch that removes the offending method call.
The issue is already resolved upstream, but even the current `kapacitor`
version still depends on this specific version of `libflux` [1], and the
respective git commit contains a lot of other (automated) changes [2],
so cherry-picking the patch via a GitHub URL seems even more brittle.

[1]: https://github.com/influxdata/kapacitor/blob/v1.7.1/go.mod#L26
[2]: influxdata/flux@e7f7023#diff-96572e971d9e19b54290a434debbf7db054b21c9ce19035159542756ffb8ab87
  • Loading branch information
mfrischknecht committed Nov 26, 2023
1 parent b016575 commit 8e6e709
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 0 deletions.
10 changes: 10 additions & 0 deletions pkgs/servers/monitoring/kapacitor/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,16 @@ let
hash = "sha256-v9MUR+PcxAus91FiHYrMN9MbNOTWewh7MT6/t/QWQcM=";
};
patches = [
# This fixes a linting error due to an unneeded call to `.clone()`
# that gets enforced by a strict `deny(warnings)` build config.
# This is already fixed with newer versions of `libflux`, but it
# has been changed in a giant commit with a lot of autmated changes:
# https://github.com/influxdata/flux/commit/e7f7023848929e16ad5bd3b41d217847bd4fd72b#diff-96572e971d9e19b54290a434debbf7db054b21c9ce19035159542756ffb8ab87
#
# Can be removed as soon as kapacitor depends on a newer version of `libflux`, cf:
# https://github.com/influxdata/kapacitor/blob/v1.7.0/go.mod#L26
./fix-linting-error-on-unneeded-clone.patch

# https://github.com/influxdata/flux/pull/5273
# fix compile error with Rust 1.64
(fetchpatch {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/flux-core/src/semantic/flatbuffers/types.rs b/flux-core/src/semantic/flatbuffers/types.rs
index c3eecf06..9baf4070 100644
--- a/flux-core/src/semantic/flatbuffers/types.rs
+++ b/flux-core/src/semantic/flatbuffers/types.rs
@@ -715,7 +715,7 @@ mod tests {

fn test_serde(expr: &'static str) {
// let want = parser::parse(expr).unwrap();
- let mut p = parser::Parser::new(expr.clone());
+ let mut p = parser::Parser::new(expr);

let typ_expr = p.parse_type_expression();
if let Err(err) = ast::check::check(ast::walk::Node::TypeExpression(&typ_expr)) {

0 comments on commit 8e6e709

Please sign in to comment.