Introspection of system version
Robert Goldman
rpgoldman at sift.net
Fri Jun 17 16:29:25 UTC 2016
On 6/17/16 Jun 17 -11:04 AM, Javier Olaechea wrote:
> Hi Frank,
> You are looking for asdf:component-version. See for example
> how Shuffletron
> <https://github.com/ahefner/shuffletron/blob/39c7d8af6577e9cbd39da656598f98c6eb6c3f14/src/global.lisp#L6> does
> it
Yes, that is because all components can have versions, not just systems.
Actually, Faré and I have in the past talked about moving the versioning
from arbitrary components (including files and modules) up to systems,
which is the only place I have seen it used in the wild.
As a half-measure, perhaps we should add SYSTEM-VERSION as an exported
function. Having only COMPONENT-VERSION requires users of ASDF to know
stuff about the inheritance structure of the COMPONENT subclasses that
seems inappropriate.
Best,
r
>
>
>
> On Fri, Jun 17, 2016 at 10:59 AM, Frank <fau at riseup.net
> <mailto:fau at riseup.net>> wrote:
>
> Hello,
>
> In the system definition we can specify a version; for example:
>
> (asdf:defsystem :foo
> :description "foo utility"
> :license "LGPL"
>
> :version (:read-file-form "VERSION")
>
> :serial t
> :components ((:file "foo")))
>
> For example I can query the system license like this:
> (asdf:system-licence (asdf:find-system "foo"))
>
> How can I query the version of system foo at run time?
>
> Thanks,
> Frank
>
>
>
>
>
> --
> "I object to doing things that computers can do." — Olin Shivers
More information about the asdf-devel
mailing list