maemachinebroke
a195c3760c
cmd/pkgserver: add size
2026-04-18 11:30:56 -05:00
cat
cfe52dce82
cmd/pkgserver: expose size and store pre-encoded ident
...
This change also handles SIGSEGV correctly in newStatusHandler, and makes serving status fully zero copy.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
8483d8a005
cmd/pkgserver: look up status by name once
...
This has far less overhead.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
5bc5aed024
cmd/pkgserver: refer to preset in index
...
This enables referencing back to internal/rosa through an entry obtained via the index.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
9465649d13
cmd/pkgserver: handle unversioned value
...
This omits the field for an unversioned artifact, and only does so once on startup.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
33c461aa67
cmd/pkgserver: determine disposition route in mux
...
This removes duplicate checks and uses the more sound check in mux.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
dee0204fc0
cmd/pkgserver: format get error messages
...
This improves source code readability on smaller displays.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
2f916ed0c0
cmd/pkgserver: constant string in pattern
...
This resolves patterns at compile time.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
55ce3a2f90
cmd/pkgserver: satisfy handler signature in method
...
This is somewhat cleaner.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
3f6a07ef59
cmd/pkgserver: log instead of write encoding error
...
This message is unlikely to be useful to the user, and output may be partially written at this point, causing the error to be even less intelligible.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
02941e7c23
cmd/pkgserver: appropriately mark test helpers
...
This improves usefulness of test log messages.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
b9601881b7
cmd/pkgserver: do not omit report field
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
58596f0af5
cmd/pkgserver: gracefully shut down on signal
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
02cde40289
cmd/pkgserver: specify full addr string in flag
...
This allows greater flexibility.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
5014534884
cmd/pkgserver: make report argument optional
...
This allows serving metadata only without a populated report. This also removes the out-of-bounds read on args when no arguments are passed.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
13cf99ced4
cmd/pkgserver: embed internal/rosa metadata
...
This change also cleans up and reduces some unnecessary copies.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
6bfb258fd0
cmd/pkgserver: do not assume default mux
...
This helps with testing.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
cat
b649645189
cmd/pkgserver: create index without report
...
This is useful for testing, where report testdata is not available.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 11:30:56 -05:00
maemachinebroke
3ddba4e21f
cmd/pkgserver: add sort orders, change pagination rules
2026-04-18 11:30:56 -05:00
maemachinebroke
40a906c6c2
cmd/pkgserver: add /status endpoint
2026-04-18 11:30:56 -05:00
maemachinebroke
06894e2104
cmd/pkgserver: minimum viable frontend
2026-04-18 11:30:56 -05:00
maemachinebroke
56f0392b86
cmd/pkgserver: api versioning
2026-04-18 11:30:56 -05:00
maemachinebroke
e2315f6c1a
cmd/pkgserver: add get endpoint
2026-04-18 11:30:56 -05:00
maemachinebroke
e4aee49eb0
cmd/pkgserver: add count endpoint and restructure
2026-04-18 11:30:56 -05:00
maemachinebroke
6c03cc8b8a
cmd/pkgserver: add status endpoint
2026-04-18 11:30:56 -05:00
maemachinebroke
59ade6a86b
cmd/pkgserver: add createPackageIndex
2026-04-18 11:30:56 -05:00
maemachinebroke
59ab493035
cmd/pkgserver: add command handler
2026-04-18 11:30:56 -05:00
maemachinebroke
d80a3346e2
cmd/pkgserver: replace favicon
2026-04-18 11:30:56 -05:00
maemachinebroke
327a34aacb
cmd/pkgserver: pagination
2026-04-18 11:30:56 -05:00
maemachinebroke
ea7c6b3b48
cmd/pkgserver: basic web ui
2026-04-18 11:30:56 -05:00
cat
5647c3a91f
internal/rosa/meson: run meson test suite
...
Test / Create distribution (push) Successful in 1m2s
Test / Sandbox (push) Successful in 3m35s
Test / Hakurei (push) Successful in 4m38s
Test / ShareFS (push) Successful in 4m49s
Test / Sandbox (race detector) (push) Successful in 5m53s
Test / Hakurei (race detector) (push) Successful in 6m56s
Test / Flake checks (push) Successful in 1m16s
Tests requiring internet access or unreasonable dependencies are removed.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-19 01:07:20 +09:00
cat
992139c75d
internal/rosa/python: extra script after install
...
Test / Create distribution (push) Successful in 1m5s
Test / Sandbox (push) Successful in 2m49s
Test / Hakurei (push) Successful in 3m47s
Test / ShareFS (push) Successful in 3m52s
Test / Sandbox (race detector) (push) Successful in 5m20s
Test / Hakurei (race detector) (push) Successful in 6m24s
Test / Flake checks (push) Successful in 1m21s
This is generally for test suite, due to the lack of standard or widely agreed upon convention.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-19 00:35:24 +09:00
cat
57c69b533e
internal/rosa/meson: migrate to helper
...
Test / Create distribution (push) Successful in 1m2s
Test / Sandbox (push) Successful in 2m44s
Test / ShareFS (push) Successful in 3m47s
Test / Sandbox (race detector) (push) Successful in 5m15s
Test / Hakurei (race detector) (push) Successful in 6m25s
Test / Hakurei (push) Successful in 2m51s
Test / Flake checks (push) Successful in 1m21s
This also migrates to source from the Microsoft Github release.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-19 00:16:22 +09:00
cat
6f0c2a80f2
internal/rosa/python: migrate setuptools to helper
...
Test / Create distribution (push) Successful in 1m33s
Test / Sandbox (push) Successful in 3m18s
Test / Hakurei (push) Successful in 4m25s
Test / ShareFS (push) Successful in 4m29s
Test / Sandbox (race detector) (push) Successful in 5m46s
Test / Hakurei (race detector) (push) Successful in 6m54s
Test / Flake checks (push) Successful in 1m24s
This is much cleaner, and should be functionally equivalent.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-19 00:04:19 +09:00
cat
08dfefb28d
internal/rosa/python: pip helper
...
Test / Create distribution (push) Successful in 1m29s
Test / Sandbox (push) Successful in 3m12s
Test / ShareFS (push) Successful in 4m25s
Test / Sandbox (race detector) (push) Successful in 5m44s
Test / Hakurei (race detector) (push) Successful in 6m55s
Test / Hakurei (push) Successful in 2m39s
Test / Flake checks (push) Successful in 1m23s
Binary pip releases are not considered acceptable, this more generic helper is required for building from source.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-19 00:03:36 +09:00
cat
b081629662
internal/rosa/libxml2: 2.15.2 to 2.15.3
...
Test / Create distribution (push) Successful in 1m11s
Test / Sandbox (push) Successful in 3m3s
Test / ShareFS (push) Successful in 4m34s
Test / Sandbox (race detector) (push) Successful in 5m46s
Test / Hakurei (race detector) (push) Successful in 6m58s
Test / Hakurei (push) Successful in 2m27s
Test / Flake checks (push) Successful in 1m15s
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 09:05:49 +09:00
cat
fba541f301
internal/rosa/nss: 3.122.1 to 3.123
...
Test / Sandbox (push) Successful in 2m1s
Test / Create distribution (push) Successful in 1m1s
Test / Hakurei (push) Successful in 4m36s
Test / ShareFS (push) Successful in 3m3s
Test / Sandbox (race detector) (push) Successful in 5m19s
Test / Hakurei (race detector) (push) Successful in 6m43s
Test / Flake checks (push) Successful in 1m22s
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 09:05:23 +09:00
cat
5f0da3d5c2
internal/rosa/gnu: mpc 1.4.0 to 1.4.1
...
Test / Create distribution (push) Successful in 36s
Test / Sandbox (push) Successful in 3m5s
Test / Hakurei (push) Successful in 4m22s
Test / ShareFS (push) Successful in 3m55s
Test / Sandbox (race detector) (push) Successful in 5m46s
Test / Hakurei (race detector) (push) Successful in 7m2s
Test / Flake checks (push) Successful in 1m24s
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 09:04:33 +09:00
cat
4d5841dd62
internal/rosa: elfutils 0.194 to 0.195
...
Test / Create distribution (push) Successful in 44s
Test / Sandbox (push) Successful in 3m4s
Test / ShareFS (push) Successful in 4m32s
Test / Sandbox (race detector) (push) Successful in 5m41s
Test / Hakurei (race detector) (push) Successful in 6m53s
Test / Hakurei (push) Successful in 2m31s
Test / Flake checks (push) Successful in 1m20s
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 09:03:49 +09:00
cat
9e752b588a
internal/pkg: drop cached error on cancel
...
Test / Create distribution (push) Successful in 1m3s
Test / Sandbox (push) Successful in 2m45s
Test / Hakurei (push) Successful in 3m47s
Test / ShareFS (push) Successful in 3m54s
Test / Sandbox (race detector) (push) Successful in 5m17s
Test / Hakurei (race detector) (push) Successful in 6m22s
Test / Flake checks (push) Successful in 1m23s
This avoids disabling the artifact when using the individual cancel method. Unfortunately this makes the method blocking.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 03:24:48 +09:00
cat
27b1aaae38
internal/pkg: pending error alongside done channel
...
Test / Create distribution (push) Successful in 1m3s
Test / Sandbox (push) Successful in 2m44s
Test / ShareFS (push) Successful in 3m48s
Test / Hakurei (push) Successful in 3m52s
Test / Sandbox (race detector) (push) Successful in 5m21s
Test / Hakurei (race detector) (push) Successful in 6m28s
Test / Flake checks (push) Successful in 1m20s
This significantly simplifies synchronisation of access to identErr.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 03:10:37 +09:00
cat
9e18de1dc2
internal/pkg: flush cached errors on abort
...
Test / Create distribution (push) Successful in 1m2s
Test / Sandbox (push) Successful in 2m43s
Test / Hakurei (push) Successful in 3m49s
Test / ShareFS (push) Successful in 3m48s
Test / Sandbox (race detector) (push) Successful in 5m14s
Test / Hakurei (race detector) (push) Successful in 6m17s
Test / Flake checks (push) Successful in 1m17s
This avoids disabling the artifact until cache is reopened. The same has to be implemented for Cancel in a future change.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-18 02:59:44 +09:00
cat
b80ea91a42
cmd/mbf: abort remote cures
...
Test / Create distribution (push) Successful in 1m5s
Test / Sandbox (push) Successful in 2m53s
Test / Hakurei (push) Successful in 3m47s
Test / ShareFS (push) Successful in 3m50s
Test / Sandbox (race detector) (push) Successful in 5m17s
Test / Hakurei (race detector) (push) Successful in 6m21s
Test / Flake checks (push) Successful in 1m15s
This command arranges for all pending cures to be aborted. It does not wait for cures to complete.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 22:47:02 +09:00
cat
30a9dfa4b8
internal/pkg: abort all pending cures
...
Test / Create distribution (push) Successful in 1m4s
Test / Sandbox (push) Successful in 2m48s
Test / Hakurei (push) Successful in 3m48s
Test / ShareFS (push) Successful in 3m53s
Test / Sandbox (race detector) (push) Successful in 5m27s
Test / Hakurei (race detector) (push) Successful in 6m21s
Test / Flake checks (push) Successful in 1m31s
This cancels all current pending cures without closing the cache.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 22:40:35 +09:00
cat
8d657b6fdf
cmd/mbf: cancel remote cure
...
Test / Create distribution (push) Successful in 1m3s
Test / Sandbox (push) Successful in 2m43s
Test / Hakurei (push) Successful in 3m49s
Test / ShareFS (push) Successful in 3m50s
Test / Sandbox (race detector) (push) Successful in 5m20s
Test / Hakurei (race detector) (push) Successful in 6m19s
Test / Flake checks (push) Successful in 1m22s
This exposes the new fine-grained cancel API in cmd/mbf.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 22:00:04 +09:00
cat
ae9b9adfd2
internal/rosa: retry in SIGSEGV test
...
Test / Create distribution (push) Successful in 1m3s
Test / Sandbox (push) Successful in 2m47s
Test / Hakurei (push) Successful in 3m46s
Test / ShareFS (push) Successful in 3m48s
Test / Sandbox (race detector) (push) Successful in 5m10s
Test / Hakurei (race detector) (push) Successful in 6m19s
Test / Flake checks (push) Successful in 1m21s
Munmap is not always immediate.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 20:45:19 +09:00
cat
dd6a480a21
cmd/mbf: handle flags in serve
...
Test / Create distribution (push) Successful in 1m4s
Test / Sandbox (push) Successful in 2m47s
Test / ShareFS (push) Successful in 3m50s
Test / Sandbox (race detector) (push) Successful in 5m13s
Test / Hakurei (race detector) (push) Successful in 6m27s
Test / Hakurei (push) Successful in 2m38s
Test / Flake checks (push) Successful in 1m21s
This enables easier expansion of the protocol.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 20:14:09 +09:00
cat
3942272c30
internal/pkg: fine-grained cancellation
...
Test / Create distribution (push) Successful in 1m4s
Test / Sandbox (push) Successful in 2m46s
Test / Hakurei (push) Successful in 3m48s
Test / ShareFS (push) Successful in 3m49s
Test / Sandbox (race detector) (push) Successful in 5m16s
Test / Hakurei (race detector) (push) Successful in 6m34s
Test / Flake checks (push) Successful in 1m21s
This enables a specific artifact to be targeted for cancellation.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 19:33:21 +09:00
cat
9036986156
cmd/mbf: optionally ignore reply
...
Test / Create distribution (push) Successful in 1m3s
Test / Sandbox (push) Successful in 2m57s
Test / Hakurei (push) Successful in 3m52s
Test / ShareFS (push) Successful in 4m58s
Test / Sandbox (race detector) (push) Successful in 5m17s
Test / Hakurei (race detector) (push) Successful in 6m29s
Test / Flake checks (push) Successful in 1m47s
An acknowledgement is not always required in this use case. This change also adds 64 bits of connection configuration for future expansion.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 16:46:49 +09:00
cat
a394971dd7
cmd/mbf: do not abort cache acquisition during testing
...
Test / Create distribution (push) Successful in 1m15s
Test / Sandbox (push) Successful in 2m59s
Test / Hakurei (push) Successful in 3m58s
Test / ShareFS (push) Successful in 4m7s
Test / Sandbox (race detector) (push) Successful in 5m29s
Test / Hakurei (race detector) (push) Successful in 6m32s
Test / Flake checks (push) Successful in 1m22s
This can sometimes fire during testing due to how short the test is.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 02:06:51 +09:00