On Tue, Dec 11, 2018 at 2:09 PM Mark H. David mhd@yv.org wrote:
It seems that any system Y associated with a name X must have its name be of the form X/Y. For example, when you build "cl-ppcre", you get this warning:
Please only define "cl-ppcre" and secondary systems with a name starting with "cl-ppcre/" (e.g. "cl-ppcre/test") in that file.
I've seen this complaint for quite a few systems already. What's the need for this, and is it really worth nagging users of all these systems that have existed in many cases for years and have worked perfectly well without following the new convention? What great functionality are we getting for this?
"Worked perfectly well", except that 1- if you wanted to find a system not properly named, you had to make sure to have read the relevant .asd file beforehand. 2- if someone defined two systems with the same name in two different files, then ASDF 2.014 could loop infinitely, and even 2.016 or later might survive but behave in unstable way depending on how changes may cause one system to be loaded instead of the other, then reloaded, etc.
With ASDF 2.27 (ASDF 3 pre-release), a solution was offered to define multiple systems in one .asd file in a safe way, and the old way was deprecated ever since, though a warning has only been issued since ASDF 3.2.0.
ASDF is still backward-compatible. You can hush the warning if you want—though it importantly tells you which systems could use a new maintainer.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org A true intellectual is a man who, after reading a book and being convinced by its arguments, will shoot someone or, more likely, order someone shot. — John McCarthy