Ouch. Somehow there are duplicates under CLISP indeed. WTF? That might have been one of the reasons the code was factored that way to begin with, for all I remember of the pains of writing UIOP.
Maybe I should keep the remove-duplicates, just use 'equal for physical pathnames and 'pathname-equal for logical pathnames? Maybe only for CLISP? This seems to fix the bug. Should I commit and push?
Le Sigh.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org Whenever someone asks what I think government rulers should do, my answer is that it should follow the example of the only honest ruler ever, Oedipus: they should apologize for their sins, step down, and gouge their own eyes out.
On Mon, Jun 13, 2016 at 6:39 PM, Robert Goldman rpgoldman@sift.net wrote:
On 6/10/16 Jun 10 -8:41 PM, Faré wrote:
I bumped ASDF to 3.1.7.1 after I fixed a performance bug in directory-files that made it quadratic instead of linear, due to some remove-duplicates used for logical-pathnames. The fix was to only use this quadratic behavior for LPNs. If you use LPNs, you deserve to lose on large directories. LPNs are for legacy Lisp code with relatively few files, only.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org The best of all regimes is one where I am the head honcho of a worldwide empire. — Winston Churchill (his most famous quip, as translated to plain English)
On the Mac, this fails testing on clisp: looks like a regression. See launchpad ticket: https://bugs.launchpad.net/asdf/+bug/1592180
Looks like maybe there was always a bug here on clisp, but when you took out the REMOVE-DUPLICATES, you revealed it.
Please have a look at this, thanks! r