16 lines
1.5 KiB
Text
16 lines
1.5 KiB
Text
Meta(
|
|
title: "Yak Shaving",
|
|
summary: None,
|
|
published: None,
|
|
tags: [
|
|
"software",
|
|
"programming",
|
|
"rust",
|
|
],
|
|
)
|
|
---
|
|
It's funny the little tangents I'll go on sometimes when I'm working on a project. I have a bad NIH complex at times which is getting worse in relation to Rust. Often this is spurred on because I actually care about binary sizes and dependency graphs, so I will gladly reinvent a few wheels in order to trim out some bloat in both of those regards.
|
|
|
|
I've gotten my little archiver, Haggis, working pretty well now. At least the Rust implementation is working and pretty well tested. I have a tested C library called SeaHag which is fairly complete, just in need of a binary to complete the proof of concept. I also have a Zig implementation which is nearly as complete as the C one, which is to say I've spent way too much time farting around. But I did actually begin working a bit more towards building my package manager for HitchHiker, which was after all the goal here. Then I went down another rabbit hole.
|
|
|
|
I wanted some really flexible versioning for my package manager. You can *mostly* count on open source projects to use SemVer, but there are jackasses like Mozilla who like to just give you a single number as the version, and there's even a few shops that like to give you a four number version of SemVer. Then there's the need account for pre-releases, and properly order them. I went so far as to enable using a Git revision as a pre-release, and that's when the rabbit hole opened up again.
|