Hello to anyone who's actively using hsh!
I wanted to let y'all know that there are several incompatible updates coming in hsh 0.2.0:
* hsh will no longer assume that it owns an entire repository. Instead, it will look for a .hsh file
to govern the root on initial clone or linking. This also means that it should become possible
to have a hsh notebook inside a Git repo you're using for other things, or to have multiple hsh
notebooks in a single repo. I'll make a command in hsh 0.2.0 that adds a .hsh file if it's missing,
but I don't plan to have that command survive into 0.3.0.
* hsh will begin creating new documents purely based on ULIDs (https://github.com/ulid/spec), not
pure datestamps. Because the creation date can be extracted from a ULID, hsh will still be able
to tell you when a note was initially created.
This last bit is a bit of an RFC: I want to get rid of nb's concept of stable index numbers, but I
also want to have a consistent way to refer to a note that's shorter than its entire filename. The
compromise to me seems to be to let you select by unique *suffix* of the ULID. For a small notebook,
that'll almost always be two characters. As time goes on, it'll expand to three. In this way, it's
not technically entirely stable, but it should be stable *enough* to allow muscle memory.
Feedback's welcome, but I'm likely to go the above route, in which case, 0.2.0 will also mean:
* hsh will stop showing notes with a short number, and instead begin showing notes with the minimum
unique suffix of the ULID.
* hsh will drop the entire concept of .index files. .pindex will stay around for now.
I'll clean up and land these changes in the next few days.
For hsh 0.3.0, I want to land some ability to link todos to Todoist and/or give hsh a concept of heavier-weight tasks, and I'd like to get at least *some* browsing support going and begin working
on hsh's concept of links and backlinks.
--Benjamin