92 Commits

Author SHA1 Message Date
11ed6d5a0f fix(rpath): fixed macos RPATH bug 2026-06-11 12:21:32 -04:00
e88d89e71e build(meson): more robust python build mode 2026-06-11 10:56:54 -04:00
92795f8f5a build(header_install_dir): added header_install_dir option
this is useful for wheel builds
2026-06-11 09:36:34 -04:00
898c5285da docs(version): v2.2.6 -> v2.2.7
this version adds lib_install_dir option
2026-06-11 09:03:44 -04:00
b08ab17cd6 build(lib_install_dir): added lib_install_dir option
This option overrides where reflect-cpp is installed. This is useful for wheel builds
2026-06-11 09:03:09 -04:00
f67e164280 Merge pull request #5 from tboudreaux/main
Robust and Sandboxed Installation of vendor headers and libraries
2026-06-05 18:04:37 +02:00
fcafa5679b docs(version-+-docs): v2.2.5 -> v2.2.2
This version brings the more robust system to system install scheme, sandboxed vendor libraries at install time, and documentation of these locations in the readme
2026-06-05 16:02:43 +00:00
2f7d900840 build(install): vendored install directories
all vendor libraries are all now installed in a contained vendor folder and in a way which is compatible with libconfig being used as a subproject
2026-06-05 15:57:40 +00:00
2b8a4bd60f build(vendor): vendor libraries now install in a dedicated directory
We now install vendor libraries into includedir/fourdst/vendor to avoid conflicts with user installed libraries. Note that currently this only applies to headers and not compiled shared libraries

BREAKING CHANGE:
2026-06-05 11:36:42 +02:00
3937a2b828 build(vendor-libraries): update install to be more reliable
vendor libaries for libconfig are now properly installed so linking can be done reliably
2026-06-05 11:19:17 +02:00
5adadc2f41 docs(version): v2.2.3 -> 2.2.4
This version brings a more unified header install path

BREAKING CHANGE: This version changes the header install path from includedir/fourdst/fourdst to includedir/fourdst. This is inline with other changes made to the other lib* modules in fourdst
2026-06-05 10:09:19 +02:00
ddb2ccb99c build(headers): updated header install paths and base header 2026-06-05 10:08:14 +02:00
ff197790e3 Merge branch 'main' of github.com:4D-STAR/libconfig 2026-06-05 09:08:36 +02:00
89823e7882 docs(version): version bump v2.2.2 -> v2.2.3
this patch fixes the case issue with CLI11
2026-06-05 09:08:12 +02:00
104228b737 Merge pull request #4 from tboudreaux/main
fix(CLI11): Resolved case issue with CLI11
2026-06-05 09:05:43 +02:00
97a21b1ed3 fix(CLI11): Resolved case issue with CLI11
There was a case issue with the meson build files for CLI11 in libconfig, this has been resolved in this patch
2026-06-05 09:04:22 +02:00
bc6b5886cd style(base): marked default instance as [[maybe_unused]] 2026-04-07 12:28:36 -04:00
715b16a9e3 docs(docs): rebuilt 2026-04-07 10:05:30 -04:00
f75c41317c fix(ansi.h): fixed multi symbol export
supports_ansi_colors has been marked inline to allow its use in multiple translation units
2026-04-07 10:05:05 -04:00
b9cd60c35c Merge pull request #3 from tboudreaux/fix/fallback_read
Robust Error Handling and Mutation
2026-04-07 09:30:32 -04:00
65aa39048f docs(docs): rebuilt 2026-04-07 09:28:58 -04:00
d4bbd9cb3a feat(loading): robust error reporting and mutation
cfg now reports which fields are missing when loading. Further, the mutate method has been added for easier mutation of the underlying configuration struct
2026-04-07 09:28:27 -04:00
46dce35eaf docs(docs): rebuilt with proper styling 2026-02-02 08:47:02 -05:00
39470207a3 Merge pull request #2 from tboudreaux/feature/AutoUX
Feature/auto ux
2026-02-02 08:43:37 -05:00
11e5543976 docs(docs): built doxygen docs 2026-02-02 08:42:30 -05:00
68cba402f3 feat(CLI): CLI integration with CLI11
libconfig can automatically generate command line interfaces using CLI11 based on some schema
2026-02-02 08:41:47 -05:00
b034fb6746 fix(tests): added threads as a dep, required for linux building 2026-01-31 10:35:57 -05:00
e5c9b028fb fix(tomlplusplus): statically linked into reflectC++
Previously tomlplusplus was built as a shared library but not installed. Now it is statically linked into reflectc++ which was already built as a static library
2026-01-31 08:32:06 -05:00
63a78debae docs(version): version bump v2.0.2 -> v2.0.3
this version disables installing the static lib for reflect-cpp which is not needed since its statically linked and was breaking python installations due to an inability to map the static lib to a path in the wheel
2025-12-20 14:45:23 -05:00
1534e83622 build(reflect-cpp): disable installing static lib 2025-12-20 14:44:17 -05:00
071b78afd7 docs(meson): version bump v2.0.1 -> v2.0.2
this version switches from glaze to reflect cpp
2025-12-06 10:57:04 -05:00
2b4ae17df0 build(gitignore): added tomlplusplus to gitignore 2025-12-06 10:56:31 -05:00
ec13264050 feat(reflect-cpp): Switched from glaze -> reflect cpp
A bug was discovered in glaze which prevented valid toml output. We have
switched to toml++ and reflect-cpp. The interface has remained the same
so this should not break any code
2025-12-06 10:55:46 -05:00
2b5abeae58 docs(readme): added logo and more detail 2025-12-06 08:31:31 -05:00
2a687ec512 fix(glaze): Disable dev mode
Glaze dev mode brings in boost as a dependency. We are trying to remove
boost as a dependencty due to its weight. We disable dev mode to relax
this dependency requirment
2025-12-06 08:11:41 -05:00
47761aaa3d Merge pull request #1 from tboudreaux/feature/reflect
libconfig v2.0.0
2025-12-05 14:52:04 -05:00
64206ccd42 docs(meson): version (v1.0.4 -> v2.0.0)
This change brings the entirley new handling of config based on glaze and using toml

