<div dir="ltr">puri was pulled into my system by quicklisp as s dependency of drakma, and asdf was installed by portage. I have never written a line of lisp that called puri directly. No one is ever persuaded by the "it works for me" argument. The issue is real. Are you using a clean install of asdf, uiop and puri? Or are you using your development branch of asdf? Developers can always get it to work on their workstations. Maybe it's the gentoo package for asdf or uiop. Maybe slime is providing some sort of wrapping environment that affects readtables. There are any number of things that could be at play that are beyond the user's control.<div><br></div><div>Let's say you are right in saying that puri is doing something naughty by polluting a readtable. I'll go along with that. I have no reason to doubt it. I'm on your side on this issue. Nevertheless we have a problem: this code has been in the wild since 2015 or earlier. A very ubiquitous library (drakma) depends on it. Cleaning up poor behavior is a bigger job than making a fundamental and core component like asdf no longer accept the behavior. The offending libraries have to be fixed in concert with this refactoring. Established libraries cannot simply have the rug pulled out from under them.</div><div><br></div><div>I'm with Stas. I cannot upgrade asdf if it makes it impossible for me to use libraries that I depend on. Whatever new things asdf does are less important to me than having a working drakma. I believe just about all users would agree with this sentiment.</div><div><br></div><div>I'm perfectly willing to contribute to the fixing of these libraries. But let's not do it as a mad scramble. Let's issue deprecation warnings, identify broken quicklisp packages, get the bugs in those packages fixed and then implement the new asdf behavior. I'm here to help.</div><div><br></div><div>Carlos</div></div><div class="gmail_extra"><br><div class="gmail_quote">2017-10-11 20:31 GMT-06:00 Faré <span dir="ltr"><<a href="mailto:fahree@gmail.com" target="_blank">fahree@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I just tried compiling puri with asdf 3.3.0, using either quicklisp or<br>
the latest commit (b537e93 from August 29 2015) on sbcl 1.3.20, and<br>
had no issue whatsoever.<br>
<br>
Odds are the problem is on your side, probably with your using<br>
with-standard-io-syntax or some such. Note that it is very rude to use<br>
set-dispatch-macro-character on a readtable you didn't specifically<br>
setup, especially since it might be a read-only readtable, or worse, a<br>
writable one used by people who assume it won't be modified.<br>
<br>
I've had a branch of ASDF, called "syntax-control", supposed to bring<br>
*some* sanity in readtables used while building with ASDF. It has<br>
bitrotten in the last 4 years and is nowhere near being merged at this<br>
point.<br>
<br>
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__fare.tunes.org&d=DwIFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=UXttlWX_R8MsWhBAnFwO2t5aPuH2x7HGk4gZpTTCo-UE-RFLppFABNHDw29AmFnQ&m=sNgypPrTU-ocowWcZQAmsxdniF2mxBwl_6BmfJxiyjY&s=8O9az24Gmg12t9C9jp5bOiJSXjwPqkIvmeFuYqIUCnw&e=" rel="noreferrer" target="_blank">https://urldefense.proofpoint.<wbr>com/v2/url?u=http-3A__fare.<wbr>tunes.org&d=DwIFaQ&c=<wbr>udBTRvFvXC5Dhqg7UHpJlPps3mZ3LR<wbr>xpb6__0PomBTQ&r=UXttlWX_<wbr>R8MsWhBAnFwO2t5aPuH2x7HGk4gZpT<wbr>TCo-UE-RFLppFABNHDw29AmFnQ&m=<wbr>sNgypPrTU-<wbr>ocowWcZQAmsxdniF2mxBwl_<wbr>6BmfJxiyjY&s=<wbr>8O9az24Gmg12t9C9jp5bOiJSXjwPqk<wbr>IvmeFuYqIUCnw&e=</a><br>
Opportunity is missed by most people because it comes dressed in overalls<br>
and looks like work.    — T. A. Edison<br>
<div><div class="h5"><br>
<br>
On Wed, Oct 11, 2017 at 8:41 PM, Konstanski, Carlos<br>
<<a href="mailto:carlos.konstanski@verizonwireless.com">carlos.konstanski@<wbr>verizonwireless.com</a>> wrote:<br>
> This is a bug report. I'm using puri as an example, but it's not a puri<br>
> bug.<br>
><br>
> With the latest version of asdf (3.3.0) puri no longer compiles. The<br>
> following compiler error is thrown:<br>
><br>
>    SET-DISPATCH-MACRO-CHARACTER would modify the standard readtable.<br>
>    [Condition of type ASDF/FIND-SYSTEM:LOAD-SYSTEM-<wbr>DEFINITION-ERROR]<br>
><br>
> In:<br>
><br>
>   0: (SET-DISPATCH-MACRO-CHARACTER #\# #\u #<FUNCTION PURI::SHARP-U><br>
> #<READTABLE {100002D6C3}>)<br>
><br>
> The code:<br>
><br>
> (defun sharp-u (stream chr arg)<br>
>   (declare (ignore chr arg))<br>
>   (let ((arg (read stream nil nil t)))<br>
>     (if *read-suppress*<br>
>         nil<br>
>       (if* (stringp arg)<br>
>          then (parse-uri arg)<br>
>          else<br>
>          (internal-reader-error<br>
>           stream<br>
>           "#u takes a string or list argument: ~s" arg)))))<br>
><br>
> (set-dispatch-macro-character #\# #\u #'puri::sharp-u)<br>
><br>
> What puri is doing re: SET-DISPATCH-MACRO-CHARACTER is totally by the<br>
> book. Why is this suddenly an error? Is there a workaround?<br>
><br>
> Backing up to the next most recent release of asdf makes the problem go<br>
> away:<br>
><br>
> dev-lisp/asdf-3.2.1-r1:0/3.2.<wbr>1-r1<br>
> dev-lisp/uiop-3.2.1:0<br>
><br>
> I tried to find the asdf changelog to see if this is a documented<br>
> change. But the link is broken.<br>
</div></div>> <a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__common-2Dlisp.net_project_asdf_Changelog&d=DwIFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=UXttlWX_R8MsWhBAnFwO2t5aPuH2x7HGk4gZpTTCo-UE-RFLppFABNHDw29AmFnQ&m=sNgypPrTU-ocowWcZQAmsxdniF2mxBwl_6BmfJxiyjY&s=-Ety3cawXfSBOqWK_Ms5Hi2TwB62089buk66HVbLu-s&e=" rel="noreferrer" target="_blank">https://urldefense.proofpoint.<wbr>com/v2/url?u=https-3A__common-<wbr>2Dlisp.net_project_asdf_<wbr>Changelog&d=DwIFaQ&c=<wbr>udBTRvFvXC5Dhqg7UHpJlPps3mZ3LR<wbr>xpb6__0PomBTQ&r=UXttlWX_<wbr>R8MsWhBAnFwO2t5aPuH2x7HGk4gZpT<wbr>TCo-UE-RFLppFABNHDw29AmFnQ&m=<wbr>sNgypPrTU-<wbr>ocowWcZQAmsxdniF2mxBwl_<wbr>6BmfJxiyjY&s=-Ety3cawXfSBOqWK_<wbr>Ms5Hi2TwB62089buk66HVbLu-s&e=</a><br>
<div class="HOEnZb"><div class="h5">><br>
> uiop seems to be closely tied to asdf. Not sure which package is<br>
> actually at fault.<br>
> --<br>
> Carlos Konstanski<br>
><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">Carlos Konstanski<div><span style="color:rgb(60,60,60);font-family:Arial,sans-serif;font-size:12px">MTS IV Cslt</span><br></div><div><span style="color:rgb(60,60,60);font-family:Arial,sans-serif;font-size:12px">Verizon Cloud Platform</span></div><div><span style="color:rgb(60,60,60);font-family:Arial,sans-serif;font-size:12px"><a href="mailto:carlos.konstanski@verizonwireless.com" target="_blank">carlos.konstanski@verizonwireless.com</a></span></div><div><span style="color:rgb(60,60,60);font-family:Arial,sans-serif;font-size:12px">Cell: 15126218301</span></div><div><span style="color:rgb(60,60,60);font-family:Arial,sans-serif;font-size:12px">Slack: </span><font color="#3c3c3c" face="Arial, sans-serif"><span style="font-size:12px"><a href="http://vzw-vsi.slack.com" target="_blank">vzw-vsi.slack.com</a> username: @ckonstanski</span></font></div></div></div>
</div>