Hi darcs fellows,

Florent Becker and myself are proud to announce the second public release of 
Pijul, a new version control system aiming to be easy to learn and use, 
distributed, and fast.

Pijul is based on a theoretical model of patches described here. At the 
conceptual level, it merges concepts from category theory, and the patch theory 
developed by darcs. At the practical level, a number of new ideas allow for a 
quite fast system.

A lot has changed in this second release. Pijul has been completely rewritten 
in a new language, Rust. While rewriting, we have also focused on a more 
limited interface, to try and ensure correctness.


What we have
============

Here is what we have in this release (modulo bugs, of course):

-  Basic file system operations: add, remove, mv, ls.
-  Record, for text files only.
-  Conflict handling, at the line level.
-  Pull from local repositories, ssh and http.
-  Push to local repositories, ssh.
-  Repositories robust to hash function changes (see Layout of a repository).


What is missing
===============

The most crucially missing feature is unrecord, with rollback a close second, 
but there is no fundamental problem with this. Other features include 
blame/annotate, especially in the case of conflicts (this is probably an easy 
project to start contributing).

libpijul would probably also benefit from a cleaner code separation between 
algorithms and storage, which we are currently doing. For performance reasons, 
version 0.2 is tightly bound to LMDB, taking advantage of very specific 
features. However, some of the functions could easily be move out.

We’ve also started a “hub-like” project called the nest, to be released in the 
first semester of 2016.



Cheers,
Pierre-Étienne Meunier
_______________________________________________
darcs-users mailing list
darcs-users@darcs.net
http://lists.osuosl.org/mailman/listinfo/darcs-users

Reply via email to