A recent change introduced a new structure in Pijul repositories, allowing one to merge unrelated repositories while preserving commutation across the different source repos.
Where I outline the design of tags in Pijul, which are a first step towards a more general hybrid snapshot/patch version control system. The Sanakirja tricks presented here can also be applied outside the context of Pijul, to create efficient compressed databases.
We just released Pijul 1.0.0-alpha.52, which includes a pretty cool change: short patches on binary files.
In this post, I announce the final changes to the repository and changes formats before we declare Pijul “1.0 beta”.
Almost three months ago, a fire started in the datacenter that hosted this website, as well as nest.pijul.com. In this post, I try to reflect on what that meant for us, and the consequences it had.
Sanakirja is a key-value store based on B trees, written in Rust. In this post, I reflect on some design and programming methodology mistakes I’ve made. Benchmarks show that the latest version beats LMDB, the fastest C equivalent, by 20%-50% on a use case similar to my most common load (storing graphs in Pijul).
I just finished implementing a non-trivial bit of Pijul: cross-process locks for Sanakirja databases. In this post, I explain how it works.
Since we released the alpha version of Pijul 1.0 two months ago, a lot of things have happened. In this post, I want to share some of them, and give a roadmap for the next few weeks or months.
I just finished the implementation of an important feature of Pijul: clones, pushes and pulls on partial repositories. In this post, I explain why this matters.
This is a guest post by Arijit Dey, introducing a cross-platform paging crate he wrote, which will allow Pijul to work equally on all platforms.
After fixing the performance and scalability problems, we’re on our way to getting a stable Pijul. In this post, I explain what I’ve been up to in the recent months.
We released Pijul 0.12 yesterday. This is a really exciting time for the project, as we have reasons to believe that all the algorithms are now in a pretty good shape.
I just fixed a few remaining bugs in Sanakirja, the database backend behind Pijul, and took the opportunity to update its concurrency model.
I’d like to announce a new release of Pijul, version 0.11. This release fixes a large number of bugs, follows evolutions in the Rust ecosystem (Tokio), integrates better with existing software (SSH proxys and config files), and introduces an important feature of Pijul: /partial clones/.
I’m pleased to announce the new release of Pijul, version 0.10. This release has been a long time coming, but brings in an important number of new features and stability enhancements.
buildRustCrate
is a tool I wrote in the Nix
programming language to share build products across crates and across
versions of a single crate when compiling Rust code. The initial
motivation was to speed up deployment times when working on large
projects with lots of dependencies, such as the
Pijul Nest.
I’d like to announce a new version of Thrussh, which will hopefully solve a number of problems people have been having with SSH support in Pijul.
We’re proud to announce a new release of Pijul: version 0.8.
As nest.pijul.com is slowly stabilising, I’d like to blog about a few lessons learnt during its development so far.
Today, we released a new version of Pijul. Still alpha, but lots of updates. Also, still GPL2+ (as in version 0.3, but unlike before).
We’ll release a usable version of Pijul later today. Pijul itself is in an alpha stage, but is based on a number of other things we’ve needed to write, among which a key-value store known as Sanakirja.
After several months of silence, I’m pleased to announce that we are starting to test the first usable version of Pijul.
I’ve recently written an SSH library called Thrussh, and I’ve also started to use it for actual tasks like replacing the SCP client in Pijul.
I’m blogging live from the first Pijul sprint, at the Aalto Design Factory in Helsinki. Feel free to stop by and say hello if you’re around!
Now that Sanakirja is in a usable state, the main operation before we can start to use Pijul for other purposes than tests is to plug Sanakirja in. This post describes our strategy for doing this, and the difficulties we’ve had.
We’re happy to announce the first joint sprint with the darcs team, which will take place on May 6th, 7th and 8th in Helsinki, Finland. If you’re interested in using and/or learning Rust and Haskell, come hack with us!
I just finished Sanakirja 0.2, available from our darcs repository, and soon on crates.io.
I announced Sanakirja, our new database backend, on reddit and twitter, but so far I had not had the time to blog about it. This post explains some of the ideas behind this new crate.
Since our release of Pijul 0.2, I’ve been working mostly on the biggest feature of Pijul 0.3: branches. In this post, I try to explain the current plan.
We’re 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.