<feed xmlns='http://www.w3.org/2005/Atom'>
<title>hakurei/internal/pkg/dir_test.go, branch develop</title>
<subtitle>low-level userspace tooling for Rosa OS</subtitle>
<id>http://src.rosa.moe/hakurei/atom/internal/pkg/dir_test.go?h=develop</id>
<link rel='self' href='http://src.rosa.moe/hakurei/atom/internal/pkg/dir_test.go?h=develop'/>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/'/>
<updated>2026-06-03T07:00:36Z</updated>
<entry>
<title>internal/pkg: streaming archive reader/writer</title>
<updated>2026-06-03T07:00:36Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2026-06-03T06:51:43Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=42cea1e7c6d1ea0658e6b4d2a1f12f98b9c0dd22'/>
<id>urn:sha1:42cea1e7c6d1ea0658e6b4d2a1f12f98b9c0dd22</id>
<content type='text'>
This is much more robust and efficient than the simple buffering implementation for larger files. Allocations happen almost exclusively in WalkDir.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/pkg: improve output measuring</title>
<updated>2026-05-05T20:44:04Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2026-05-05T18:41:04Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=dfd26abf6c171fb7fb92ffd0091b539f38fcaf9c'/>
<id>urn:sha1:dfd26abf6c171fb7fb92ffd0091b539f38fcaf9c</id>
<content type='text'>
This significantly improves readability and maintainability.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/pkg: optionally suppress via assumed checksum</title>
<updated>2026-04-03T11:33:59Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2026-04-03T11:33:59Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=9feac7738f5dbe9f2f32cfa297582d3b520cb049'/>
<id>urn:sha1:9feac7738f5dbe9f2f32cfa297582d3b520cb049</id>
<content type='text'>
This is quite error-prone and causes cache inconsistency similar to the store inconsistency seen on nix when a similar condition happens. Keep this behind a flag in case it is ever beneficial.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/uevent: synthetic events for coldboot</title>
<updated>2026-03-30T14:01:08Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2026-03-30T12:20:42Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=f03c0fb249ea8787ae8ec086970eb089109ebf6f'/>
<id>urn:sha1:f03c0fb249ea8787ae8ec086970eb089109ebf6f</id>
<content type='text'>
This causes the kernel to regenerate events that happened before earlyinit started.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/pkg: standardise artifact IR</title>
<updated>2026-02-04T23:24:09Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2026-02-04T05:41:18Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=e0c720681bbce364910df241658dc987851e579a'/>
<id>urn:sha1:e0c720681bbce364910df241658dc987851e579a</id>
<content type='text'>
This should hopefully provide good separation between the artifact curing backend implementation and the (still work in progress) language. Making the IR parseable also guarantees uniqueness of the representation.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/pkg: encode checksum in ident</title>
<updated>2026-01-27T11:18:34Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2026-01-27T10:27:18Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=968d8dbaf14fa0e7965a8a525d74a2d8d6a20c50'/>
<id>urn:sha1:968d8dbaf14fa0e7965a8a525d74a2d8d6a20c50</id>
<content type='text'>
This also rearranges the ident ir to be more predictable, and avoids an obvious and somewhat easy to get into inconsistent state.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/pkg: make checksum available to cure</title>
<updated>2026-01-19T12:29:56Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2026-01-19T11:10:51Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=d933234784bf3bd511869d55fb145dc1d9601ce1'/>
<id>urn:sha1:d933234784bf3bd511869d55fb145dc1d9601ce1</id>
<content type='text'>
This enables deduplication by value as implemented in execArtifact.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/pkg: parallelise scrub</title>
<updated>2026-01-15T17:47:59Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2026-01-15T17:09:12Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=5936e6a4aab541a437fa9464468b51f91d019a2a'/>
<id>urn:sha1:5936e6a4aab541a437fa9464468b51f91d019a2a</id>
<content type='text'>
This significantly improves scrubbing performance. Since the cache directory structure is friendly to simultaneous access, this is possible without synchronisation.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/pkg: do not discard the result of compact</title>
<updated>2026-01-10T19:40:24Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2026-01-10T19:40:24Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=63e137856e47bb9cb472fc58ee6ea0b2e6c666b8'/>
<id>urn:sha1:63e137856e47bb9cb472fc58ee6ea0b2e6c666b8</id>
<content type='text'>
This result was mistakenly unused resulting in incorrect identifiers for artifacts with duplicate dependencies.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/pkg: move dependency flooding to cache</title>
<updated>2026-01-08T20:20:34Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2026-01-08T16:51:39Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=f7124667145d1f7c614d9fc644bc07bb6174454a'/>
<id>urn:sha1:f7124667145d1f7c614d9fc644bc07bb6174454a</id>
<content type='text'>
This imposes a hard upper limit to concurrency during dependency satisfaction and moves all dependency-related code out of individual implementations of Artifact. This change also includes ctx and msg as part of Cache.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
</feed>
