[SPEC-CHANGE] Mandatory scheme in request and link URLs

Solderpunk solderpunk at posteo.net
Sun Nov 29 18:38:21 GMT 2020


Greetings Geminauts!

As per recent mailing list discovery, I've made a very small change to
the specification.  Previously, Gemini requests and links in text/gemini
documents could both omit the scheme, and servers/clients were expected
to add an implicit scheme of "gemini".  This has been changed and now
schemes are mandatory in URLs in both these contexts.

This is a trivial simplification of the spec, reflecting observations
from multiple people that schemeless URLs are both very rarely used and
very rarely understood (a leading "//" is required to disambiguate
schemeless URLs from relative URLs, but nobody knows that because
informal use of notation like gemini:// and https:// has caused us all
to mistakenly believe the "//" is associated with the scheme when it is
actually part of the authority).  The implicit scheme idea dates back to
very early stages of Gemini when I was unduly concerned with minimising
protocol overhead relative to Gopher.  As soon as mandatory TLS was
added, saving the 7 bytes of "gemini:" became of no practical concern
and getting rid of this idea just eliminates a confusing edge case.

On a related note, the spec was also changed in various places so that
it does not perpetuate the misunderstanding of URL structure by talking
about "a scheme of gemini://".

Server authors MAY update their servers to return status 59 ("bad
request") upon receipt of a request with no scheme in the URL, but this
should not be considered an urgent change, as leaving existing behaviour
of assuming a scheme of gemini in place could be considered a valid
application of Postel's law.

Client authors MUST update their clients so that if a user manually
enters a URL without a scheme, a scheme of gemini is included in the
request (many clients likely do this anyway).  Clients MAY treat
schemeless links in text/gemini documents as errors, but again assuming
a scheme of gemini may be considered a valid application of Postel's
law.

Authors of Gemini content or software which generates Gemini content
MUST add explicit schemes to any schemeless links.

Cheers,
Solderpunk



More information about the Gemini mailing list