Skip to content

NUClearNet 2 (protocol 0x03)#29

Open
TrentHouliston wants to merge 14 commits into
mainfrom
houliston/nuclearnet-v2
Open

NUClearNet 2 (protocol 0x03)#29
TrentHouliston wants to merge 14 commits into
mainfrom
houliston/nuclearnet-v2

Update README NUClear subtree pin to 18c2877b

b7932f2
Select commit
Loading
Failed to load commit list.
SonarQubeCloud / SonarCloud Code Analysis failed Jun 17, 2026 in 2m 50s

Quality Gate failed

Failed conditions
10 Security Hotspots
E Reliability Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

Annotations

Check warning on line 181 in src/nuclear/src/extension/NetworkController.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Replace this declaration by a structured binding declaration.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEOytS3uyRsdjYRlt&open=AZ6MEOytS3uyRsdjYRlt&pullRequest=29

Check warning on line 53 in src/nuclear/tests/tests/dsl/Transient.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Concatenate this namespace with the nested ones.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEO2TS3uyRsdjYRmb&open=AZ6MEO2TS3uyRsdjYRmb&pullRequest=29

Check warning on line 382 in src/nuclear/src/nuclearnet/NUClearNet.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Replace "reinterpret_cast" with a "static_cast".

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MGCbnaGUIhYcus1Nt&open=AZ6MGCbnaGUIhYcus1Nt&pullRequest=29

Check failure on line 858 in src/nuclear/src/nuclearnet/NUClearNet.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

const_cast removing const qualification from the type of a pointer may lead to an undefined behaviour.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEOurS3uyRsdjYRkY&open=AZ6MEOurS3uyRsdjYRkY&pullRequest=29

Check warning on line 70 in src/nuclear/src/util/network/sock_t.hpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Define operator<=> and remove operators <, <=, >, >= for operand types "sock_t" and "sock_t".

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEOv_S3uyRsdjYRlY&open=AZ6MEOv_S3uyRsdjYRlY&pullRequest=29

Check failure on line 39 in src/nuclear/src/clock.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Use 'std::memory_order::seq_cst' (or remove this argument to use its default value) to ensure sequential consistency.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEOqbS3uyRsdjYRik&open=AZ6MEOqbS3uyRsdjYRik&pullRequest=29

Check warning on line 33 in src/nuclear/tests/tests/util/serialise/xxhash.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Concatenate this namespace with the nested ones.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEO7rS3uyRsdjYRoW&open=AZ6MEO7rS3uyRsdjYRoW&pullRequest=29

Check failure on line 63 in src/nuclear/tests/tests/nuclearnet/Integration.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Replace this "std::function" with a template parameter.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEO7KS3uyRsdjYRny&open=AZ6MEO7KS3uyRsdjYRny&pullRequest=29

Check warning on line 250 in src/nuclear/src/nuclearnet/NUClearNet.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Use "::" to access "htonl".

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEOurS3uyRsdjYRj5&open=AZ6MEOurS3uyRsdjYRj5&pullRequest=29

Check warning on line 130 in src/nuclear/tests/tests/util/FunctionFusion.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Replace this declaration by a structured binding declaration.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEO8MS3uyRsdjYRoe&open=AZ6MEO8MS3uyRsdjYRoe&pullRequest=29

Check warning on line 104 in src/nuclear/src/extension/trace/protobuf.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Constrain this iterator-based algorithm with the relevant iterator category.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEOzAS3uyRsdjYRl0&open=AZ6MEOzAS3uyRsdjYRl0&pullRequest=29

Check warning on line 149 in src/nuclear/src/nuclearnet/Reliability.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Replace this use of "std::lock_guard" with "std::scoped_lock"

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEOvFS3uyRsdjYRk9&open=AZ6MEOvFS3uyRsdjYRk9&pullRequest=29

Check warning on line 68 in src/nuclear/src/nuclearnet/Reliability.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Replace this use of "std::lock_guard" with "std::scoped_lock"

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEOvFS3uyRsdjYRkz&open=AZ6MEOvFS3uyRsdjYRkz&pullRequest=29

Check warning on line 423 in src/nuclear/tests/tests/nuclearnet/ProcessPacket.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Remove this specialization with "bool" of "std::vector".

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEO6WS3uyRsdjYRnD&open=AZ6MEO6WS3uyRsdjYRnD&pullRequest=29

Check failure on line 445 in src/nuclear/src/nuclearnet/NUClearNet.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

const_cast removing const qualification from the type of a pointer may lead to an undefined behaviour.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MGCbnaGUIhYcus1Ny&open=AZ6MGCbnaGUIhYcus1Ny&pullRequest=29

Check warning on line 47 in src/nuclear/src/nuclearnet/Discovery.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Use "std::byte" for byte-oriented data manipulation.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6ManXxQFLKRviDQOlx&open=AZ6ManXxQFLKRviDQOlx&pullRequest=29

Check warning on line 92 in src/NetworkBinding.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Reduce verbosity with "using enum" for "NUClear::network::LogLevel".

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6ManxuQFLKRviDQOl4&open=AZ6ManxuQFLKRviDQOl4&pullRequest=29

Check warning on line 127 in src/nuclear/tests/test_util/has_multicast.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Use "std::byte" for byte-oriented memory access.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEO9AS3uyRsdjYRot&open=AZ6MEO9AS3uyRsdjYRot&pullRequest=29

Check warning on line 198 in src/nuclear/src/LogLevel.hpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Replace this const reference to "std::string" by a "std::string_view".

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEO0hS3uyRsdjYRmF&open=AZ6MEO0hS3uyRsdjYRmF&pullRequest=29

Check warning on line 131 in src/nuclear/src/nuclearnet/Fragmentation.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Replace this declaration by a structured binding declaration.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEOuPS3uyRsdjYRjk&open=AZ6MEOuPS3uyRsdjYRjk&pullRequest=29

Check warning on line 92 in src/nuclear/tests/tests/nuclearnet/wire_protocol.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Use "std::byte" for byte-oriented memory access.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEO6wS3uyRsdjYRnj&open=AZ6MEO6wS3uyRsdjYRnj&pullRequest=29

Check warning on line 74 in src/nuclear/src/nuclearnet/Fragmentation.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

This function has 10 parameters, which is greater than the 7 authorized.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEOuPS3uyRsdjYRjh&open=AZ6MEOuPS3uyRsdjYRjh&pullRequest=29

Check failure on line 431 in src/nuclear/src/nuclearnet/NUClearNet.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Explicitly capture "this" in a non-transient lambda.

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEOurS3uyRsdjYRkA&open=AZ6MEOurS3uyRsdjYRkA&pullRequest=29

Check warning on line 42 in src/nuclear/src/nuclearnet/Log.hpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Rename enumeration value "Trace" to match the regular expression: ^[A-Z][A-Z_0-9]*$

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6ManRQQFLKRviDQOlW&open=AZ6ManRQQFLKRviDQOlW&pullRequest=29

Check warning on line 29 in src/nuclear/src/nuclearnet/Routing.cpp

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Replace this use of "std::lock_guard" with "std::scoped_lock"

See more on https://sonarcloud.io/project/issues?id=Fastcode_NUClearNet.js&issues=AZ6MEOu8S3uyRsdjYRkc&open=AZ6MEOu8S3uyRsdjYRkc&pullRequest=29