Skip to content
go-libfossil Check-in [f5744359d3]
Login

Check-in [f5744359d3]

Overview
Comment:Initial open source release

libfossil is a pure-Go implementation of the Fossil SCM, reading and writing the same .fossil SQLite repository format as upstream Fossil.

This is the first public release of code that previously lived in a private repository. The module path is github.com/danmestas/libfossil and the binary is named libfossil to avoid $PATH collisions with upstream fossil.

Included: - Repo lifecycle (create, clone), checkout/checkin, timeline, merge, diff, annotate, shun, tag, branch, bisect, stash, undo/redo - Sync-over-HTTP protocol (client and handler) - Two SQLite drivers: modernc (pure Go, default) and ncruces (wasm-capable) - Observer interfaces (SyncObserver, CheckoutObserver) with an optional OpenTelemetry implementation in observer/otel (separate submodule) - Deterministic simulation testing harness with BUGGIFY fault injection - Kong-based embeddable CLI under cli/ and a standalone binary under cmd/libfossil/

Timelines: family | descendants | trunk
Files: files | file ages | folders
SHA3-256: f5744359d398b147e67426a20e96bdbb4027b7077721126eddeab26cd9a32213
User & Date: [email protected] on 2026-04-19 16:30:54.000
Other Links: manifest | tags
Context
2026-04-19
16:46
chore: remove replace directives for go install compatibility

Replace blocks in published go.mod files are ignored by consumers but cause `go install @v0.1.0` to fail module resolution. Local development continues to work via go.work, which substitutes workspace modules without requiring go.mod replace entries.

Also add observer/otel to the workspace for consistent local builds. check-in: 71751cf461 user: [email protected] tags: trunk, db/driver/modernc/v0.1.0

16:30
Initial open source release

libfossil is a pure-Go implementation of the Fossil SCM, reading and writing the same .fossil SQLite repository format as upstream Fossil.

This is the first public release of code that previously lived in a private repository. The module path is github.com/danmestas/libfossil and the binary is named libfossil to avoid $PATH collisions with upstream fossil.

Included: - Repo lifecycle (create, clone), checkout/checkin, timeline, merge, diff, annotate, shun, tag, branch, bisect, stash, undo/redo - Sync-over-HTTP protocol (client and handler) - Two SQLite drivers: modernc (pure Go, default) and ncruces (wasm-capable) - Observer interfaces (SyncObserver, CheckoutObserver) with an optional OpenTelemetry implementation in observer/otel (separate submodule) - Deterministic simulation testing harness with BUGGIFY fault injection - Kong-based embeddable CLI under cli/ and a standalone binary under cmd/libfossil/ check-in: f5744359d3 user: [email protected] tags: trunk

Changes
Added .gitignore version [7435888e01].
Added CHANGELOG.md version [ad0d4787d5].
Added CONTRIBUTING.md version [357da160ac].
Added LICENSE version [d967ce7402].
Added Makefile version [92e0ff6d49].
Added README.md version [7fd7fac7a9].
Added checkout.go version [4fd126f6b1].
Added cli/repo.go version [739d65a19d].
Added cli/repo_add.go version [62ac014a3a].
Added cli/repo_cat.go version [a9cb373d04].
Added cli/repo_ci.go version [b2e334708c].
Added cli/repo_co.go version [3296f9fb36].
Added cli/repo_ls.go version [6f57d45721].
Added cli/repo_new.go version [4acffbcbc4].
Added cli/repo_rm.go version [a8b12a6d53].
Added cli/repo_tag.go version [f551674ba5].
Added cli/repo_uv.go version [583d0d2811].
Added cli/shared.go version [e2831626a7].
Added db/config.go version [f4bccb5a5b].
Added db/db.go version [fb745416f5].
Added db/db_test.go version [0919407ce5].
Added db/doc.go version [693ccc535c].
Added db/querier.go version [51ef51c044].
Added db/register.go version [2ee97983aa].
Added db/scan.go version [be8f9c6a93].
Added db/schema.go version [33c9cf4e28].
Added docs/testing.md version [896f174b99].
Added dst/e2e_test.go version [7f895b7fa0].
Added dst/event.go version [bf63450729].
Added dst/network.go version [3ec5f29ee9].
Added dst/node.go version [ddbfbe9a53].
Added errors.go version [8f46011b8b].
Added errors_test.go version [4e1346a43f].
Added fossil.go version [97c979aa1f].
Added fossil_test.go version [a76d7abbb4].
Added go.mod version [95554a7e37].
Added go.sum version [fe301fe60a].
Added go.work version [23d9e313b0].
Added go.work.sum version [a1c8c78396].
Added julian.go version [3644e82a37].
Added julian_test.go version [68dc929b65].
Added observer.go version [43fc547a68].
Added repo.go version [ee5ab7354c].
Added repo_admin.go version [c0d1cf6f52].
Added repo_extras.go version [9879abbdf4].
Added repo_history.go version [2564fc45ba].
Added repo_merge.go version [4022697649].
Added repo_sync.go version [cc78b2a766].
Added simio/clock.go version [6a6e8d410c].
Added simio/env.go version [572df6dd05].
Added simio/rand.go version [9af404eba1].
Added transport.go version [91e6d6e3d1].
Added types.go version [ce60e78be3].
Added types_test.go version [7e000480ba].