Skip to content

Commit 1c765d9

Browse files
authored
Merge branch 'develop' into batch-rpc
2 parents c02ed4f + b58c681 commit 1c765d9

File tree

8 files changed

+220
-159
lines changed

8 files changed

+220
-159
lines changed

.clang-tidy

Lines changed: 156 additions & 147 deletions
Original file line numberDiff line numberDiff line change
@@ -1,189 +1,198 @@
11
---
22
Checks: "-*,
3-
bugprone-argument-comment
3+
bugprone-argument-comment,
4+
bugprone-assert-side-effect,
5+
bugprone-bad-signal-to-kill-thread,
6+
bugprone-bool-pointer-implicit-conversion,
7+
bugprone-casting-through-void,
8+
bugprone-chained-comparison,
9+
bugprone-compare-pointer-to-member-virtual-function,
10+
bugprone-copy-constructor-init,
11+
bugprone-dangling-handle,
12+
bugprone-dynamic-static-initializers,
13+
bugprone-fold-init-type,
14+
bugprone-forward-declaration-namespace,
15+
bugprone-inaccurate-erase,
16+
bugprone-incorrect-enable-if,
17+
bugprone-incorrect-roundings,
18+
bugprone-infinite-loop,
19+
bugprone-integer-division,
20+
bugprone-lambda-function-name,
21+
bugprone-macro-parentheses,
22+
bugprone-macro-repeated-side-effects,
23+
bugprone-misplaced-operator-in-strlen-in-alloc,
24+
bugprone-misplaced-pointer-arithmetic-in-alloc,
25+
bugprone-misplaced-widening-cast,
26+
bugprone-multi-level-implicit-pointer-conversion,
27+
bugprone-multiple-new-in-one-expression,
28+
bugprone-multiple-statement-macro,
29+
bugprone-no-escape,
30+
bugprone-non-zero-enum-to-bool-conversion,
31+
bugprone-parent-virtual-call,
32+
bugprone-posix-return,
33+
bugprone-redundant-branch-condition,
34+
bugprone-shared-ptr-array-mismatch,
35+
bugprone-signal-handler,
36+
bugprone-signed-char-misuse,
37+
bugprone-sizeof-container,
38+
bugprone-spuriously-wake-up-functions,
39+
bugprone-standalone-empty,
40+
bugprone-string-constructor,
41+
bugprone-string-integer-assignment,
42+
bugprone-string-literal-with-embedded-nul,
43+
bugprone-stringview-nullptr,
44+
bugprone-suspicious-enum-usage,
45+
bugprone-suspicious-include,
46+
bugprone-suspicious-memory-comparison,
47+
bugprone-suspicious-memset-usage,
48+
bugprone-suspicious-realloc-usage,
49+
bugprone-suspicious-semicolon,
50+
bugprone-suspicious-string-compare,
51+
bugprone-swapped-arguments,
52+
bugprone-terminating-continue,
53+
bugprone-throw-keyword-missing,
54+
bugprone-undefined-memory-manipulation,
55+
bugprone-undelegated-constructor,
56+
bugprone-unhandled-exception-at-new,
57+
bugprone-unique-ptr-array-mismatch,
58+
bugprone-unsafe-functions,
59+
bugprone-virtual-near-miss,
60+
cppcoreguidelines-no-suspend-with-lock,
61+
cppcoreguidelines-virtual-class-destructor,
62+
hicpp-ignored-remove-result,
63+
misc-definitions-in-headers,
64+
misc-header-include-cycle,
65+
misc-misplaced-const,
66+
misc-static-assert,
67+
misc-throw-by-value-catch-by-reference,
68+
misc-unused-alias-decls,
69+
misc-unused-using-decls,
70+
readability-duplicate-include,
71+
readability-enum-initial-value,
72+
readability-misleading-indentation,
73+
readability-non-const-parameter,
74+
readability-redundant-declaration,
75+
readability-reference-to-constructed-temporary,
76+
modernize-deprecated-headers,
77+
modernize-make-shared,
78+
modernize-make-unique,
79+
performance-implicit-conversion-in-loop,
80+
performance-move-constructor-init,
81+
performance-trivially-destructible
482
"
5-
# bugprone-assert-side-effect,
6-
# bugprone-bad-signal-to-kill-thread,
7-
# bugprone-bool-pointer-implicit-conversion,
8-
# bugprone-casting-through-void,
9-
# bugprone-chained-comparison,
10-
# bugprone-compare-pointer-to-member-virtual-function,
11-
# bugprone-copy-constructor-init,
12-
# bugprone-crtp-constructor-accessibility,
13-
# bugprone-dangling-handle,
14-
# bugprone-dynamic-static-initializers,
83+
# ---
84+
# checks that have some issues that need to be resolved:
85+
#
1586
# bugprone-empty-catch,
16-
# bugprone-fold-init-type,
17-
# bugprone-forward-declaration-namespace,
18-
# bugprone-inaccurate-erase,
87+
# bugprone-crtp-constructor-accessibility,
1988
# bugprone-inc-dec-in-conditions,
20-
# bugprone-incorrect-enable-if,
21-
# bugprone-incorrect-roundings,
22-
# bugprone-infinite-loop,
23-
# bugprone-integer-division,
24-
# bugprone-lambda-function-name,
25-
# bugprone-macro-parentheses,
26-
# bugprone-macro-repeated-side-effects,
27-
# bugprone-misplaced-operator-in-strlen-in-alloc,
28-
# bugprone-misplaced-pointer-arithmetic-in-alloc,
29-
# bugprone-misplaced-widening-cast,
30-
# bugprone-move-forwarding-reference,
31-
# bugprone-multi-level-implicit-pointer-conversion,
32-
# bugprone-multiple-new-in-one-expression,
33-
# bugprone-multiple-statement-macro,
34-
# bugprone-no-escape,
35-
# bugprone-non-zero-enum-to-bool-conversion,
36-
# bugprone-optional-value-conversion,
37-
# bugprone-parent-virtual-call,
38-
# bugprone-pointer-arithmetic-on-polymorphic-object,
39-
# bugprone-posix-return,
40-
# bugprone-redundant-branch-condition,
4189
# bugprone-reserved-identifier,
90+
# bugprone-move-forwarding-reference,
91+
# bugprone-unused-local-non-trivial-variable,
4292
# bugprone-return-const-ref-from-parameter,
43-
# bugprone-shared-ptr-array-mismatch,
44-
# bugprone-signal-handler,
45-
# bugprone-signed-char-misuse,
46-
# bugprone-sizeof-container,
93+
# bugprone-switch-missing-default-case,
4794
# bugprone-sizeof-expression,
48-
# bugprone-spuriously-wake-up-functions,
49-
# bugprone-standalone-empty,
50-
# bugprone-string-constructor,
51-
# bugprone-string-integer-assignment,
52-
# bugprone-string-literal-with-embedded-nul,
53-
# bugprone-stringview-nullptr,
54-
# bugprone-suspicious-enum-usage,
55-
# bugprone-suspicious-include,
56-
# bugprone-suspicious-memory-comparison,
57-
# bugprone-suspicious-memset-usage,
58-
# bugprone-suspicious-missing-comma,
59-
# bugprone-suspicious-realloc-usage,
60-
# bugprone-suspicious-semicolon,
61-
# bugprone-suspicious-string-compare,
6295
# bugprone-suspicious-stringview-data-usage,
63-
# bugprone-swapped-arguments,
64-
# bugprone-switch-missing-default-case,
65-
# bugprone-terminating-continue,
66-
# bugprone-throw-keyword-missing,
96+
# bugprone-suspicious-missing-comma,
97+
# bugprone-pointer-arithmetic-on-polymorphic-object,
98+
# bugprone-optional-value-conversion,
6799
# bugprone-too-small-loop-variable,
68-
# bugprone-undefined-memory-manipulation,
69-
# bugprone-undelegated-constructor,
70-
# bugprone-unhandled-exception-at-new,
71-
# bugprone-unhandled-self-assignment,
72-
# bugprone-unique-ptr-array-mismatch,
73-
# bugprone-unsafe-functions,
74-
# bugprone-unused-local-non-trivial-variable,
75-
# bugprone-unused-raii,
76100
# bugprone-unused-return-value,
77101
# bugprone-use-after-move,
78-
# bugprone-virtual-near-miss,
79-
# cppcoreguidelines-init-variables,
102+
# bugprone-unhandled-self-assignment,
103+
# bugprone-unused-raii,
104+
#
80105
# cppcoreguidelines-misleading-capture-default-by-value,
81-
# cppcoreguidelines-no-suspend-with-lock,
106+
# cppcoreguidelines-init-variables,
82107
# cppcoreguidelines-pro-type-member-init,
83108
# cppcoreguidelines-pro-type-static-cast-downcast,
84-
# cppcoreguidelines-rvalue-reference-param-not-moved,
85109
# cppcoreguidelines-use-default-member-init,
86-
# cppcoreguidelines-virtual-class-destructor,
87-
# hicpp-ignored-remove-result,
110+
# cppcoreguidelines-rvalue-reference-param-not-moved,
111+
#
88112
# llvm-namespace-comment,
89113
# misc-const-correctness,
90-
# misc-definitions-in-headers,
91-
# misc-header-include-cycle,
92114
# misc-include-cleaner,
93-
# misc-misplaced-const,
94115
# misc-redundant-expression,
95-
# misc-static-assert,
96-
# misc-throw-by-value-catch-by-reference,
97-
# misc-unused-alias-decls,
98-
# misc-unused-using-decls,
99-
# modernize-concat-nested-namespaces,
100-
# modernize-deprecated-headers,
101-
# modernize-make-shared,
102-
# modernize-make-unique,
103-
# modernize-pass-by-value,
104-
# modernize-type-traits,
105-
# modernize-use-designated-initializers,
106-
# modernize-use-emplace,
107-
# modernize-use-equals-default,
108-
# modernize-use-equals-delete,
109-
# modernize-use-override,
110-
# modernize-use-ranges,
111-
# modernize-use-starts-ends-with,
112-
# modernize-use-std-numbers,
113-
# modernize-use-using,
114-
# performance-faster-string-find,
115-
# performance-for-range-copy,
116-
# performance-implicit-conversion-in-loop,
117-
# performance-inefficient-vector-operation,
118-
# performance-move-const-arg,
119-
# performance-move-constructor-init,
120-
# performance-no-automatic-move,
121-
# performance-trivially-destructible,
116+
#
122117
# readability-avoid-nested-conditional-operator,
123118
# readability-avoid-return-with-void-value,
124119
# readability-braces-around-statements,
125-
# readability-const-return-type,
126120
# readability-container-contains,
127121
# readability-container-size-empty,
128122
# readability-convert-member-functions-to-static,
129-
# readability-duplicate-include,
123+
# readability-const-return-type,
130124
# readability-else-after-return,
131-
# readability-enum-initial-value,
132125
# readability-implicit-bool-conversion,
133126
# readability-inconsistent-declaration-parameter-name,
134127
# readability-identifier-naming,
135128
# readability-make-member-function-const,
136129
# readability-math-missing-parentheses,
137-
# readability-misleading-indentation,
138-
# readability-non-const-parameter,
139-
# readability-redundant-casting,
140-
# readability-redundant-declaration,
141130
# readability-redundant-inline-specifier,
142131
# readability-redundant-member-init,
132+
# readability-redundant-casting,
143133
# readability-redundant-string-init,
144-
# readability-reference-to-constructed-temporary,
145134
# readability-simplify-boolean-expr,
146-
# readability-static-accessed-through-instance,
147135
# readability-static-definition-in-anonymous-namespace,
148136
# readability-suspicious-call-argument,
149-
# readability-use-std-min-max
137+
# readability-use-std-min-max,
138+
# readability-static-accessed-through-instance,
139+
#
140+
# modernize-concat-nested-namespaces,
141+
# modernize-pass-by-value,
142+
# modernize-type-traits,
143+
# modernize-use-designated-initializers,
144+
# modernize-use-emplace,
145+
# modernize-use-equals-default,
146+
# modernize-use-equals-delete,
147+
# modernize-use-override,
148+
# modernize-use-ranges,
149+
# modernize-use-starts-ends-with,
150+
# modernize-use-std-numbers,
151+
# modernize-use-using,
152+
#
153+
# performance-faster-string-find,
154+
# performance-for-range-copy,
155+
# performance-inefficient-vector-operation,
156+
# performance-move-const-arg,
157+
# performance-no-automatic-move,
158+
# ---
150159
#
151-
# CheckOptions:
152-
# readability-braces-around-statements.ShortStatementLines: 2
153-
# readability-identifier-naming.MacroDefinitionCase: UPPER_CASE
154-
# readability-identifier-naming.ClassCase: CamelCase
155-
# readability-identifier-naming.StructCase: CamelCase
156-
# readability-identifier-naming.UnionCase: CamelCase
157-
# readability-identifier-naming.EnumCase: CamelCase
158-
# readability-identifier-naming.EnumConstantCase: CamelCase
159-
# readability-identifier-naming.ScopedEnumConstantCase: CamelCase
160-
# readability-identifier-naming.GlobalConstantCase: UPPER_CASE
161-
# readability-identifier-naming.GlobalConstantPrefix: "k"
162-
# readability-identifier-naming.GlobalVariableCase: CamelCase
163-
# readability-identifier-naming.GlobalVariablePrefix: "g"
164-
# readability-identifier-naming.ConstexprFunctionCase: camelBack
165-
# readability-identifier-naming.ConstexprMethodCase: camelBack
166-
# readability-identifier-naming.ClassMethodCase: camelBack
167-
# readability-identifier-naming.ClassMemberCase: camelBack
168-
# readability-identifier-naming.ClassConstantCase: UPPER_CASE
169-
# readability-identifier-naming.ClassConstantPrefix: "k"
170-
# readability-identifier-naming.StaticConstantCase: UPPER_CASE
171-
# readability-identifier-naming.StaticConstantPrefix: "k"
172-
# readability-identifier-naming.StaticVariableCase: UPPER_CASE
173-
# readability-identifier-naming.StaticVariablePrefix: "k"
174-
# readability-identifier-naming.ConstexprVariableCase: UPPER_CASE
175-
# readability-identifier-naming.ConstexprVariablePrefix: "k"
176-
# readability-identifier-naming.LocalConstantCase: camelBack
177-
# readability-identifier-naming.LocalVariableCase: camelBack
178-
# readability-identifier-naming.TemplateParameterCase: CamelCase
179-
# readability-identifier-naming.ParameterCase: camelBack
180-
# readability-identifier-naming.FunctionCase: camelBack
181-
# readability-identifier-naming.MemberCase: camelBack
182-
# readability-identifier-naming.PrivateMemberSuffix: _
183-
# readability-identifier-naming.ProtectedMemberSuffix: _
184-
# readability-identifier-naming.PublicMemberSuffix: ""
185-
# readability-identifier-naming.FunctionIgnoredRegexp: ".*tag_invoke.*"
186-
# bugprone-unsafe-functions.ReportMoreUnsafeFunctions: true
160+
CheckOptions:
161+
# readability-braces-around-statements.ShortStatementLines: 2
162+
# readability-identifier-naming.MacroDefinitionCase: UPPER_CASE
163+
# readability-identifier-naming.ClassCase: CamelCase
164+
# readability-identifier-naming.StructCase: CamelCase
165+
# readability-identifier-naming.UnionCase: CamelCase
166+
# readability-identifier-naming.EnumCase: CamelCase
167+
# readability-identifier-naming.EnumConstantCase: CamelCase
168+
# readability-identifier-naming.ScopedEnumConstantCase: CamelCase
169+
# readability-identifier-naming.GlobalConstantCase: UPPER_CASE
170+
# readability-identifier-naming.GlobalConstantPrefix: "k"
171+
# readability-identifier-naming.GlobalVariableCase: CamelCase
172+
# readability-identifier-naming.GlobalVariablePrefix: "g"
173+
# readability-identifier-naming.ConstexprFunctionCase: camelBack
174+
# readability-identifier-naming.ConstexprMethodCase: camelBack
175+
# readability-identifier-naming.ClassMethodCase: camelBack
176+
# readability-identifier-naming.ClassMemberCase: camelBack
177+
# readability-identifier-naming.ClassConstantCase: UPPER_CASE
178+
# readability-identifier-naming.ClassConstantPrefix: "k"
179+
# readability-identifier-naming.StaticConstantCase: UPPER_CASE
180+
# readability-identifier-naming.StaticConstantPrefix: "k"
181+
# readability-identifier-naming.StaticVariableCase: UPPER_CASE
182+
# readability-identifier-naming.StaticVariablePrefix: "k"
183+
# readability-identifier-naming.ConstexprVariableCase: UPPER_CASE
184+
# readability-identifier-naming.ConstexprVariablePrefix: "k"
185+
# readability-identifier-naming.LocalConstantCase: camelBack
186+
# readability-identifier-naming.LocalVariableCase: camelBack
187+
# readability-identifier-naming.TemplateParameterCase: CamelCase
188+
# readability-identifier-naming.ParameterCase: camelBack
189+
# readability-identifier-naming.FunctionCase: camelBack
190+
# readability-identifier-naming.MemberCase: camelBack
191+
# readability-identifier-naming.PrivateMemberSuffix: _
192+
# readability-identifier-naming.ProtectedMemberSuffix: _
193+
# readability-identifier-naming.PublicMemberSuffix: ""
194+
# readability-identifier-naming.FunctionIgnoredRegexp: ".*tag_invoke.*"
195+
bugprone-unsafe-functions.ReportMoreUnsafeFunctions: true
187196
# bugprone-unused-return-value.CheckedReturnTypes: ::std::error_code;::std::error_condition;::std::errc
188197
# misc-include-cleaner.IgnoreHeaders: '.*/(detail|impl)/.*;.*(expected|unexpected).*;.*ranges_lower_bound\.h;time.h;stdlib.h;__chrono/.*;fmt/chrono.h;boost/uuid/uuid_hash.hpp'
189198
#

