Deutsch   English   Français   Italiano  
<mailman.29.1745419807.3008.python-list@python.org>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!news.mixmin.net!news.swapon.de!fu-berlin.de!uni-berlin.de!not-for-mail
From: "Henry S. Thompson" <ht@inf.ed.ac.uk>
Newsgroups: comp.lang.python
Subject: Re: Module urljoin does not appear to work with scheme Gemini
Date: Wed, 23 Apr 2025 15:13:51 +0100
Lines: 38
Message-ID: <mailman.29.1745419807.3008.python-list@python.org>
References: <20250421083845.5e5b6d69@workstation.localdomain>
 <f5bikmwp8of.fsf@lochinver.inf.ed.ac.uk>
 <20250422182253.00b9327d@workstation.localdomain>
 <f5bwmbbnexs.fsf@lochinver.inf.ed.ac.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
X-Trace: news.uni-berlin.de Yrv5FA8sdb9Eg4fg+4fCVwOoybOKQQ+4ezju+iHLTsLw==
Cancel-Lock: sha1:DRTrtUXFFSyyW+WLAUditn/dOcw= sha256:BiloeoEUSWTCPLP62yYczTrGsv/pHMjXNTiRCDb2xx0=
Return-Path: <ht@inf.ed.ac.uk>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=none reason="no signature";
 dkim-adsp=none (unprotected policy); dkim-atps=neutral
X-Spam-Status: OK 0.179
X-Spam-Level: *
X-Spam-Evidence: '*H*': 0.65; '*S*': 0.01; 'argument': 0.04; 'cc:addr
 :python-list': 0.09; 'subject:not': 0.09; 'writes:': 0.09; 'cc:no
 real name:2**0': 0.14; 'approach,': 0.16; 'interpreter': 0.16;
 'language?': 0.16; 'subject:Module': 0.16; 'subject:does': 0.16;
 'url-ip:129/8': 0.16; 'python': 0.16; 'cc:addr:python.org': 0.20;
 'option': 0.20; 'list,': 0.24; 'school': 0.24; 'depends': 0.25;
 'cc:2**0': 0.25; 'anyone': 0.25; 'expect': 0.28; 'computer': 0.29;
 'header:User-Agent:1': 0.30; 'seem': 0.31; 'approach': 0.31;
 'there': 0.33; 'header:In-Reply-To:1': 0.34; 'following': 0.35;
 "skip:' 10": 0.37; 'though': 0.37; 'list': 0.39; 'added': 0.39;
 'adding': 0.39; 'should': 0.40; 'included': 0.61; 'today,': 0.62;
 'skip:b 20': 0.63; 'less': 0.64; 'url-ip:192.0/16': 0.64;
 'received:userid': 0.66; '[1]': 0.67; '440': 0.69; 'henry': 0.69;
 'historical': 0.69; 'ones,': 0.69; 'order.': 0.69;
 'charset:iso-8859-1': 0.73; 'url:xhtml': 0.74; 'url:ac': 0.75;
 'backwards': 0.84; 'edinburgh': 0.84; 'forged': 0.84;
 'preference.': 0.84; 'received:ac.uk': 0.84; 'schemes': 0.84;
 'e-mail:': 0.88
In-Reply-To: <20250422182253.00b9327d@workstation.localdomain> (Schimon
 Jehudah's message of "Tue\, 22 Apr 2025 18\:22\:53 +0300")
User-Agent: Gnus/5.101 (Gnus v5.10.10) XEmacs/21.5-b35 (linux)
X-Edinburgh-Scanned: at seine.is.ed.ac.uk
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
 <python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
 <mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
 <mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <f5bwmbbnexs.fsf@lochinver.inf.ed.ac.uk>
X-Mailman-Original-References: <20250421083845.5e5b6d69@workstation.localdomain>
 <f5bikmwp8of.fsf@lochinver.inf.ed.ac.uk>
 <20250422182253.00b9327d@workstation.localdomain>
Bytes: 4888

Schimon Jehudah writes:

> Is there an "ignore" option for "urljoin" to allow schemes that are not
> included in the registry of the interpreter of the Python computer
> language?

Some approach to support future-proofing in general would seem to be
in order.  Given some other precedents, adding a boolean argument
called either 'strict' or 'lax' would be my preference.

It would seem that for backwards-compatibility, even though it feels
backwards from the in-principle correct approach, it should be either
'strict=True' or 'lax=False'.

I note that there are 440 schemes registered [1] as of today, with the
following statuses:

    275 Provisional
     99 Permanent
     18 Historical
     48 [not given]

The (python3.11) implementation of "urljoin" depends on a list of 18
'uses_relative' scheme names: it would be silly to expect anyone to
actually check even just the other 81 Permanent schemes to see if they
should be added to this list, much less the Provisional or Historical
ones, and even sillier to expect that the list ought to be regularly
synchronised with the IANA registry.

ht

[1] https://www.iana.org/assignments/uri-schemes/uri-schemes.xhtml
-- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND
                           e-mail: ht@inf.ed.ac.uk
                      URL: https://www.ltg.ed.ac.uk/~ht/
 [mail from me _always_ has a .sig like this -- mail without it is forged spam]