Proposal about content-size and hash

On Mon, 02 Nov 2020 18:54:32 +0000
prisonpotato at tilde.team wrote:
> This seems like a neat solution to this problem to me, but I'm not
> sure if it would work at this stage of gemini's life cycle.  There
> are also of course the issues with dynamically sized responses as
> generated by CGI scripts and stuff like that, so maybe we could
> introduce a new response code, like 22: Response with size.
> 
> 20 text/gemini
> 22 100 text/gemini
> 
> This solves both problems by making content length optional again,
> but exposes a risk that this type of extension could be used to add
> more fields

The protocol allows minimalist clients to parse only the first digit of
response code and handle it, if such thing were to be implemented,
those clients would break since they'd treat '2' as '20', so I'm not in
favor of that.

Not to mention how it will start complicate the protocol, since now it
is accepted for certain response codes to have an alternative header
instead of the unified one specified in the spec, this opens the door
for other feature seekers to want to have their own set of response
codes with custom headers, and the simple implementations of the
protocol that used to be are obsolete and now are required to handle
many many cases of custom headers.

If so many people are not satisfied with the protocol as is without an
insane amount of features, why don't you move to a different protocol
that satisfies your needs?  Or rather, define your own, the only reason
I'm interested in the Gemini protocol in the first place is the lack of
features, yet ever since I joined this community the majority of
discussion is all about feature proposals, why don't we get creative
with what we have?

Petite Abeille have suggested the use of message/external-body MIME
type defined in RFC 1873 for such thing, and I know this looks like an
ugly solution, Guess what? so is adding content length to response
headers, the protocol was designed to make it impossible to do such
thing, lets keep it that way.  And by the way, you could outsource
certain operations to external protocols if you really need that,
gemtext allows a clean way of specifying links to different protocol
schemes by design.

---

Previous in thread (33 of 48): 🗣️ Sean Conner (sean (a) conman.org)

Next in thread (35 of 48): 🗣️ Björn Wärmedal (bjorn.warmedal (a) gmail.com)

View entire thread.