Skip to content

Commit

Permalink
Update pipeline.yml
Browse files Browse the repository at this point in the history
  • Loading branch information
FrancoisCarouge committed Oct 8, 2023
1 parent e553b1d commit 77f9d68
Show file tree
Hide file tree
Showing 10 changed files with 71 additions and 88 deletions.
3 changes: 3 additions & 0 deletions .github/workflows/clang_tidy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,17 @@ jobs:
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
- name: "Install: Clang"
run: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update
sudo apt upgrade
sudo apt install g++-13
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh 17 all
- name: "Configure"
env:
CXX: "clang++-17"
CC: "clang-17"
run: |
cmake -S . -B "build" -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
- name: Verify
Expand Down
7 changes: 4 additions & 3 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,16 +14,16 @@ permissions:
jobs:
analyze:
name: Analyze
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
timeout-minutes: ${{ (matrix.language == 'swift' && 120) || 360 }}
runs-on: ${{ (matrix.language == "swift" && "macos-latest") || "ubuntu-latest" }}
timeout-minutes: ${{ (matrix.language == "swift" && 120) || 360 }}
permissions:
actions: read
contents: read
security-events: write
strategy:
fail-fast: false
matrix:
language: [ 'cpp' ]
language: [ "cpp" ]
steps:
- name: Harden Runner
uses: step-security/harden-runner@8ca2b8b2ece13480cda6dacd3511b49857a23c09 # v2.5.1
Expand All @@ -44,6 +44,7 @@ jobs:
- name: "Configure"
env:
CXX: "g++-13"
CC: "gcc-13"
run: cmake -S . -B "build"
- name: "Build"
run: cmake --build "build" --verbose --parallel 4
Expand Down
26 changes: 0 additions & 26 deletions .github/workflows/dependency-review.yml

This file was deleted.