BREAKING CHANGE: All previous code which uses libconfig will no longer work with this new version
2025-12-05 14:28:19 -05:00
05b7b94c83 feat(TOML & Glaze): YAML -> TOML
YAML is a horrid format with far too many edge cases. We have switched
to TOML. Further, we have completly reworked the framework so that

1. There is no longer any global config state. Config objects now must
be passed between scopes by the caller. This will introduce some more
friction but whill also make order of initialization clear
2. Config objects are now strongly typed and there is a single sourth of
truth for any given config object baked in using the some struct.
2025-12-05 14:26:22 -05:00
1a7f4837c6 build(wasm): libconfig now builds and works in wasm 2025-12-03 08:54:33 -05:00
067a3a0d51 fix(yaml-cpp): added proper meson install dir handling 2025-08-11 12:32:04 -04:00
e71bf478d6 build(yaml-cpp): added patch to add cstdint to emitterutils 2025-07-29 08:47:23 -04:00
7dfeb0e088 build(yaml-cpp): disabled yaml-cpp shadow warnings 2025-07-24 08:24:27 -04:00
362055bf05 build(meson.build): added option to disable pkg-config file generation 2025-07-22 13:28:57 -04:00
22980b5240 fix(yaml-cpp): meson_source_root -> global_source_root 2025-06-22 05:52:55 -04:00
29c4fe3abb fix(meson): version bump 2025-06-22 05:30:58 -04:00
299612af7d fix(yaml-cpp): yaml-cpp now installs headers as well to allow for external project linking 2025-06-22 05:30:09 -04:00
07f1e8d7d7 fix(headers): moved all headers to fourdst/ 2025-06-22 04:52:04 -04:00
cfbb7d23e5 fix(header): fixed 2025-06-21 16:45:47 -04:00
fa6209e8f3 feat(headers): moved 2025-06-21 16:17:34 -04:00
9a7dd54099 feat(headers): update header install paths 2025-06-21 16:12:21 -04:00