Changelog
View SourceAll 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.
[0.2.0] - 2026-06-14
Added
- Added
ALGORITHMS.mdcompatibility matrix comparing Zog implementation status with YogEx. - Added
ROADMAP.mddetailing release milestones up to v0.5.0. - Included small sample of Wiki-Vote graph as a local test fixture (
test/fixtures/wiki_vote.txt) to replace hard-coded machine paths. - Proper docs groupings configuration for all entry points, generators, and algorithm helper modules in
mix.exs.
Changed
- Promoted
ziglerto a required dependency inmix.exs. - Bulk-updated stale
ziglerrecommended versions in NIF error fallback messages from~> 0.15.2to~> 0.16.0. - Renamed all public
is_reachable/3-4functions to follow Elixir idiomatic naming conventions:reachable?/3-4. - Replaced non-portable libc
clock_gettimewith Zig 0.16.0's cross-platformstd.Io.ClockAPI.
Fixed
- Fixed Zig native test suite compilation errors and invalid stack array frees in Tarjan connectivity tests.
- Resolved Dialyzer type-spec failures caused by referencing non-existent
Model.t()type instead ofSoA.t(). - Fixed memory leaks in
UnionFindinitialization on allocation failures in Kruskal's algorithm. - Fixed
ArrayGraph.transposestate corruption where tombstoned nodes inflated thelive_nodescount. - Fixed
edgeCountForNodeinArrayGraphto correctly ignore deleted edges. - Fixed latent
PriorityQueueAPI usage in native pathfinding modules (pq.add->pq.push). - Fixed a Use-After-Free thread safety issue: Thread spawn failures are now handled cleanly by joining already-running threads on error instead of detaching them.
- Fully resolved all
credostyle, alias ordering, and variable rebinding warnings. - Unified repository licenses by copying root Apache-2.0 to
priv/zog/LICENSE. - Fixed missing paths reference to
README.mdinpriv/zog/build.zig.zon.
Removed
- Removed the deprecated
add_simple_edge/3function (useadd_unweighted_edge/3instead).
[0.1.0] - 2026-06-11
Added
- Initial standalone extraction of native Zig NIF-based graph processing layer (
Zog). - Support for
ResourceGraphpattern avoiding copy-in/copy-out NIF serialization overhead. - Direct file parsing (
read_edgelist,read_adjlist,read_tgf) directly to native memory resources. - Bridging functions to/from
Yog(from_graph/1,to_graph/1). - Ported centrality, community, connectivity, flow, metrics, pathfinding, and properties modules.
- Verification and PBT test suite covering all modules.