## Changelog for 3.0.0

This major release brings three headline changes: the causal module is promoted from pure Python to a
first-class C++ module (`CM`), structure learning is extended with PC, FCI (with PAG output),
GreedyThickThinning, and triangle deletions in GreedyHillClimbing, and a new native GUM serialization
format (`jgum` / `bgum`) is introduced for all graphical models. It also consolidates widespread API
modernisation (C++20 `std::format`, `string_view`, `optional_ref`, `std::optional`, `concepts`) and several
breaking renames detailed below. 

See changelog.txt and https://pyagrum.gitlab.io/blog/changelog_300 for more details.