Skip to content

Refactoring CI Build Steps#84

Merged
uilianries merged 113 commits into
taocpp:mainfrom
uilianries:cmake/targets
Nov 14, 2025
Merged

Refactoring CI Build Steps#84
uilianries merged 113 commits into
taocpp:mainfrom
uilianries:cmake/targets

Conversation

@uilianries

Copy link
Copy Markdown
Member

fixes #83

This PR brings new CMake features intro taoPQ, resulting in a more reliable and reproducible build.

I included a CMakePresets.json with several builds, which should be used by customers who only want to install taoPQ (e.g. unixlike-release), but also a more developer profile (e.g. msvc-debug-dev), which injects warning flag too.

The very same preset is used by the Github workflow as well, so who reports a bug, is able to run the exactly same profile without much effort.

The CI also is now updated, is all using those presets and some old builds, like Debug, are no longer present to accelerate and CI result. For libpq dependency, I added Conan in the CI steps, so we make sure we will always bring the exactly same library when building taoPQ in the CI, right now is locked to 17.5. All builds now are using Ninja as well, the result is a much faster build on Windows.

I also increased the sanitizer profiles used to test taoPQ, so far, all good.

The build for testing has been divided in integration, which requires a PQ instance running, and unit, which only does internal checks without a DB. I may help in case users are not able to run a DB but want to validate some part of the code. By default, is all enabled.

I also added an example folder, with the very basic getting started. At least, people will have a north how to consume taoPQ without reading the docs only.

The main CMakeList.txt has been reformulated as well, it uses PostgreSQL::PostgreSQL CMake target, the recommendation for CMake 3+. And the taopqConfig.cmake is now generated on the fly, no longer need a template as before.

Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
@codecov

This comment was marked as outdated.

@uilianries

This comment was marked as resolved.

Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
@uilianries uilianries marked this pull request as ready for review October 27, 2025 07:35
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Signed-off-by: Uilian Ries <uilianries@gmail.com>
@uilianries uilianries merged commit a8d84c7 into taocpp:main Nov 14, 2025
18 of 19 checks passed
@d-frey

d-frey commented Apr 23, 2026

Copy link
Copy Markdown
Member

I wanted to work on #82, only to find that the tests have been moved and therefore the basic Makefile we provide (and which is what I'm using instead of this CMake-...) is now broken.

d-frey added a commit that referenced this pull request Apr 23, 2026
d-frey added a commit that referenced this pull request Apr 23, 2026
d-frey added a commit that referenced this pull request Apr 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants