Handling of readme and license files

Stelian Ionescu sionescu at cddr.org
Sat Oct 15 19:43:24 UTC 2022


> Hey,
>
> Thanks for the quick reply.
> 
> "Stelian Ionescu" <sionescu at cddr.org> writes:
>
>>> I'm working with a project that bundles up CL systems, and then copies

What do you mean by "bundles" ? Copying the source code as-is ?

>>> 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?
>>
>> ASDF is a build system, not a software packaging system.
>> The :STATIC-FILE component was meant to handle data files that might
>> be required at runtime, not any metadata in general.
>
> OK, I can understand this when it comes to my suggestion about tracking
> the location of the license file.  Though I find it disappointing, since
> some licenses declare statements like "Redistributions in binary form
> must reproduce the above copyright".  Not having a way to identify the
> license file makes it difficult to ad hear to the license's of all
> project dependencies.

The regex "^LICEN[CS]E|COPYING(\.md)?$" should identify most license files,
by convention.


>
> But regarding the readme file being loaded at read time in the ASD file.
> This dependency is not track but it's required to build the package.

This is difficult to track because of how the reader works.


> This could be caught if the builds were hermetical, and this would also
> help with issues related other static files that are missing from the
> ASD file.  At the moment it's just luck if anyone actually adds the
> :STATIC-FILE components needed by their system.  Is there some way to
> help system authors avoid accidentally missing files?

Not that I know of.

>  Since it looks
> like a pretty common pattern to load the long-description from a readme.
>
> I'm perfectly happy to contribute to a solution, I would like to help if
> I can.
>
> Cheers,
> Russell

-- 
Stelian Ionescu



More information about the asdf-devel mailing list