💾 Archived View for rawtext.club › ~sloum › geminilist › 005330.gmi captured on 2024-03-21 at 16:42:41. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2021-11-30)

-=-=-=-=-=-=-

<-- back to the mailing list

Should Gemini clients alert users upon redirect?

Michael Lazar lazar.michael22 at gmail.com

Wed Feb 17 20:56:01 GMT 2021

- - - - - - - - - - - - - - - - - - - 

On Wed, Feb 17, 2021 at 4:18 AM Stephane Bortzmeyer<stephane at sources.org> wrote:

On Tue, Feb 16, 2021 at 10:52:47PM -0500,
Michael Lazar <lazar.michael22 at gmail.com> wrote
a message of 33 lines which said:
gemini://example.com and gemini://example.com/ are canonically the
same resource and should always return the same response.
Are you sure?
RFC 3986, section 6.2.3 says "In general, a URI that uses the generic
syntax for authority with an empty path should be normalized to a path
of "/"." Note the "in general". The rest of section 6.2.3 explains
that is is scheme-specific.
<gemini://gemini.circumlunar.space/docs/specification.gmi> seems
silent about "gemini:" rules. 1.2 says "The path, query and fragment
components are allowed and have no special meanings beyond those
defined by the generic syntax."
(The Lupa crawler currently normalizes <gemini://example.com> to
<gemini://example.com/> but I wonder if I'm right.)

That's an interesting point. Assuming the gemini spec is undefinedsimply because this edge case was not considered at the time (that Iam 99.9% sure of). Can you make an argument for why thisnormalization *should not* be adopted by gemini://?

The biggest advantage that I see is that we can use existing URLnormalization tools and libraries which, like it or not, are heavilybiased towards working with the http:// URL scheme.

Also, those URLs being the same means that I can always depend onusing "/" as the relative link for my root URL. If I had to worryabout them being semantically different, I would also want to be ableto use an empty string "" as a relative URL (which is valid as far asI can tell, see path-empty in section 4.2 the RFC). But looking at thetext/gemini specification for link lines:

=

[<whitespace>]<URL>[<whitespace><USER-FRIENDLY LINK NAME>]

A blank, relative <URL> will collapse into

=

[<whitespace><USER-FRIENDLY LINK NAME>]

which collides with the alternate form of

=

[<whitespace>]<URL>

- Michael