.github/workflows/pre-commit.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ on:
1111
jobs:
1212
# Call the workflow in the XRPLF/actions repo that runs the pre-commit hooks.
1313
run-hooks:
14-
uses: XRPLF/actions/.github/workflows/pre-commit.yml@320be44621ca2a080f05aeb15817c44b84518108
14+
uses: XRPLF/actions/.github/workflows/pre-commit.yml@56de1bdf19639e009639a50b8d17c28ca954f267
1515
with:
1616
runs_on: ubuntu-latest
1717
container: '{ "image": "ghcr.io/xrplf/ci/tools-rippled-pre-commit:sha-41ec7c1" }'

.github/workflows/reusable-build-test-config.yml

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -229,8 +229,21 @@ jobs:
229229
env:
230230
BUILD_NPROC: ${{ steps.nproc.outputs.nproc }}
231231
run: |
232-
./xrpld --unittest --unittest-jobs "${BUILD_NPROC}"
232+
set -o pipefail
233+
./xrpld --unittest --unittest-jobs "${BUILD_NPROC}" 2>&1 | tee unittest.log
233234
235+
- name: Show test failure summary
236+
if: ${{ failure() && !inputs.build_only }}
237+
working-directory: ${{ runner.os == 'Windows' && format('{0}/{1}', env.BUILD_DIR, inputs.build_type) || env.BUILD_DIR }}
238+
run: |
239+
if [ ! -f unittest.log ]; then
240+
echo "unittest.log not found; embedded tests may not have run."
241+
exit 0
242+
fi
243+
244+
if ! grep -E "failed" unittest.log; then
245+
echo "Log present but no failure lines found in unittest.log."
246+
fi
234247
- name: Debug failure (Linux)
235248
if: ${{ failure() && runner.os == 'Linux' && !inputs.build_only }}
236249
run: |

.github/workflows/reusable-clang-tidy-files.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,9 +78,9 @@ jobs:
7878
id: run_clang_tidy
7979
continue-on-error: true
8080
env:
81-
FILES: ${{ inputs.files }}
81+
TARGETS: ${{ inputs.files != '' && inputs.files || 'src tests' }}
8282
run: |
83-
run-clang-tidy -j ${{ steps.nproc.outputs.nproc }} -p "$BUILD_DIR" $FILES 2>&1 | tee clang-tidy-output.txt
83+
run-clang-tidy -j ${{ steps.nproc.outputs.nproc }} -p "${BUILD_DIR}" ${TARGETS} 2>&1 | tee clang-tidy-output.txt
8484
8585
- name: Upload clang-tidy output
8686
if: steps.run_clang_tidy.outcome != 'success'

0 commit comments

Comments
 (0)