Can we issue a STYLE-WARNING, with an explanation for the likely explanation (inappropriate use of CLEAR-SYSTEM, possibly related to PROVE)? I figure we are more likely to get compliance if people understand what's wrong.
On 18 Oct 2017, at 8:48, Faré wrote:
On Wed, Oct 18, 2017 at 9:41 AM, Faré fahree@gmail.com wrote:
There is your culprit: clear-system should NEVER be called within perform. It's removing the rug under ASDF as it's running -- very BAD, especially if there are many build phases. Unhappily, prove and other prove-based system skeletons (e.g. from caveman) have made this pattern popular. I sent patches to prove & al. at least six months ago, and wrote about this anti-pattern in my "best_practices" document, but I suppose the message didn't go around yet. Maybe I should make it an error for clear-system to be called from within an active asdf-session?
I see 97 mentions of clear-system in .asd files in quicklisp, so obviously I wasn't thorough in chasing these mentions 6 months ago, and I shouldn't make that an error until all these mentions are fixed. But maybe it's possible to issue a warning? Oh well.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org "Never ascribe to malice that which is caused by greed and ignorance." — Cal Keegan