Login
Changes To home
Login

Changes to "home" between 2022-05-12 09:29:23 and 2024-06-19 17:37:30

1
2
3
4
5
6
7
8
9
10
11
12
13


14
15
16
17
18
19
20
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22













+
+







# libfossil: The (Unofficial) Fossil SCM Library API

(If you are reading this via [fossil-scm.org](https://fossil-scm.org/), be aware that that's a read-only mirror. The canonical home is [](https://fossil.wanderinghorse.net/r/libfossil).)

See also: [](TODOs), [](download), [](building), [f-apps][],
[DB functions](/doc/ckout/doc/db-udf.md), [](SQLSnippets), [](HackersGuide),
[doxygen docs][doxygen-docs] (refreshed from current sources relatively frequently)

This source code repository houses an in-development C99-compliant library API for the [Fossil SCM][home-fossil]. The primary goal of this project (which is not part of the main Fossil SCM project but is architected by a long-time Fossil contributor) is to port existing behavior into a library form (the fossil app is extremely monolithic in nature). This effort intends to provide an alternative interface into fossil repositories, as opposed to a replacement for the core fossil application. It does not aim to provide 100% feature-parity with the main app - see [](TODOs) for details about features which are considered out of scope or otherwise unlikely. It's instead intended to support the creation of new ways to access and manipulate fossil repositories. The [f-apps][] page demonstrates what features are currently ported over.

The library has reached feature parity with Fossil's core-most SCM features, and can already be used to create a wide range of custom mini-applications, e.g. custom reporting apps or custom timeline apps are trivial to create using the "fcli" API: see the [f-apps][] for numerous examples.

**[The fnc project][fnc] offers an ncurses-based front-end to browsing fossil repositories**, powered by libfossil. fnc is developed closely with this project and a copy of fnc is included in this source tree (and vice versa: the [libfossil amalgamation](AmalgamationBuild) is included in that tree), but that remote one is the canonical version.

**Maintainer:** this project is primarily maintained by [Stephan Beal](https://wanderinghorse.net/home/stephan/), a long-time Fossil contributor.

**License:** same as Fossil: the "2-Clause BSD" a.k.a. "FreeBSD License".


# Update Feb. 2021: Back from the Dead

After a 6-year forced hiatus due to chronic RSI, libfossil is again making some headway. In early Feb. 2021 its hashing support was brought up to date with regard to fossil's hardened SHA1 and SHA3-256 hashes. That was the major technical hurdle preventing further progress, so now they way is clear (or clearer) for bringing the library into the 2020's.