Running phase: unpackPhase unpacking source archive /nix/store/dyq8rcqb3y33yzng7wafxas1m3s0hhz1-source source root is source Running phase: patchPhase Running phase: updateAutotoolsGnuConfigScriptsPhase Running phase: configurePhase mesonConfigurePhase flags: --prefix=/nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4 --libdir=/nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/lib --libexecdir=/nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/libexec --bindir=/nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/bin --sbindir=/nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/sbin --includedir=/nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/include --mandir=/nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/share/man --infodir=/nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/share/info --localedir=/nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/share/locale -Dauto_features=enabled -Dwrap_mode=nodownload --buildtype=plain -Db_pch=false The Meson build system Version: 1.10.2 Source dir: /nix/var/nix/builds/nix-46934-3544683814/source Build dir: /nix/var/nix/builds/nix-46934-3544683814/source/build Build type: native build WARNING: Project does not target a minimum version but uses feature introduced in '1.1': meson.options file. Use meson_options.txt instead Project name: nix-grpc-store Project version: 0.1.0-beta.4 C++ compiler for the host machine: clang++ (clang 22.1.8 "clang version 22.1.8") C++ linker for the host machine: clang++ ld64 956.6 Host machine cpu family: aarch64 Host machine cpu: aarch64 Found pkg-config: YES (/nix/store/kd2x1bj3gwfh2hb69fk5ym043h2qavxc-pkg-config-wrapper-0.29.2/bin/pkg-config) 0.29.2 Run-time dependency grpc++ found: YES 1.83.0 Run-time dependency protobuf found: YES 36.1.0 Run-time dependency libzstd found: YES 1.5.7 Run-time dependency threads found: YES Run-time dependency libcrypto found: YES 3.6.4 Run-time dependency prometheus-cpp-core found: YES 1.3.0 Run-time dependency prometheus-cpp-pull found: YES 1.3.0 Run-time dependency absl_flat_hash_map found: YES 20260107 Run-time dependency absl_hash found: YES 20260107 Run-time dependency absl_synchronization found: YES 20260107 Compiler for C++ supports arguments -Werror=thread-safety: YES Run-time dependency jemalloc found: YES 5.3.1_0 Run-time dependency nix-store found: YES 2.36.0pre20260920_5711f8fe Run-time dependency nix-util found: YES 2.36.0pre20260920_5711f8fe Run-time dependency libcurl found: YES 8.22.0 Run-time dependency nlohmann_json found: YES 3.12.0 Check usable header "jwt-cpp/traits/nlohmann-json/defaults.h" : YES Program protoc found: YES (/nix/store/r1npr0vx8d17c0fhh9gvg9mpaiphn62a-protobuf-36.1/bin/protoc) Program grpc_cpp_plugin found: YES (/nix/store/0mm81ldgq4ssz7gnh8589gx9zfcxpdhq-grpc-1.83.0/bin/grpc_cpp_plugin) Run-time dependency dl found: YES Program tests/farm-client-test.sh found: YES (/nix/var/nix/builds/nix-46934-3544683814/source/tests/farm-client-test.sh) Program tests/oidc-test.sh found: YES (/nix/var/nix/builds/nix-46934-3544683814/source/tests/oidc-test.sh) Build targets in project: 13 WARNING: Project specifies no minimum version but uses features which were added in versions: * 1.1: {'meson.options file'} nix-grpc-store 0.1.0-beta.4 User defined options auto_features: enabled b_pch : false bindir : /nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/bin buildtype : plain includedir : /nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/include infodir : /nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/share/info libdir : /nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/lib libexecdir : /nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/libexec localedir : /nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/share/locale mandir : /nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/share/man prefix : /nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4 sbindir : /nix/store/7569wpihl3vmc7zl983c4r4an44zmp13-nix-grpc-store-clang-tidy-0.1.0-beta.4/sbin wrap_mode : nodownload Found ninja-1.13.2 at /nix/store/kalf64hrn0zrxlacfvgymwbck77qvsr9-ninja-1.13.2/bin/ninja mesonConfigurePhase: enabled\ parallel\ building Running phase: buildPhase [2/2] Generating nix_remote_proto with a custom command [0/1] /nix/store/j2s018h6gc2q0z3sw002br2zas3m1l9d-meson-1.10.2/bin/meson --internal clangtidy /nix/var/nix/builds/nix-46934-3544683814/source /nix/var/nix/builds/nix-46934-3544683814/source/build --color always >>> /nix/store/l8sbl3yky84xqxj3a5hazrjdx52avnf2-clang-tools-22.1.8/bin/clang-tidy --use-color -quiet -p /nix/var/nix/builds/nix-46934-3544683814/source/build /nix/var/nix/builds/nix-46934-3544683814/source/tests/log-spill-test.cc Error while processing /nix/var/nix/builds/nix-46934-3544683814/source/tests/log-spill-test.cc. ../src/daemon/log-spill.hh:25:7: error: class 'LogSpill' defines a non-default destructor, a copy constructor and a copy assignment operator but does not define a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions,-warnings-as-errors] 25 | class LogSpill | ^ ../src/daemon/log-spill.hh:38:24: error: variable name 'fd' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 38 | if (auto const fd = fd_.load(); fd >= 0) { | ^ ../src/daemon/log-spill.hh:51:20: error: variable name 'at' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 51 | auto const at = written_.load(std::memory_order_relaxed); | ^ ../src/daemon/log-spill.hh:61:15: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors] 61 | record[0] = static_cast(kind); | ^~~ ../src/daemon/log-spill.hh:63:35: error: do not use pointer arithmetic [cppcoreguidelines-pro-bounds-pointer-arithmetic,-warnings-as-errors] 63 | std::memcpy(record.data() + 1, &len, sizeof len); | ^ ../src/daemon/log-spill.hh:78:37: error: forwarding reference parameter 'fn' is never forwarded inside the function body [cppcoreguidelines-missing-std-forward,-warnings-as-errors] 78 | auto drain(size_t offset, Fn && fn) const -> size_t | ^ ../src/daemon/log-spill.hh:78:37: error: parameter name 'fn' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] ../src/daemon/log-spill.hh:81:20: error: variable name 'fd' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 81 | auto const fd = fd_.load(); | ^ ../src/daemon/log-spill.hh:84:13: error: do not declare C-style arrays, use 'std::array' instead [cppcoreguidelines-avoid-c-arrays,modernize-avoid-c-arrays,-warnings-as-errors] 84 | char header[kHeader]; | ^~~~~~~~~~~~~~~~~~~~ ../src/daemon/log-spill.hh:85:30: error: do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead [cppcoreguidelines-pro-bounds-array-to-pointer-decay,-warnings-as-errors] 85 | if (!readAll(fd, header, kHeader, offset)) { | ^ ../src/daemon/log-spill.hh:89:31: error: do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead [cppcoreguidelines-pro-bounds-array-to-pointer-decay,-warnings-as-errors] 89 | std::memcpy(&len, header + 1, sizeof len); | ^ ../src/daemon/log-spill.hh:89:38: error: do not use pointer arithmetic [cppcoreguidelines-pro-bounds-pointer-arithmetic,-warnings-as-errors] 89 | std::memcpy(&len, header + 1, sizeof len); | ^ ../src/daemon/log-spill.hh:110:28: error: function is not thread safe [concurrency-mt-unsafe,-warnings-as-errors] 110 | auto const * env = std::getenv("TMPDIR"); | ^ ../src/daemon/log-spill.hh:112:14: error: variable name 'fd' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 112 | auto fd = ::open(dir.c_str(), O_TMPFILE | O_RDWR | O_CLOEXEC, 0600); | ^ ../src/daemon/log-spill.hh:112:39: error: use of undeclared identifier 'O_TMPFILE' [clang-diagnostic-error] 112 | auto fd = ::open(dir.c_str(), O_TMPFILE | O_RDWR | O_CLOEXEC, 0600); | ^~~~~~~~~ ../src/daemon/log-spill.hh:112:71: error: 0600 is a magic number; consider replacing it with a named constant [cppcoreguidelines-avoid-magic-numbers,readability-magic-numbers,-warnings-as-errors] 112 | auto fd = ::open(dir.c_str(), O_TMPFILE | O_RDWR | O_CLOEXEC, 0600); | ^ ../src/daemon/log-spill.hh:132:24: error: variable name 'n' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 132 | auto const n = ::pwrite(fd_.load(), data.data() + done, data.size() - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:132:61: error: do not use pointer arithmetic [cppcoreguidelines-pro-bounds-pointer-arithmetic,-warnings-as-errors] 132 | auto const n = ::pwrite(fd_.load(), data.data() + done, data.size() - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:132:89: error: either cast from 'size_t' (aka 'unsigned long') to 'off_t' (aka 'long long') is ineffective, or there is loss of precision before the conversion [bugprone-misplaced-widening-cast,-warnings-as-errors] 132 | auto const n = ::pwrite(fd_.load(), data.data() + done, data.size() - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:144:29: error: parameter name 'fd' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 144 | static auto readAll(int fd, char * buf, size_t len, size_t offset) -> bool | ^ ../src/daemon/log-spill.hh:148:24: error: variable name 'n' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 148 | auto const n = ::pread(fd, buf + done, len - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:148:44: error: do not use pointer arithmetic [cppcoreguidelines-pro-bounds-pointer-arithmetic,-warnings-as-errors] 148 | auto const n = ::pread(fd, buf + done, len - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:148:64: error: either cast from 'size_t' (aka 'unsigned long') to 'off_t' (aka 'long long') is ineffective, or there is loss of precision before the conversion [bugprone-misplaced-widening-cast,-warnings-as-errors] 148 | auto const n = ::pread(fd, buf + done, len - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:175:31: error: parameter name 'cv' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 175 | std::condition_variable & cv, | ^ ../src/daemon/log-spill.hh:178:18: error: forwarding reference parameter 'cancelled' is never forwarded inside the function body [cppcoreguidelines-missing-std-forward,-warnings-as-errors] 178 | Cancelled && cancelled, | ^ ../src/daemon/log-spill.hh:179:13: error: forwarding reference parameter 'emit' is never forwarded inside the function body [cppcoreguidelines-missing-std-forward,-warnings-as-errors] 179 | Emit && emit) -> bool | ^ ../src/daemon/log-spill.hh:195:16: error: 'wait_for' should be placed inside a while statement or used with a conditional parameter [bugprone-spuriously-wake-up-functions,cert-con36-c,cert-con54-cpp,-warnings-as-errors] 195 | cv.wait_for(lock, poll); | ^ ../tests/log-spill-test.cc:1:1: error: included header atomic is not used directly [misc-include-cleaner,-warnings-as-errors] 1 | #include | ^~~~~~~~~~~~~~~~~ 2 | #include ../tests/log-spill-test.cc:16:13: error: function 'readAll' declared 'static', move to anonymous namespace instead [misc-use-anonymous-namespace,-warnings-as-errors] 16 | static auto readAll(const LogSpill & spill) -> Records | ^ ../tests/log-spill-test.cc:19:24: error: no header providing "uint8_t" is directly included [misc-include-cleaner,-warnings-as-errors] 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include 10 | 11 | #include "log-spill.hh" 12 | 13 | using nixgrpc::LogSpill; 14 | using Records = std::vector>; 15 | 16 | static auto readAll(const LogSpill & spill) -> Records 17 | { 18 | Records out; 19 | spill.drain(0, [&](uint8_t kind, std::string_view text) -> void { out.emplace_back(kind, std::string(text)); }); | ^ ../tests/log-spill-test.cc:19:43: error: no header providing "std::string_view" is directly included [misc-include-cleaner,-warnings-as-errors] 7 | #include 8 | #include 9 | #include 10 | 11 | #include "log-spill.hh" 12 | 13 | using nixgrpc::LogSpill; 14 | using Records = std::vector>; 15 | 16 | static auto readAll(const LogSpill & spill) -> Records 17 | { 18 | Records out; 19 | spill.drain(0, [&](uint8_t kind, std::string_view text) -> void { out.emplace_back(kind, std::string(text)); }); | ^ ../tests/log-spill-test.cc:23:13: error: function 'follow' declared 'static', move to anonymous namespace instead [misc-use-anonymous-namespace,-warnings-as-errors] 23 | static auto follow(LogSpill & spill, std::mutex & mutex, std::condition_variable & cv, const bool & finished) -> Records | ^ ../tests/log-spill-test.cc:23:84: error: parameter name 'cv' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 23 | static auto follow(LogSpill & spill, std::mutex & mutex, std::condition_variable & cv, const bool & finished) -> Records | ^ ../tests/log-spill-test.cc:33:6: error: an exception may be thrown in function 'main' which should not throw exceptions [bugprone-exception-escape,-warnings-as-errors] 33 | auto main() -> int | ^ /nix/store/9z187ss3liak3pngakax2ip7nb1dc7z5-libcxx-21.1.6+apple-sdk-26.5/include/c++/v1/stdexcept:256:3: note: frame #0: unhandled exception of type 'out_of_range' may be thrown in function '__throw_out_of_range' here 256 | throw out_of_range(__msg); | ^ /nix/store/9z187ss3liak3pngakax2ip7nb1dc7z5-libcxx-21.1.6+apple-sdk-26.5/include/c++/v1/string_view:464:30: note: frame #1: function 'substr' calls function '__throw_out_of_range' here 464 | return __pos > size() ? (__throw_out_of_range("string_view::substr"), basic_string_view()) | ^ ../src/daemon/log-spill.hh:50:16: note: frame #2: function 'append' calls function 'substr' here 50 | text = text.substr(0, kMaxText); | ^ ../tests/log-spill-test.cc:38:9: note: frame #3: function 'main' calls function 'append' here 38 | spill.append(0, "first"); | ^ ../tests/log-spill-test.cc:41:37: error: 300000 is a magic number; consider replacing it with a named constant [cppcoreguidelines-avoid-magic-numbers,readability-magic-numbers,-warnings-as-errors] 41 | spill.append(0, std::string(300000, 'x')); | ^ ../tests/log-spill-test.cc:44:19: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors] 44 | assert(got[0] == std::make_pair(0, std::string("first"))); | ^ /nix/store/rq88pmfxfl98jhzfhb46jvl0rl8nyd6g-apple-sdk-14.4/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/assert.h:99:25: note: expanded from macro 'assert' 99 | (__builtin_expect(!(e), 0) ? __assert_rtn(__func__, __ASSERT_FILE_NAME, __LINE__, #e) : (void)0) | ^ ../tests/log-spill-test.cc:45:19: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors] 45 | assert(got[1] == std::make_pair(1, std::string("build"))); | ^ /nix/store/rq88pmfxfl98jhzfhb46jvl0rl8nyd6g-apple-sdk-14.4/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/assert.h:99:25: note: expanded from macro 'assert' 99 | (__builtin_expect(!(e), 0) ? __assert_rtn(__func__, __ASSERT_FILE_NAME, __LINE__, #e) : (void)0) | ^ ../tests/log-spill-test.cc:46:19: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors] 46 | assert(got[2].second.empty()); | ^ /nix/store/rq88pmfxfl98jhzfhb46jvl0rl8nyd6g-apple-sdk-14.4/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/assert.h:99:25: note: expanded from macro 'assert' 99 | (__builtin_expect(!(e), 0) ? __assert_rtn(__func__, __ASSERT_FILE_NAME, __LINE__, #e) : (void)0) | ^ ../tests/log-spill-test.cc:47:19: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors] 47 | assert(got[3].second.size() == 300000); | ^ /nix/store/rq88pmfxfl98jhzfhb46jvl0rl8nyd6g-apple-sdk-14.4/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/assert.h:99:25: note: expanded from macro 'assert' 99 | (__builtin_expect(!(e), 0) ? __assert_rtn(__func__, __ASSERT_FILE_NAME, __LINE__, #e) : (void)0) | ^ ../tests/log-spill-test.cc:54:40: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors] 54 | assert(rest.size() == 1 && rest[0].second == "later"); | ^ /nix/store/rq88pmfxfl98jhzfhb46jvl0rl8nyd6g-apple-sdk-14.4/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/assert.h:99:25: note: expanded from macro 'assert' 99 | (__builtin_expect(!(e), 0) ? __assert_rtn(__func__, __ASSERT_FILE_NAME, __LINE__, #e) : (void)0) | ^ ../tests/log-spill-test.cc:59:24: error: 64 is a magic number; consider replacing it with a named constant [cppcoreguidelines-avoid-magic-numbers,readability-magic-numbers,-warnings-as-errors] 59 | LogSpill spill(64); | ^ ../tests/log-spill-test.cc:60:29: error: 50 is a magic number; consider replacing it with a named constant [cppcoreguidelines-avoid-magic-numbers,readability-magic-numbers,-warnings-as-errors] 60 | for (int i = 0; i < 50; i++) { | ^ ../tests/log-spill-test.cc:75:33: error: variable name 'cv' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 75 | std::condition_variable cv; | ^ ../tests/log-spill-test.cc:80:21: error: variable name 't1' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 80 | std::thread t1([&] { early = follow(spill, mutex, cv, finished); }); | ^ ../tests/log-spill-test.cc:80:24: error: use a trailing return type for this lambda [modernize-use-trailing-return-type,-warnings-as-errors] 80 | std::thread t1([&] { early = follow(spill, mutex, cv, finished); }); | ^ | -> void ../tests/log-spill-test.cc:81:27: error: use a trailing return type for this lambda [modernize-use-trailing-return-type,-warnings-as-errors] 81 | std::thread owner([&] { | ^ | -> void ../tests/log-spill-test.cc:91:34: error: 1000 is a magic number; consider replacing it with a named constant [cppcoreguidelines-avoid-magic-numbers,readability-magic-numbers,-warnings-as-errors] 91 | while (spill.written() < 1000) { | ^ ../tests/log-spill-test.cc:94:21: error: variable name 't2' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 94 | std::thread t2([&] { late = follow(spill, mutex, cv, finished); }); | ^ ../tests/log-spill-test.cc:94:24: error: use a trailing return type for this lambda [modernize-use-trailing-return-type,-warnings-as-errors] 94 | std::thread t2([&] { late = follow(spill, mutex, cv, finished); }); | ^ | -> void ../tests/log-spill-test.cc:101:30: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors] 101 | assert((*got)[static_cast(i)].second == "line " + std::to_string(i)); | ^ /nix/store/rq88pmfxfl98jhzfhb46jvl0rl8nyd6g-apple-sdk-14.4/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/assert.h:99:25: note: expanded from macro 'assert' 99 | (__builtin_expect(!(e), 0) ? __assert_rtn(__func__, __ASSERT_FILE_NAME, __LINE__, #e) : (void)0) | ^ ../tests/log-spill-test.cc:101:43: error: no header providing "size_t" is directly included [misc-include-cleaner,-warnings-as-errors] 5 | assert((*got)[static_cast(i)].second == "line " + std::to_string(i)); | ^ ../tests/log-spill-test.cc:110:33: error: variable name 'cv' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 110 | std::condition_variable cv; | ^ >>> /nix/store/l8sbl3yky84xqxj3a5hazrjdx52avnf2-clang-tools-22.1.8/bin/clang-tidy --use-color -quiet -p /nix/var/nix/builds/nix-46934-3544683814/source/build /nix/var/nix/builds/nix-46934-3544683814/source/src/client/channel.cc [1/1] (1/2) Processing file /nix/var/nix/builds/nix-46934-3544683814/source/src/client/channel.cc. [1/1] (2/2) Processing file /nix/var/nix/builds/nix-46934-3544683814/source/src/client/channel.cc. >>> /nix/store/l8sbl3yky84xqxj3a5hazrjdx52avnf2-clang-tools-22.1.8/bin/clang-tidy --use-color -quiet -p /nix/var/nix/builds/nix-46934-3544683814/source/build /nix/var/nix/builds/nix-46934-3544683814/source/src/daemon/main.cc Error while processing /nix/var/nix/builds/nix-46934-3544683814/source/src/daemon/main.cc. ../src/daemon/log-spill.hh:25:7: error: class 'LogSpill' defines a non-default destructor, a copy constructor and a copy assignment operator but does not define a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions,-warnings-as-errors] 25 | class LogSpill | ^ ../src/daemon/log-spill.hh:38:24: error: variable name 'fd' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 38 | if (auto const fd = fd_.load(); fd >= 0) { | ^ ../src/daemon/log-spill.hh:51:20: error: variable name 'at' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 51 | auto const at = written_.load(std::memory_order_relaxed); | ^ ../src/daemon/log-spill.hh:61:15: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors] 61 | record[0] = static_cast(kind); | ^~~ ../src/daemon/log-spill.hh:63:35: error: do not use pointer arithmetic [cppcoreguidelines-pro-bounds-pointer-arithmetic,-warnings-as-errors] 63 | std::memcpy(record.data() + 1, &len, sizeof len); | ^ ../src/daemon/log-spill.hh:78:37: error: forwarding reference parameter 'fn' is never forwarded inside the function body [cppcoreguidelines-missing-std-forward,-warnings-as-errors] 78 | auto drain(size_t offset, Fn && fn) const -> size_t | ^ ../src/daemon/log-spill.hh:78:37: error: parameter name 'fn' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] ../src/daemon/log-spill.hh:81:20: error: variable name 'fd' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 81 | auto const fd = fd_.load(); | ^ ../src/daemon/log-spill.hh:84:13: error: do not declare C-style arrays, use 'std::array' instead [cppcoreguidelines-avoid-c-arrays,modernize-avoid-c-arrays,-warnings-as-errors] 84 | char header[kHeader]; | ^~~~~~~~~~~~~~~~~~~~ ../src/daemon/log-spill.hh:85:30: error: do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead [cppcoreguidelines-pro-bounds-array-to-pointer-decay,-warnings-as-errors] 85 | if (!readAll(fd, header, kHeader, offset)) { | ^ ../src/daemon/log-spill.hh:89:31: error: do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead [cppcoreguidelines-pro-bounds-array-to-pointer-decay,-warnings-as-errors] 89 | std::memcpy(&len, header + 1, sizeof len); | ^ ../src/daemon/log-spill.hh:89:38: error: do not use pointer arithmetic [cppcoreguidelines-pro-bounds-pointer-arithmetic,-warnings-as-errors] 89 | std::memcpy(&len, header + 1, sizeof len); | ^ ../src/daemon/log-spill.hh:110:28: error: function is not thread safe [concurrency-mt-unsafe,-warnings-as-errors] 110 | auto const * env = std::getenv("TMPDIR"); | ^ ../src/daemon/log-spill.hh:112:14: error: variable name 'fd' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 112 | auto fd = ::open(dir.c_str(), O_TMPFILE | O_RDWR | O_CLOEXEC, 0600); | ^ ../src/daemon/log-spill.hh:112:39: error: use of undeclared identifier 'O_TMPFILE' [clang-diagnostic-error] 112 | auto fd = ::open(dir.c_str(), O_TMPFILE | O_RDWR | O_CLOEXEC, 0600); | ^~~~~~~~~ ../src/daemon/log-spill.hh:112:71: error: 0600 is a magic number; consider replacing it with a named constant [cppcoreguidelines-avoid-magic-numbers,readability-magic-numbers,-warnings-as-errors] 112 | auto fd = ::open(dir.c_str(), O_TMPFILE | O_RDWR | O_CLOEXEC, 0600); | ^ ../src/daemon/log-spill.hh:132:24: error: variable name 'n' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 132 | auto const n = ::pwrite(fd_.load(), data.data() + done, data.size() - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:132:61: error: do not use pointer arithmetic [cppcoreguidelines-pro-bounds-pointer-arithmetic,-warnings-as-errors] 132 | auto const n = ::pwrite(fd_.load(), data.data() + done, data.size() - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:132:89: error: either cast from 'size_t' (aka 'unsigned long') to 'off_t' (aka 'long long') is ineffective, or there is loss of precision before the conversion [bugprone-misplaced-widening-cast,-warnings-as-errors] 132 | auto const n = ::pwrite(fd_.load(), data.data() + done, data.size() - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:144:29: error: parameter name 'fd' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 144 | static auto readAll(int fd, char * buf, size_t len, size_t offset) -> bool | ^ ../src/daemon/log-spill.hh:148:24: error: variable name 'n' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 148 | auto const n = ::pread(fd, buf + done, len - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:148:44: error: do not use pointer arithmetic [cppcoreguidelines-pro-bounds-pointer-arithmetic,-warnings-as-errors] 148 | auto const n = ::pread(fd, buf + done, len - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:148:64: error: either cast from 'size_t' (aka 'unsigned long') to 'off_t' (aka 'long long') is ineffective, or there is loss of precision before the conversion [bugprone-misplaced-widening-cast,-warnings-as-errors] 148 | auto const n = ::pread(fd, buf + done, len - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:175:31: error: parameter name 'cv' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 175 | std::condition_variable & cv, | ^ ../src/daemon/log-spill.hh:178:18: error: forwarding reference parameter 'cancelled' is never forwarded inside the function body [cppcoreguidelines-missing-std-forward,-warnings-as-errors] 178 | Cancelled && cancelled, | ^ ../src/daemon/log-spill.hh:179:13: error: forwarding reference parameter 'emit' is never forwarded inside the function body [cppcoreguidelines-missing-std-forward,-warnings-as-errors] 179 | Emit && emit) -> bool | ^ ../src/daemon/log-spill.hh:195:16: error: 'wait_for' should be placed inside a while statement or used with a conditional parameter [bugprone-spuriously-wake-up-functions,cert-con36-c,cert-con54-cpp,-warnings-as-errors] 195 | cv.wait_for(lock, poll); | ^ ../src/daemon/main.cc:504:41: error: no header providing "nixgrpc::followSpill" is directly included [misc-include-cleaner,-warnings-as-errors] 71 | auto const completed = nixgrpc::followSpill( | ^ >>> /nix/store/l8sbl3yky84xqxj3a5hazrjdx52avnf2-clang-tools-22.1.8/bin/clang-tidy --use-color -quiet -p /nix/var/nix/builds/nix-46934-3544683814/source/build /nix/var/nix/builds/nix-46934-3544683814/source/src/daemon/coordinator.cc Errors encountered while running clang-tidy Error while processing /nix/var/nix/builds/nix-46934-3544683814/source/src/daemon/coordinator.cc. ../src/daemon/log-spill.hh:25:7: error: class 'LogSpill' defines a non-default destructor, a copy constructor and a copy assignment operator but does not define a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions,-warnings-as-errors] 25 | class LogSpill | ^ ../src/daemon/log-spill.hh:38:24: error: variable name 'fd' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 38 | if (auto const fd = fd_.load(); fd >= 0) { | ^ ../src/daemon/log-spill.hh:51:20: error: variable name 'at' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 51 | auto const at = written_.load(std::memory_order_relaxed); | ^ ../src/daemon/log-spill.hh:61:15: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors] 61 | record[0] = static_cast(kind); | ^~~ ../src/daemon/log-spill.hh:63:35: error: do not use pointer arithmetic [cppcoreguidelines-pro-bounds-pointer-arithmetic,-warnings-as-errors] 63 | std::memcpy(record.data() + 1, &len, sizeof len); | ^ ../src/daemon/log-spill.hh:78:37: error: forwarding reference parameter 'fn' is never forwarded inside the function body [cppcoreguidelines-missing-std-forward,-warnings-as-errors] 78 | auto drain(size_t offset, Fn && fn) const -> size_t | ^ ../src/daemon/log-spill.hh:78:37: error: parameter name 'fn' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] ../src/daemon/log-spill.hh:81:20: error: variable name 'fd' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 81 | auto const fd = fd_.load(); | ^ ../src/daemon/log-spill.hh:84:13: error: do not declare C-style arrays, use 'std::array' instead [cppcoreguidelines-avoid-c-arrays,modernize-avoid-c-arrays,-warnings-as-errors] 84 | char header[kHeader]; | ^~~~~~~~~~~~~~~~~~~~ ../src/daemon/log-spill.hh:85:30: error: do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead [cppcoreguidelines-pro-bounds-array-to-pointer-decay,-warnings-as-errors] 85 | if (!readAll(fd, header, kHeader, offset)) { | ^ ../src/daemon/log-spill.hh:89:31: error: do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead [cppcoreguidelines-pro-bounds-array-to-pointer-decay,-warnings-as-errors] 89 | std::memcpy(&len, header + 1, sizeof len); | ^ ../src/daemon/log-spill.hh:89:38: error: do not use pointer arithmetic [cppcoreguidelines-pro-bounds-pointer-arithmetic,-warnings-as-errors] 89 | std::memcpy(&len, header + 1, sizeof len); | ^ ../src/daemon/log-spill.hh:110:28: error: function is not thread safe [concurrency-mt-unsafe,-warnings-as-errors] 110 | auto const * env = std::getenv("TMPDIR"); | ^ ../src/daemon/log-spill.hh:112:14: error: variable name 'fd' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 112 | auto fd = ::open(dir.c_str(), O_TMPFILE | O_RDWR | O_CLOEXEC, 0600); | ^ ../src/daemon/log-spill.hh:112:39: error: use of undeclared identifier 'O_TMPFILE' [clang-diagnostic-error] 112 | auto fd = ::open(dir.c_str(), O_TMPFILE | O_RDWR | O_CLOEXEC, 0600); | ^~~~~~~~~ ../src/daemon/log-spill.hh:112:71: error: 0600 is a magic number; consider replacing it with a named constant [cppcoreguidelines-avoid-magic-numbers,readability-magic-numbers,-warnings-as-errors] 112 | auto fd = ::open(dir.c_str(), O_TMPFILE | O_RDWR | O_CLOEXEC, 0600); | ^ ../src/daemon/log-spill.hh:132:24: error: variable name 'n' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 132 | auto const n = ::pwrite(fd_.load(), data.data() + done, data.size() - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:132:61: error: do not use pointer arithmetic [cppcoreguidelines-pro-bounds-pointer-arithmetic,-warnings-as-errors] 132 | auto const n = ::pwrite(fd_.load(), data.data() + done, data.size() - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:132:89: error: either cast from 'size_t' (aka 'unsigned long') to 'off_t' (aka 'long long') is ineffective, or there is loss of precision before the conversion [bugprone-misplaced-widening-cast,-warnings-as-errors] 132 | auto const n = ::pwrite(fd_.load(), data.data() + done, data.size() - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:144:29: error: parameter name 'fd' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 144 | static auto readAll(int fd, char * buf, size_t len, size_t offset) -> bool | ^ ../src/daemon/log-spill.hh:148:24: error: variable name 'n' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 148 | auto const n = ::pread(fd, buf + done, len - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:148:44: error: do not use pointer arithmetic [cppcoreguidelines-pro-bounds-pointer-arithmetic,-warnings-as-errors] 148 | auto const n = ::pread(fd, buf + done, len - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:148:64: error: either cast from 'size_t' (aka 'unsigned long') to 'off_t' (aka 'long long') is ineffective, or there is loss of precision before the conversion [bugprone-misplaced-widening-cast,-warnings-as-errors] 148 | auto const n = ::pread(fd, buf + done, len - done, static_cast(offset + done)); | ^ ../src/daemon/log-spill.hh:175:31: error: parameter name 'cv' is too short, expected at least 3 characters [readability-identifier-length,-warnings-as-errors] 175 | std::condition_variable & cv, | ^ ../src/daemon/log-spill.hh:178:18: error: forwarding reference parameter 'cancelled' is never forwarded inside the function body [cppcoreguidelines-missing-std-forward,-warnings-as-errors] 178 | Cancelled && cancelled, | ^ ../src/daemon/log-spill.hh:179:13: error: forwarding reference parameter 'emit' is never forwarded inside the function body [cppcoreguidelines-missing-std-forward,-warnings-as-errors] 179 | Emit && emit) -> bool | ^ ../src/daemon/log-spill.hh:195:16: error: 'wait_for' should be placed inside a while statement or used with a conditional parameter [bugprone-spuriously-wake-up-functions,cert-con36-c,cert-con54-cpp,-warnings-as-errors] 195 | cv.wait_for(lock, poll); | ^ FAILED: [code=1] meson-internal__clang-tidy /nix/store/j2s018h6gc2q0z3sw002br2zas3m1l9d-meson-1.10.2/bin/meson --internal clangtidy /nix/var/nix/builds/nix-46934-3544683814/source /nix/var/nix/builds/nix-46934-3544683814/source/build --color always ninja: build stopped: subcommand failed.