4 changes: 2 additions & 2 deletions .github/workflows/deploy_doxygen.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ jobs:
- name: Doxygen
uses: mattnotmitt/doxygen-action@411df0c62acb5b96b8a93d93a7bf4b753c47ea05 # v1.9.5
with:
working-directory: 'documentation'
doxyfile-path: 'Doxyfile'
working-directory: "documentation"
doxyfile-path: "Doxyfile"
- name: Deploy
uses: peaceiris/actions-gh-pages@373f7f263a76c20808c831209c920827a82a2847 # v3.9.3
with:
Expand Down
30 changes: 16 additions & 14 deletions .github/workflows/deploy_test_coverage_coveralls.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,31 +34,33 @@ jobs:
env:
CXX: "g++-13"
CXXFLAGS: "-O0 -g --coverage -fno-inline -fno-exceptions"
CC: "gcc-13"
CCFLAGS: "-O0 -g --coverage -fno-inline -fno-exceptions"
run: cmake -S . -B "build"
- name: "Build"
run: cmake --build "build" --verbose --parallel 4
- name: "Coverage: Base"
run: |
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --capture --initial --directory . --output-file base.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove base.info '*/benchmark/*' --output-file base.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove base.info '*/build/*' --output-file base.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove base.info '*/sample/*' --output-file base.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove base.info '*/source/*' --output-file base.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove base.info '*/test/*' --output-file base.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove base.info '/usr/*' --output-file base.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove base.info '10' --output-file base.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove base.info "*/benchmark/*" --output-file base.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove base.info "*/build/*" --output-file base.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove base.info "*/sample/*" --output-file base.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove base.info "*/source/*" --output-file base.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove base.info "*/test/*" --output-file base.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove base.info "/usr/*" --output-file base.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove base.info "10" --output-file base.info
- name: "Test"
run: ctest --test-dir "build" --tests-regex "kalman_(test|sample|benchmark)" --verbose --parallel 4
- name: "Coverage: Test"
run: |
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --capture --directory . --output-file test.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove test.info '*/benchmark/*' --output-file test.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove test.info '*/build/*' --output-file test.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove test.info '*/sample/*' --output-file test.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove test.info '*/source/*' --output-file test.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove test.info '*/test/*' --output-file test.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove test.info '/usr/*' --output-file test.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove test.info '10' --output-file test.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove test.info "*/benchmark/*" --output-file test.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove test.info "*/build/*" --output-file test.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove test.info "*/sample/*" --output-file test.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove test.info "*/source/*" --output-file test.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove test.info "*/test/*" --output-file test.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove test.info "/usr/*" --output-file test.info
lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --remove test.info "10" --output-file test.info
- name: "Coverage: Results"
run: lcov --rc lcov_branch_coverage=1 --gcov-tool gcov-13 --rc lcov_branch_coverage=1 --add-tracefile base.info --add-tracefile test.info --output-file coverage.info
- name: Coveralls
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/doxygen.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,5 +24,5 @@ jobs:
- name: Doxygen
uses: mattnotmitt/doxygen-action@411df0c62acb5b96b8a93d93a7bf4b753c47ea05 # v1.9.5
with:
working-directory: 'documentation'
doxyfile-path: 'Doxyfile'
working-directory: "documentation"
doxyfile-path: "Doxyfile"
1 change: 1 addition & 0 deletions .github/workflows/memory_valgrind.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ jobs:
- name: Build
env:
CXX: "g++-13"
CC: "gcc-13"
run: |
cmake -B "build" .
cmake --build "build" --parallel 4
Expand Down
23 changes: 12 additions & 11 deletions .github/workflows/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,11 @@ jobs:
fail-fast: false
matrix:
include:
- { os: "ubuntu-latest", cpp: "clang++-17", c: "clang-17", generator: "Unix Makefiles", package: "clang-17" }
- { os: "ubuntu-latest", cpp: "g++-13", c: "gcc-13", generator: "Unix Makefiles", package: "g++-13" }
- { os: "windows-latest", cpp: "cl", c: "cl", generator: "Ninja", config: "Debug" }
- { os: "windows-latest", cpp: "cl", c: "cl", generator: "Ninja", config: "Release" }
name: "${{ matrix.os }} / ${{ matrix.cpp }} / ${{ matrix.generator }} / ${{ matrix.config }}"
- { os: "ubuntu-latest", cxx: "clang++-17", cc: "clang-17", generator: "Unix Makefiles", packages: "clang-17" }
- { os: "ubuntu-latest", cxx: "g++-13", cc: "gcc-13", generator: "Unix Makefiles", packages: "g++-13" }
- { os: "windows-latest", cxx: "cl", cc: "cl", generator: "Ninja", config: "Debug" }
- { os: "windows-latest", cxx: "cl", cc: "cl", generator: "Ninja", config: "Release" }
name: "${{ matrix.os }} / ${{ matrix.cxx }} / ${{ matrix.generator }} / ${{ matrix.config }}"
runs-on: "${{ matrix.os }}"
steps:
- name: Harden Runner
Expand All @@ -33,25 +33,26 @@ jobs:
- name: "Install: MSVC"
uses: ilammy/msvc-dev-cmd@cec98b9d092141f74527d0afa6feb2af698cfe89 # v1.12.1
- name: "Install: GCC"
if: ${{ matrix.package == 'g++-13' || matrix.package == 'clang-17' }}
if: ${{ matrix.cxx == "g++-13" }}
run: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update
sudo apt upgrade
sudo apt install "${{ matrix.package }}"
sudo apt install "${{ matrix.packages }}"
- name: "Install: Clang"
if: ${{ matrix.package == 'clang-17' }}
if: ${{ matrix.cxx == "clang++-17" }}
run: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update
sudo apt upgrade
sudo apt install g++-13
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh 17 all
clang++-17 -v
- name: "Configure"
env:
CXX: "${{ matrix.cpp }}"
CC: "${{ matrix.c }}"
CXX: "${{ matrix.cxx }}"
CC: "${{ matrix.cc }}"
run: cmake -S . -B "build" -G "${{ matrix.generator }}"
- name: "Build"
run: cmake --build "build" --config "${{ matrix.config }}" --verbose --parallel 4
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/sanitizer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ jobs:
- name: "Configure"
env:
CXX: "g++-13"
CC: "gcc-13"
run: cmake -S . -B "build"
- name: "Build"
run: cmake --build "build" --verbose --parallel 4
Expand Down
60 changes: 30 additions & 30 deletions include/fcarouge/internal/kalman.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -105,30 +105,30 @@ struct kalman<State, Output, void, pack<UpdateTypes...>,
//! specialized cases? Same question applies to other parameters.
//! @todo Pass the arguments by universal reference?
observation_state_function observation_state_h{
[&h = h]([[maybe_unused]] const auto &...arguments) -> output_model {
return h;
[&hh = h]([[maybe_unused]] const auto &...arguments) -> output_model {
return hh;
}};
noise_observation_function noise_observation_r{
[&r =
[&rr =
r]([[maybe_unused]] const auto &...arguments) -> output_uncertainty {
return r;
return rr;
}};
transition_state_function transition_state_f{
[&f = f]([[maybe_unused]] const auto &...arguments) -> state_transition {
return f;
[&ff = f]([[maybe_unused]] const auto &...arguments) -> state_transition {
return ff;
}};
noise_process_function noise_process_q{
[&q = q]([[maybe_unused]] const auto &...arguments)
-> process_uncertainty { return q; }};
[&qq = q]([[maybe_unused]] const auto &...arguments)
-> process_uncertainty { return qq; }};
transition_function transition{
[&f = f](const state &state_x,
[[maybe_unused]] const auto &...arguments) -> state {
return f * state_x;
[&ff = f](const state &state_x,
[[maybe_unused]] const auto &...arguments) -> state {
return ff * state_x;
}};
observation_function observation{
[&h = h](const state &state_x,
[[maybe_unused]] const auto &...arguments) -> output {
return h * state_x;
[&hh = h](const state &state_x,
[[maybe_unused]] const auto &...arguments) -> output {
return hh * state_x;
}};

//! @todo Do we want to store i - k * h in a temporary result for reuse? Or
Expand Down Expand Up @@ -220,34 +220,34 @@ struct kalman<State, Output, Input, pack<UpdateTypes...>,
//! specialized cases? Same question applies to other parameters.
//! @todo Pass the arguments by universal reference?
observation_state_function observation_state_h{
[&h = h]([[maybe_unused]] const auto &...arguments) -> output_model {
return h;
[&hh = h]([[maybe_unused]] const auto &...arguments) -> output_model {
return hh;
}};
noise_observation_function noise_observation_r{
[&r =
[&rr =
r]([[maybe_unused]] const auto &...arguments) -> output_uncertainty {
return r;
return rr;
}};
transition_state_function transition_state_f{
[&f = f]([[maybe_unused]] const auto &...arguments) -> state_transition {
return f;
[&ff = f]([[maybe_unused]] const auto &...arguments) -> state_transition {
return ff;
}};
noise_process_function noise_process_q{
[&q = q]([[maybe_unused]] const auto &...arguments)
-> process_uncertainty { return q; }};
[&qq = q]([[maybe_unused]] const auto &...arguments)
-> process_uncertainty { return qq; }};
transition_control_function transition_control_g{
[&g = g]([[maybe_unused]] const auto &...arguments) -> input_control {
return g;
[&gg = g]([[maybe_unused]] const auto &...arguments) -> input_control {
return gg;
}};
transition_function transition{
[&f = f, &g = g](const state &state_x, const input &input_u,
[[maybe_unused]] const auto &...arguments) -> state {
return f * state_x + g * input_u;
[&ff = f, &gg = g](const state &state_x, const input &input_u,
[[maybe_unused]] const auto &...arguments) -> state {
return ff * state_x + gg * input_u;
}};
observation_function observation{
[&h = h](const state &state_x,
[[maybe_unused]] const auto &...arguments) -> output {
return h * state_x;
[&hh = h](const state &state_x,
[[maybe_unused]] const auto &...arguments) -> output {
return hh * state_x;
}};

//! @todo Do we want to store i - k * h in a temporary result for reuse? Or
Expand Down

0 comments on commit 77f9d68

Please sign in to comment.