Skip to content

rhalbersma/tabula

Repository files navigation

Board game utilities

Language Standard License GCC MinGW Clang AppleClang Clang-CL MSVC Coverage OpenSSF Scorecard

Requirements

This single-header library has no other dependencies than the C++ Standard Library and is continuously being tested with the following conforming C++23 compilers, against all three mainstream standard libraries (libstdc++, the MSVC STL, and libc++). Following the model of apt.llvm.org, we support the latest two stable releases of each compiler, plus its current development branch.

Platform Compiler Older stable Latest stable Trunk / Preview Build
Linux GCC 15 16 17-SVN GCC
Linux Clang 21 22 (also libc++) 23-SVN Clang
macOS AppleClang 17.0.0 (Xcode 16.4) 21.0.0 (Xcode 26.5) AppleClang
Windows MinGW 15 16 17-SVN MinGW
Windows Clang-CL 19.1.5 (VS 2022) 20.1.8 (VS 2026) Clang-CL
Windows MSVC 2026 2026-Preview MSVC

MSVC currently fails outright on an ambiguous partial-specialization bug (basic_compass<chequer{...}>), fixed upstream in VS 18.7.0 but not yet present on GitHub Actions' runner image (actions/runner-images#14130 tracks a bump to 18.6.x, still short of the fix). MSVC is not a required PR status check, so this failure is visible but doesn't block merging.

Note that the unit tests depend on Boost.

Installation

# Setup the project
mkdir projects && cd ~/projects/
git clone https://github.com/rhalbersma/tabula.git
cd tabula && mkdir build && cd build

# Build the project
cmake .. && cmake --build .
ctest                       # run the unit tests
example/print_embeddings    # print out all the predefined boards

Acknowledgments

Special thanks to Fabien Letouzey for a very fruitful exchange of ideas.

License

Copyright Rein Halbersma 2019-2025. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

About

Board game utilities

Topics

Resources

License

Security policy

Stars

3 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors