[SPEC-CHANGE] Mandatory scheme in request and link URLs
Sean Conner
sean at conman.org
Mon Nov 30 10:07:23 GMT 2020
It was thus said that the Great Björn Wärmedal once stated:
> On the topic of explicit scheme in gemtext links I have one opinion
> and one question.
>
> Opinion: when cross-hosting between the web and geminispace I think
> the publisher can reasonably be expected to run a search-replace. If I
> host on both https://tilde.team/~ew0k/ and gemini://tilde.team/~ew0k/
> I can easily make sure to replace that particular line in links. I see
> that there may be an issue if I link to someone else who also
> cross-posts, though... I'm willing to admit that the scheme should NOT
> be required in gemtext links.
>
> Question: How does this work with relative links in gemtext documents?
Luke Emmet mentioned this, but I think it got lost. In text/gemini, the
following are all legal links:
=> gemini://example.net/path/foo.gemini Absolute URL - fully specified
=> //example.net/path/foo.gemini relative URL - no scheme
=> /path/foo.gemini relative URL - no host
=> foo.gemini relative URL - no path
=> ../path/foo.gemini relative URL - relative
It is up to the client to resolve these, using rules specified in RFC-3986
section 5.2.
What Solderpunk just changed was the request *TO* a Gemini server. It
used to be the following two forms were allowed when making a request to a
Gemini server:
gemini://example.net/path/foo.gemini
//example.net/path/foo.gemini
This was confusing, and so the schemeless format is no longer allowed when
making a request to a Gemini server. The only form that is now allowed when
making a request to a Gemini server is:
gemini://example.net/path/foo.gemini
-spc
More information about the Gemini
mailing list