diff --git a/.github/workflows/doxygen.yml b/.github/workflows/doxygen.yml index bccdc23..fa1b268 100644 --- a/.github/workflows/doxygen.yml +++ b/.github/workflows/doxygen.yml @@ -18,7 +18,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: mattnotmitt/doxygen-action@v1.1.0 with: doxyfile-path: "Doc/doxygen.config" diff --git a/.github/workflows/test_macos.yml b/.github/workflows/test_macos.yml index 03833b9..45b84ee 100644 --- a/.github/workflows/test_macos.yml +++ b/.github/workflows/test_macos.yml @@ -45,7 +45,7 @@ jobs: steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: recursive @@ -74,7 +74,7 @@ jobs: steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: recursive diff --git a/.github/workflows/test_unix.yml b/.github/workflows/test_unix.yml index de6461c..f77a482 100644 --- a/.github/workflows/test_unix.yml +++ b/.github/workflows/test_unix.yml @@ -50,7 +50,7 @@ jobs: steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: recursive @@ -85,7 +85,7 @@ jobs: steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: recursive diff --git a/.github/workflows/test_windows.yml b/.github/workflows/test_windows.yml index 27f5069..695e560 100644 --- a/.github/workflows/test_windows.yml +++ b/.github/workflows/test_windows.yml @@ -43,7 +43,7 @@ jobs: steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: recursive @@ -68,7 +68,7 @@ jobs: steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: recursive @@ -93,7 +93,7 @@ jobs: steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: recursive @@ -118,7 +118,7 @@ jobs: steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: recursive diff --git a/.gitignore b/.gitignore index 6bfe4f5..206ea52 100644 --- a/.gitignore +++ b/.gitignore @@ -2,9 +2,6 @@ # Visual Studio cache. .vs/ -.vscode/* -!.vscode/launch.json -!.vscode/settings.json # Vim cache. diff --git a/.vscode/launch.json b/.vscode/launch.json index e209f56..300ddae 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -35,6 +35,38 @@ } ] }, + { + // Requires 'Valgrind Task Integration' + // VS Code Quick Open (Ctrl+P) + 'ext install 1nVitr0.valgrind-task-integration' + "name": "Valgrind Launch", + "type": "cppdbg", + "request": "launch", + "program": "${command:cmake.launchTargetPath}", + "preLaunchTask": "valgrind", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [ + { + "name": "PATH", + "value": "$PATH:${command:cmake.launchTargetDirectory}" + } + ], + "externalConsole": false, + "MIMode": "gdb", + "setupCommands": [ + { + "description": "Enable pretty-printing for gdb", + "text": "-enable-pretty-printing", + "ignoreFailures": true + }, + { + "description": "Connect to valgrind", + "text": "target remote | vgdb", + "ignoreFailures": true + } + ] + }, { "name": "(Windows) Launch", "type": "cppvsdbg", diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000..8ec5f04 --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,20 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "valgrind", + "type": "valgrind", + "target": "${command:cmake.launchTargetPath}", + "valgrind": { + "args": [ + "--verbose", + "--leak-check=full", + "--track-origins=yes", + "--show-leak-kinds=all", + "--show-reachable=yes", + "--error-exitcode=1" + ] + } + } + ] +} \ No newline at end of file diff --git a/CMakePresets.json b/CMakePresets.json index 6362108..7a63e16 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -122,93 +122,79 @@ { "name": "Clang Debug", "inherits": "Debug", - "displayName": "Debug", "configurePreset": "Clang" }, { "name": "Clang Release", "inherits": "Release", - "displayName": "Release", "configurePreset": "Clang" }, { "name": "GCC Debug", "inherits": "Debug", - "displayName": "Debug", "configurePreset": "GCC" }, { "name": "GCC Release", "inherits": "Release", - "displayName": "Release", "configurePreset": "GCC" }, { "name": "VS_2017 Debug", - "displayName": "Debug", "inherits": "Debug", "description": "Visual Studio multi-config Debug preset", "configurePreset": "VS_2017" }, { "name": "VS_2017 Release", - "displayName": "Release", "inherits": "Release", "description": "Visual Studio multi-config Release preset", "configurePreset": "VS_2017" }, { "name": "VS_2019 Debug", - "displayName": "Debug", "inherits": "Debug", "description": "Visual Studio multi-config Debug preset", "configurePreset": "VS_2019" }, { "name": "VS_2019 Release", - "displayName": "Release", "inherits": "Release", "description": "Visual Studio multi-config Release preset", "configurePreset": "VS_2019" }, { "name": "VS_2022 Debug", - "displayName": "Debug", "inherits": "Debug", "description": "Visual Studio multi-config Debug preset", "configurePreset": "VS_2022" }, { "name": "VS_2022 Release", - "displayName": "Release", "inherits": "Release", "description": "Visual Studio multi-config Release preset", "configurePreset": "VS_2022" }, { "name": "VS_ClangCL Debug", - "displayName": "Debug", "inherits": "Debug", "description": "Visual Studio multi-config Debug preset", "configurePreset": "VS_ClangCL" }, { "name": "VS_ClangCL Release", - "displayName": "Release", "inherits": "Release", "description": "Visual Studio multi-config Release preset", "configurePreset": "VS_ClangCL" }, { "name": "Xcode Debug", - "displayName": "Debug", "inherits": "Debug", "description": "Xcode multi-config Debug preset", "configurePreset": "Xcode" }, { "name": "Xcode Release", - "displayName": "Release", "inherits": "Release", "description": "Xcode multi-config Release preset", "configurePreset": "Xcode" @@ -237,93 +223,79 @@ { "name": "Clang Debug", "inherits": "Debug", - "displayName": "Debug", "configurePreset": "Clang" }, { "name": "Clang Release", "inherits": "Release", - "displayName": "Release", "configurePreset": "Clang" }, { "name": "GCC Debug", "inherits": "Debug", - "displayName": "Debug", "configurePreset": "GCC" }, { "name": "GCC Release", "inherits": "Release", - "displayName": "Release", "configurePreset": "GCC" }, { "name": "VS_2017 Debug", - "displayName": "Debug", "inherits": "Debug", "description": "Visual Studio multi-config Debug preset", "configurePreset": "VS_2017" }, { "name": "VS_2017 Release", - "displayName": "Release", "inherits": "Release", "description": "Visual Studio multi-config Release preset", "configurePreset": "VS_2017" }, { "name": "VS_2019 Debug", - "displayName": "Debug", "inherits": "Debug", "description": "Visual Studio multi-config Debug preset", "configurePreset": "VS_2019" }, { "name": "VS_2019 Release", - "displayName": "Release", "inherits": "Release", "description": "Visual Studio multi-config Release preset", "configurePreset": "VS_2019" }, { "name": "VS_2022 Debug", - "displayName": "Debug", "inherits": "Debug", "description": "Visual Studio multi-config Debug preset", "configurePreset": "VS_2022" }, { "name": "VS_2022 Release", - "displayName": "Release", "inherits": "Release", "description": "Visual Studio multi-config Release preset", "configurePreset": "VS_2022" }, { "name": "VS_ClangCL Debug", - "displayName": "Debug", "inherits": "Debug", "description": "Visual Studio multi-config Debug preset", "configurePreset": "VS_ClangCL" }, { "name": "VS_ClangCL Release", - "displayName": "Release", "inherits": "Release", "description": "Visual Studio multi-config Release preset", "configurePreset": "VS_ClangCL" }, { "name": "Xcode Debug", - "displayName": "Debug", "inherits": "Debug", "description": "Xcode multi-config Debug preset", "configurePreset": "Xcode" }, { "name": "Xcode Release", - "displayName": "Release", "inherits": "Release", "description": "Xcode multi-config Release preset", "configurePreset": "Xcode"