I am willing to accept this patch and push it. However, I would like to document the behavior we expect and I would like a test case, so that we can check and see that it is applied uniformly (or as near to uniformly as possible).
Let me see if I understand the correspondence:
1. (UIOP:SUBDIRECTORIES x) sometimes does and sometimes does not return a directory pathname for links, L, contained in X, such that L points to a directory. Correct?
2. It is suggested that UIOP:DIRECTORY-FILES should be fixed in the same way.
3. We could create a test case for this by creating an ASDF system somewhere outside the tests/ subdirectory, and linking it into the tests/ subdirectory. This would be a bit of a nuisance, but we could create a system directory in (UIOP:TEMPORARY-DIRECTORY), copy a system definition there, link it back into tests/ and see if it is loadable. We'd have to use RUN-PROGRAM to create a symlink, since I don't believe we have a portable way to do this. I have no idea what the windows semantics should be.
4. We could create more primitive test cases that directly check UIOP:SUBDIRECTORIES and UIOP:DIRECTORY-FILES.
Is this an accurate understanding? If so, I believe we can make this happen, and I can tag a new version of ASDF for testing.
I am willing to accept this patch and push it. However, I would like to document the behavior we expect and I would like a test case, so that we can check and see that it is applied uniformly (or as near to uniformly as possible).
Let me see if I understand the correspondence:
1. (UIOP:SUBDIRECT ORIES x) sometimes does and sometimes does not return a directory pathname for links, L, contained in X, such that L points to a directory. Correct?
2. It is suggested that UIOP:DIRECTORY- FILES should be fixed in the same way.
3. We could create a test case for this by creating an ASDF system somewhere outside the tests/ subdirectory, and linking it into the tests/ subdirectory. This would be a bit of a nuisance, but we could create a system directory in (UIOP:TEMPORARY -DIRECTORY) , copy a system definition there, link it back into tests/ and see if it is loadable. We'd have to use RUN-PROGRAM to create a symlink, since I don't believe we have a portable way to do this. I have no idea what the windows semantics should be.
4. We could create more primitive test cases that directly check UIOP:SUBDIRECTORIES and UIOP:DIRECTORY- FILES.
Is this an accurate understanding? If so, I believe we can make this happen, and I can tag a new version of ASDF for testing.