Fix blossom server list parsing: treat plain BUD-03 server tags as upload-capable
This commit is contained in:
+15
-2
@@ -187,10 +187,23 @@ function parseBlossomListEvent(event) {
|
|||||||
const url = normalizeUrl(tag[1]);
|
const url = normalizeUrl(tag[1]);
|
||||||
if (!url) continue;
|
if (!url) continue;
|
||||||
|
|
||||||
|
// BUD-03 defines only `["server", "<url>"]` tags — there is no standard
|
||||||
|
// `upload`/`mirror` marker. A plain server tag means a general-purpose
|
||||||
|
// server that clients MUST upload to (BUD-03 "Client Upload
|
||||||
|
// Implementation"). The `upload`/`mirror` markers are a non-standard
|
||||||
|
// extension used by some clients (e.g. Amethyst) to express intent.
|
||||||
|
//
|
||||||
|
// Therefore: a server is upload-capable unless it is explicitly marked
|
||||||
|
// mirror-only. This keeps standard BUD-03 lists (no markers) working
|
||||||
|
// while still honoring explicit `mirror`-only entries.
|
||||||
|
const hasUploadMarker = tag.includes('upload');
|
||||||
|
const hasMirrorMarker = tag.includes('mirror');
|
||||||
|
const upload = hasUploadMarker || !hasMirrorMarker;
|
||||||
|
|
||||||
nextServers.push({
|
nextServers.push({
|
||||||
url,
|
url,
|
||||||
upload: tag.includes('upload'),
|
upload,
|
||||||
mirror: tag.includes('mirror'),
|
mirror: hasMirrorMarker,
|
||||||
healthy: false,
|
healthy: false,
|
||||||
warning: false,
|
warning: false,
|
||||||
healthStatus: 0,
|
healthStatus: 0,
|
||||||
|
|||||||
+3
-3
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"VERSION": "v0.7.106",
|
"VERSION": "v0.7.107",
|
||||||
"VERSION_NUMBER": "0.7.106",
|
"VERSION_NUMBER": "0.7.107",
|
||||||
"BUILD_DATE": "2026-09-17T15:17:21.161Z"
|
"BUILD_DATE": "2026-09-24T20:29:17.829Z"
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user