Skip to content

Commit 9853797

Browse files
authored
Update dependencies 2023-11 (#113)
* update catch2 to 3.4.0 * update opencv to 4.8.1 * update sdl to 2.28.5 * update imgui to 1.89.9 * update to clang-format-15 and clang-tidy-15 * undo debug prints
1 parent 695a0f1 commit 9853797

33 files changed

+177
-173
lines changed

.clang-tidy

+2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
# Disabled bugprone-exception-escape because of a bug in clang-tidy:
22
# https://github.com/llvm/llvm-project/issues/54668
3+
# Dangerous: bugprone-unchecked-optional-access
34

45
Checks: >
56
-*,
67
bugprone-*,
78
-bugprone-exception-escape,
9+
-bugprone-unchecked-optional-access,
810
google-*,
911
misc-*,
1012
modernize-*,

.github/workflows/clang-tidy-check.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ permissions:
1717

1818
env:
1919
BUILD_TYPE: Release
20-
CATCH_VERSION: "v3.3.2"
20+
CATCH_VERSION: "v3.4.0"
2121
EXIV2_VERSION: "v0.28.0"
2222

2323
jobs:
@@ -79,7 +79,7 @@ jobs:
7979
8080
- name: Run clang-tidy
8181
run: |
82-
run-clang-tidy `pwd`/xpano `pwd`/tests \
82+
run-clang-tidy-15 `pwd`/xpano `pwd`/tests \
8383
-p=build \
8484
-quiet \
8585
-header-filter=xpano/xpano.*xpano \

.github/workflows/test.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ permissions:
1212

1313
env:
1414
BUILD_TYPE: Release
15-
SDL_VERSION: "release-2.28.1"
16-
OPENCV_VERSION: "4.8.0"
17-
CATCH_VERSION: "v3.3.2"
15+
SDL_VERSION: "release-2.28.5"
16+
OPENCV_VERSION: "4.8.1"
17+
CATCH_VERSION: "v3.4.0"
1818
SPDLOG_VERSION: "v1.12.0"
1919
EXIV2_VERSION: "v0.28.0"
2020
GENERATOR: "Ninja Multi-Config"

external/imgui

Submodule imgui updated 61 files

misc/build/build-macos-12.sh

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# DO NOT MODIFY: Auto-generated by the gen_installer.py script from the .github/workflows/test.yml Github Action
22

33
export BUILD_TYPE='Release'
4-
export SDL_VERSION='release-2.28.1'
5-
export OPENCV_VERSION='4.8.0'
6-
export CATCH_VERSION='v3.3.2'
4+
export SDL_VERSION='release-2.28.5'
5+
export OPENCV_VERSION='4.8.1'
6+
export CATCH_VERSION='v3.4.0'
77
export SPDLOG_VERSION='v1.12.0'
88
export EXIV2_VERSION='v0.28.0'
99
export GENERATOR='Ninja Multi-Config'

misc/build/build-ubuntu-20.sh

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# DO NOT MODIFY: Auto-generated by the gen_installer.py script from the .github/workflows/test.yml Github Action
22

33
export BUILD_TYPE='Release'
4-
export SDL_VERSION='release-2.28.1'
5-
export OPENCV_VERSION='4.8.0'
6-
export CATCH_VERSION='v3.3.2'
4+
export SDL_VERSION='release-2.28.5'
5+
export OPENCV_VERSION='4.8.1'
6+
export CATCH_VERSION='v3.4.0'
77
export SPDLOG_VERSION='v1.12.0'
88
export EXIV2_VERSION='v0.28.0'
99
export GENERATOR='Ninja Multi-Config'

misc/build/build-ubuntu-22.sh

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# DO NOT MODIFY: Auto-generated by the gen_installer.py script from the .github/workflows/test.yml Github Action
22

33
export BUILD_TYPE='Release'
4-
export SDL_VERSION='release-2.28.1'
5-
export OPENCV_VERSION='4.8.0'
6-
export CATCH_VERSION='v3.3.2'
4+
export SDL_VERSION='release-2.28.5'
5+
export OPENCV_VERSION='4.8.1'
6+
export CATCH_VERSION='v3.4.0'
77
export SPDLOG_VERSION='v1.12.0'
88
export EXIV2_VERSION='v0.28.0'
99
export GENERATOR='Ninja Multi-Config'

misc/build/build-windows-latest.ps1

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# DO NOT MODIFY: Auto-generated by the gen_installer.py script from the .github/workflows/test.yml Github Action
22

33
$env:BUILD_TYPE = 'Release'
4-
$env:SDL_VERSION = 'release-2.28.1'
5-
$env:OPENCV_VERSION = '4.8.0'
6-
$env:CATCH_VERSION = 'v3.3.2'
4+
$env:SDL_VERSION = 'release-2.28.5'
5+
$env:OPENCV_VERSION = '4.8.1'
6+
$env:CATCH_VERSION = 'v3.4.0'
77
$env:SPDLOG_VERSION = 'v1.12.0'
88
$env:EXIV2_VERSION = 'v0.28.0'
99
$env:GENERATOR = 'Ninja Multi-Config'

misc/scripts/format.sh

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
clang-format -i `find xpano -name *.cc -or -name *.h`
2-
clang-format -i `find tests -name *.cc -or -name *.h`
1+
clang-format-15 -i `find xpano -name *.cc -or -name *.h`
2+
clang-format-15 -i `find tests -name *.cc -or -name *.h`

misc/scripts/tidy.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
run-clang-tidy `pwd`/xpano `pwd`/tests -p=build -quiet
1+
run-clang-tidy-15 `pwd`/xpano `pwd`/tests -p=build -quiet

tests/auto_crop_test.cc

+10-10
Original file line numberDiff line numberDiff line change
@@ -16,61 +16,61 @@ using xpano::utils::Point2i;
1616
// NOLINTBEGIN(readability-magic-numbers)
1717

1818
TEST_CASE("Auto crop empty mask") {
19-
cv::Mat mask(10, 20, CV_8U, cv::Scalar(0));
19+
const cv::Mat mask(10, 20, CV_8U, cv::Scalar(0));
2020
auto result = FindLargestCrop(mask);
2121
CHECK(!result.has_value());
2222
}
2323

2424
TEST_CASE("Auto crop full mask / even size") {
25-
cv::Mat mask(10, 20, CV_8U, cv::Scalar(kMaskValueOn));
25+
const cv::Mat mask(10, 20, CV_8U, cv::Scalar(kMaskValueOn));
2626
auto result = FindLargestCrop(mask);
2727
REQUIRE(result.has_value());
2828
CHECK(result->start == Point2i{0, 0});
2929
CHECK(result->end == Point2i{20, 10});
3030
}
3131

3232
TEST_CASE("Auto crop full mask / odd size") {
33-
cv::Mat mask(10, 21, CV_8U, cv::Scalar(kMaskValueOn));
33+
const cv::Mat mask(10, 21, CV_8U, cv::Scalar(kMaskValueOn));
3434
auto result = FindLargestCrop(mask);
3535
REQUIRE(result.has_value());
3636
CHECK(result->start == Point2i{0, 0});
3737
CHECK(result->end == Point2i{21, 10});
3838
}
3939

4040
TEST_CASE("Auto crop single column mask") {
41-
cv::Mat mask(10, 1, CV_8U, cv::Scalar(kMaskValueOn));
41+
const cv::Mat mask(10, 1, CV_8U, cv::Scalar(kMaskValueOn));
4242
auto result = FindLargestCrop(mask);
4343
REQUIRE(result.has_value());
4444
CHECK(result->start == Point2i{0, 0});
4545
CHECK(result->end == Point2i{1, 10});
4646
}
4747

4848
TEST_CASE("Auto crop two columns mask") {
49-
cv::Mat mask(10, 2, CV_8U, cv::Scalar(kMaskValueOn));
49+
const cv::Mat mask(10, 2, CV_8U, cv::Scalar(kMaskValueOn));
5050
auto result = FindLargestCrop(mask);
5151
REQUIRE(result.has_value());
5252
CHECK(result->start == Point2i{0, 0});
5353
CHECK(result->end == Point2i{2, 10});
5454
}
5555

5656
TEST_CASE("Auto crop single row mask") {
57-
cv::Mat mask(1, 20, CV_8U, cv::Scalar(kMaskValueOn));
57+
const cv::Mat mask(1, 20, CV_8U, cv::Scalar(kMaskValueOn));
5858
auto result = FindLargestCrop(mask);
5959
REQUIRE(result.has_value());
6060
CHECK(result->start == Point2i{0, 0});
6161
CHECK(result->end == Point2i{20, 1});
6262
}
6363

6464
TEST_CASE("Auto crop two rows mask") {
65-
cv::Mat mask(2, 20, CV_8U, cv::Scalar(kMaskValueOn));
65+
const cv::Mat mask(2, 20, CV_8U, cv::Scalar(kMaskValueOn));
6666
auto result = FindLargestCrop(mask);
6767
REQUIRE(result.has_value());
6868
CHECK(result->start == Point2i{0, 0});
6969
CHECK(result->end == Point2i{20, 2});
7070
}
7171

7272
TEST_CASE("Auto crop mask with rows set") {
73-
cv::Mat mask(10, 20, CV_8U, cv::Scalar(0));
73+
const cv::Mat mask(10, 20, CV_8U, cv::Scalar(0));
7474

7575
SECTION("single row") {
7676
mask.row(5) = kMaskValueOn;
@@ -91,7 +91,7 @@ TEST_CASE("Auto crop mask with rows set") {
9191
}
9292

9393
TEST_CASE("Auto crop mask with empty column") {
94-
cv::Mat mask(10, 20, CV_8U, cv::Scalar(kMaskValueOn));
94+
const cv::Mat mask(10, 20, CV_8U, cv::Scalar(kMaskValueOn));
9595
mask.col(5) = 0;
9696
auto result = FindLargestCrop(mask);
9797
REQUIRE(result.has_value());
@@ -100,7 +100,7 @@ TEST_CASE("Auto crop mask with empty column") {
100100
}
101101

102102
TEST_CASE("Auto crop empty matrix") {
103-
cv::Mat mask;
103+
const cv::Mat mask;
104104
auto result = FindLargestCrop(mask);
105105
REQUIRE(!result.has_value());
106106
}

tests/rect_test.cc

+3-9
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,13 @@ using xpano::utils::Rect;
1515
using xpano::utils::Vec2f;
1616

1717
template <typename TRectType>
18-
concept HasStart = requires(TRectType rect) {
19-
rect.start;
20-
};
18+
concept HasStart = requires(TRectType rect) { rect.start; };
2119

2220
template <typename TRectType>
23-
concept HasSize = requires(TRectType rect) {
24-
rect.size;
25-
};
21+
concept HasSize = requires(TRectType rect) { rect.size; };
2622

2723
template <typename TRectType>
28-
concept HasEnd = requires(TRectType rect) {
29-
rect.end;
30-
};
24+
concept HasEnd = requires(TRectType rect) { rect.end; };
3125

3226
TEST_CASE("Rect from Point and Vec") {
3327
auto rect = Rect(Point2f{1.0f, 2.0f}, Vec2f{1.0f, 2.0f});

tests/vec_test.cc

+32-32
Original file line numberDiff line numberDiff line change
@@ -45,26 +45,26 @@ TEST_CASE("Vec constructor") {
4545
}
4646

4747
TEST_CASE("Vec aspect (float)") {
48-
Vec2f vec{1.0f, 2.0f};
48+
const Vec2f vec{1.0f, 2.0f};
4949
REQUIRE(vec.Aspect() == Approx(0.5f));
5050
}
5151

5252
TEST_CASE("Vec aspect (int)") {
53-
Vec2i vec{1, 2};
53+
const Vec2i vec{1, 2};
5454
REQUIRE(vec.Aspect() == Approx(0.5f));
5555
}
5656

5757
TEST_CASE("ToIntVec") {
58-
Vec2f vec{1.1f, 2.3f};
58+
const Vec2f vec{1.1f, 2.3f};
5959
auto result = ToIntVec(vec);
6060
REQUIRE(result[0] == 1);
6161
REQUIRE(result[1] == 2);
6262
}
6363

6464
TEST_CASE("Add") {
65-
Vec2f vec1 = {1.0f, 2.0f};
66-
Vec2f vec2 = {0.2f, 1.5f};
67-
Point2f point1 = {3.0f, 4.0f};
65+
const Vec2f vec1 = {1.0f, 2.0f};
66+
const Vec2f vec2 = {0.2f, 1.5f};
67+
const Point2f point1 = {3.0f, 4.0f};
6868

6969
SECTION("Vec + Vec") {
7070
auto result = vec1 + vec2;
@@ -87,8 +87,8 @@ TEST_CASE("Add") {
8787

8888
template <typename TLeft, typename TRight, typename TResult = void>
8989
concept Addable = requires(TLeft lhs, TRight rhs, TResult result) {
90-
{ lhs + rhs } -> std::same_as<TResult>;
91-
};
90+
{ lhs + rhs } -> std::same_as<TResult>;
91+
};
9292

9393
TEST_CASE("Add type checks") {
9494
REQUIRE(Addable<Vec2f, Vec2f, Vec2f>);
@@ -98,10 +98,10 @@ TEST_CASE("Add type checks") {
9898
}
9999

100100
TEST_CASE("Subtract") {
101-
Vec2f vec1 = {1.0f, 2.0f};
102-
Vec2f vec2 = {0.2f, 1.5f};
103-
Point2f point1 = {3.0f, 4.0f};
104-
Point2f point2 = {2.0f, 3.0f};
101+
const Vec2f vec1 = {1.0f, 2.0f};
102+
const Vec2f vec2 = {0.2f, 1.5f};
103+
const Point2f point1 = {3.0f, 4.0f};
104+
const Point2f point2 = {2.0f, 3.0f};
105105

106106
SECTION("Vec - Vec") {
107107
auto result = vec1 - vec2;
@@ -124,8 +124,8 @@ TEST_CASE("Subtract") {
124124

125125
template <typename TLeft, typename TRight, typename TResult = void>
126126
concept Subtractable = requires(TLeft lhs, TRight rhs, TResult result) {
127-
{ lhs - rhs } -> std::same_as<TResult>;
128-
};
127+
{ lhs - rhs } -> std::same_as<TResult>;
128+
};
129129

130130
TEST_CASE("Subtract type checks") {
131131
REQUIRE(Subtractable<Vec2f, Vec2f, Vec2f>);
@@ -141,8 +141,8 @@ TEST_CASE("Subtract type checks") {
141141
}
142142

143143
TEST_CASE("Divide by constant") {
144-
Vec2f vec1 = {5.0f, 10.0f};
145-
Vec2i vec2 = {5, 10};
144+
const Vec2f vec1 = {5.0f, 10.0f};
145+
const Vec2i vec2 = {5, 10};
146146

147147
SECTION("Vec2f / float") {
148148
auto result = vec1 / 2.0f;
@@ -170,11 +170,11 @@ TEST_CASE("Divide by constant") {
170170
}
171171

172172
TEST_CASE("Divide by Vec") {
173-
Vec2f vec1 = {5.0f, 10.0f};
174-
Vec2f vec2 = {2.0f, 5.0f};
173+
const Vec2f vec1 = {5.0f, 10.0f};
174+
const Vec2f vec2 = {2.0f, 5.0f};
175175

176-
Vec2i vec1i = {5, 10};
177-
Vec2i vec2i = {2, 5};
176+
const Vec2i vec1i = {5, 10};
177+
const Vec2i vec2i = {2, 5};
178178

179179
SECTION("Vec2f / Vec2f") {
180180
auto result = vec1 / vec2;
@@ -191,8 +191,8 @@ TEST_CASE("Divide by Vec") {
191191

192192
template <typename TLeft, typename TRight, typename TResult = void>
193193
concept Divisible = requires(TLeft lhs, TRight rhs, TResult result) {
194-
{ lhs / rhs } -> std::same_as<TResult>;
195-
};
194+
{ lhs / rhs } -> std::same_as<TResult>;
195+
};
196196

197197
TEST_CASE("Divide type checks") {
198198
SECTION("Divide by constant") {
@@ -218,8 +218,8 @@ TEST_CASE("Divide type checks") {
218218
}
219219

220220
TEST_CASE("Multiply by constant") {
221-
Vec2f vec1 = {1.0f, 2.0f};
222-
Vec2i vec2 = {1, 2};
221+
const Vec2f vec1 = {1.0f, 2.0f};
222+
const Vec2i vec2 = {1, 2};
223223

224224
SECTION("Vec2f * float") {
225225
auto result = vec1 * 1.5f;
@@ -247,11 +247,11 @@ TEST_CASE("Multiply by constant") {
247247
}
248248

249249
TEST_CASE("Multiply by Ratio") {
250-
Vec2f vec1 = {5.0f, 10.0f};
251-
Vec2i vec2 = {5, 10};
250+
const Vec2f vec1 = {5.0f, 10.0f};
251+
const Vec2i vec2 = {5, 10};
252252

253-
Ratio2f ratio1 = {2.5f, 5.0f};
254-
Ratio2i ratio2 = {2, 5};
253+
const Ratio2f ratio1 = {2.5f, 5.0f};
254+
const Ratio2i ratio2 = {2, 5};
255255

256256
SECTION("Vec2f * Ratio2f") {
257257
auto result = vec1 * ratio1;
@@ -280,8 +280,8 @@ TEST_CASE("Multiply by Ratio") {
280280

281281
template <typename TLeft, typename TRight, typename TResult = void>
282282
concept Multiplicable = requires(TLeft lhs, TRight rhs, TResult result) {
283-
{ lhs* rhs } -> std::same_as<TResult>;
284-
};
283+
{ lhs* rhs } -> std::same_as<TResult>;
284+
};
285285

286286
TEST_CASE("Multiply type checks") {
287287
SECTION("Multiply by constant") {
@@ -305,8 +305,8 @@ TEST_CASE("Multiply type checks") {
305305
}
306306

307307
TEST_CASE("Multiply elements") {
308-
Vec2f vec1 = {2.0f, 2.5f};
309-
Vec2i vec2 = {4, 8};
308+
const Vec2f vec1 = {2.0f, 2.5f};
309+
const Vec2i vec2 = {4, 8};
310310

311311
REQUIRE(xpano::utils::MultiplyElements(vec1) == Approx(5.0f));
312312
REQUIRE(xpano::utils::MultiplyElements(vec2) == 32);

0 commit comments

Comments
 (0)