Changelog¶
- Author:
Changelog¶
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.1.0 - 2026-03-29¶
Added¶
XTBPot: GFN tight-binding potential via xtb (GFNFF, GFN0, GFN1, GFN2). Feature-gated with
-Dwith_xtb=true. (#35)TBLitePot: GFN tight-binding potential via tblite (GFN1, GFN2, IPEA1). Feature-gated with
-Dwith_tblite=true. (#36)MetatomicPot: ML atomistic models via metatomic/PyTorch with autograd forces and vesin neighbor lists. Feature-gated with
-Dwith_metatomic=true. (#37)Shared unit conversion header (
rgpot/units.hpp) with CODATA 2018 physical constants for Angstrom/Bohr, Hartree/eV, and Boltzmann conversions. (#38)
1.0.3 - 2026-03-01¶
Fixed¶
MSVC/clang-cl compatibility: use
/W3instead of GCC/Clang warning flags and skip-lstdc++link arg on Windows (#31)
1.0.2 - 2026-03-01¶
Added¶
External integration guide covering namespace collision mitigation when embedding rgpot as a subproject (#30)
Changed¶
CI dependency bumps and cleanup to prevent trailing whitespace in generated headers (#29)
1.0.0 - 2026-02-15¶
Added¶
doc(arch): add architecture guide covering layer diagram, error conventions, and how to register new potentials
feat(build): add release CI workflow, meson subproject install guards, CMake FetchContent readiness, and package version config
feat(cache): add a RocksDB integration
feat(ci): add
rust_testsjob using cargo-nextest on Ubuntu and macOS with default and--all-featuresconfigurationsfeat(cpp): add C++ RAII wrappers (
include/rgpot/) —PotentialHandle,InputSpec,CalcResult,RpcClient,Error, with full Doxygen documentationfeat(rpc): add feature-gated Cap’n Proto RPC client and server in Rust, sharing the existing
Potentials.capnpschema with the C++ sidefeat(rpc): initialize a C style integration to the server
feat(rpc): initialize a server component
feat(rust): add Rust core library (
rgpot-core/) with#[repr(C)]types, callback-based potential dispatch, status codes, thread-local error handling, and auto-generated C header via cbindgenfeat(rust): integrate DLPack tensor exchange protocol via
dlpkcrate — core types now useDLManagedTensorVersioned*for device-agnostic data exchange, with borrowed (non-owning) and owned tensor helpers in newtensormoduletest(rust): add 39 unit tests covering types, status codes, potential lifecycle, C API, null-pointer handling, error propagation, and
free_fninvocation
Changed¶
chore(build): add Meson
with_rust_coreoption,rust-test/rust-test-allpixi tasks, andcargo-nextestdependency
Fixed¶
fix(cpp): remove incorrect
extern "C"trampolines fromLJPot.hppandCuH2Pot.hppthat used rawintreturns andvoid*params; use typedPotentialHandle::from_impl<>()template instead
0.0.1 - 2024-01-26¶
Added¶
Initial release with C++ core: Lennard-Jones and CuH2 EAM potentials.
CRTP-based
Potential<Derived>template with optional caching.Cap’n Proto RPC server and client bridge.
Meson and CMake build systems.
CI build matrix (Meson/CMake x Linux/macOS x RPC/Cache feature flags).
RPC integration tests and client bridge stress tests.