This is the mail archive of the cygwin-apps mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 3/3] Add the last element of URL path to site chooser, if interesting.


On 19/11/2010 17:13, Corinna Vinschen wrote:
> On Nov 19 11:07, Christopher Faylor wrote:
>> On Sat, Nov 06, 2010 at 05:05:15PM +0000, Jon TURNEY wrote:
>>> Currently, if, for example, I manually add the site http://mirrors.kernel.org/sources.redhat.com/cygwinports/
>>> to setup's mirror list, I get two indistinguishable entries named http://mirrors.kernel.org.
>>>
>>> Furthermore, because the code to ensure the site just added is selected uses the string inside the list control
>>> to locate elements, we end up with a random one of those two indistinguishable entries selected (usually the
>>> previously existing one).  This problem also prevents the selected sites being correctly saved and restored
>>> for the next setup run.
>>>
>>> So, to make the site chooser list entries unique and distinguishable, add the last element of the URL path to
>>> the site chooser, if it exists and isn't 'cygwin' (or some other alternatives used by current mirrors)
>>>
>>> (Also fix the logic for identifying protocol and site name part of the URL to find the first '/' after a '//',
>>> rather than the first '/' after a '.', to handle sitenames which aren't FQDNs correctly)
>>>
>>> 2010-11-06  Jon TURNEY  <jon.turney-GrJqePx9RPPAJUdA+FbntA@public.gmane.org>
>>>
>>> 	* site.cc (init): If interesting, Show the last element of URL, as well
>>> 	as the protocol and sitename in the site chooser
>>
>> I like this better than my idea of showing the full URL.  Unless there
>> are objections (Corinna?) please check in.
> 
> No objections.  Just go ahead.

I've committed patches #1 and #2.

I think I need to take another look at this one (#3) as it looks like this
doesn't always fix all the problems I claim it doesn.

>>> It occurs to me now that the heuristic this code uses to determine if the last
>>> element of the path is 'interesting' could be broken by future official
>>> mirrors deciding to use something random.  Would you take a patch to
>>> mirrors.html saying something like "mirror the cygwin directory, not it's
>>> contents, so the URL for your mirror ends 'cygwin/'"?
>> 
>> mirrors.html is a generated file but, no, I don't want to enforce a
>> naming convention for the mirrors.  That seems like a headache I'd like
>> to avoid.

It occured to me that rather than relying on a heuristic that looks at the URL
to determine interestingness, the definitive test for 'is the URL
uninteresting' is 'was this URL in the mirror list?'.  Unfortunately this
introduces more complexity:  we don't remember where URLs came from at the
moment (manually added or chosen from the mirror list), and if the URL was on
the mirror list when it was chosen in a previous run but not anymore, we
should probably say something about how the mirror is out of date, rather than
decide it is interesting...


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]