Hey,
I'm working with a project that bundles up CL systems, and then copies them to a remote host. To avoid copying unnecessary files, we rely on the components and additional-input-files to find all the files needed to load the system on the remote host.
I found some ASD files to load on the remote host. These systems are expecting to read a long-description, usually a readme file. All of these projects are using reader macros to load this data, and none of them declare the file as a :static-file component.
It's also often the case that the license of a project requires a copy of the license be shipped with the project. Yet rarely do I see any project declaring a :static-file for one in their asd file.
Am I correct in my understanding that using :static-files is this the current recommended way to declare these files?
Is there any plan for ASDF to improve the handling of these 2 cases? I see other packaging systems often have a special field for the license file, and having a :read-file form for the long-descripton much like the version field has, would improve handling of these readme's greatly.
At the moment asd authors don't have an easy way to test asd evaluation when files like the readme aren't present. Leading to error prone code like this.
:long-description #.(uiop:read-file-string (uiop:subpathname *load-pathname* "README.md"))
I pulled a sample of 800 packages from quicklisp, 95 of them are using either uiop:read-file-string (65) or a safer, more verbose with-open-file (30) form.
Thank you for your work maintaining this essential system.
Regards, Russell Sim