Hello,
what is the current status of :feature in a list of dependencies? I mean, is it safe to replace #+ reader conditionals in the asd file with it?
Thanks.
On 3/23/11 Mar 23 -4:49 AM, Didier Verna wrote:
Hello,
what is the current status of :feature in a list of dependencies? I mean, is it safe to replace #+ reader conditionals in the asd file with it?
Thanks.
Related bug: https://bugs.launchpad.net/asdf/+bug/545390
Wasn't there a bug where we said "we should not make people implement conditional branching by means of exception handling" (which is really what :if-component-dep-fails is used for)? I couldn't find it... If there isn't one, we should probably add such as an enhancement. Saying
(:when ....)
is probably a lot better than trying to grok an :if-component-dep-fails policy....
cheers, r
On 23 March 2011 09:49, Didier Verna didier@lrde.epita.fr wrote:
what is the current status of :feature in a list of dependencies? I mean, is it safe to replace #+ reader conditionals in the asd file with it?
It's complex and underpowered, and underdocumented. Some report getting it to work, others report failing to make it work. We're trying to support existing practice, but I'm not sure we encourage it at this point. You're welcome to document it after you get it to work.
[Removing my hat of ASDF maintainer] Personally, I prefer the XCVB way of doing things: * having a module bar under build foo doesn't necessarily mean that building foo depends on bar - just that you can name and find bar under foo. * build foo starts includes a list of direct dependencies; other dependencies are found recursively * the dependency language has conditionals, and a sublanguage for features, so you may depend on (:when (:featurep :sbcl) "cmu-descendant-addon1" "sbcl-addon2")
Note that this goes contrary to the current ASDF design, so it's not trivial to import ideas from XCVB into ASDF.
The good news is that XCVB works, and that it's easy to mix and match between ASDF and XCVB. The bad news is that it currently only supports three implementations, on Unix only, so isn't ready to supplant ASDF yet.
[ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ] Obscenity is the crutch of inarticulate motherfuckers.