Are FORCE and FORCE-NOT semantics right?
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
ASDF |
Fix Released
|
Medium
|
Faré |
Bug Description
The manual specifies that FORCE takes precedence over FORCE-NOT, and a half-baked test by me seems to indicate that this is right.
Is this The Right Thing? I would imagine a common case is that someone wishes to rebuild all of the dependencies of some system, with some chosen exceptions. This is what suggested the issue to me, because I wanted to rebuild a system of mine on SBCL. My system depends transitively on SB-GROVEL, which is a built-in, and cannot be rebuilt by a normal user, since it's installed in /usr/local.
So it seemed like (asdf:load-system "foo" :force t :force-not (list "sb-grovel")) would be just the ticket. Unfortunately, if the manual is correct (and behavior of SBCL 1.1.7+ from git suggests it is), this cannot be done.
Is there any reason why the precedence shouldn't be FORCE-NOT overriding FORCE? I.e., build blocking being winning over building?
Changed in asdf: | |
milestone: | version4 → asdf3-1 |
Changed in asdf: | |
status: | Fix Committed → Fix Released |
Note: closed duplicate bug #1227261