How do I specify a library version that is newer than the specified Quicklisp distribution?
While struggling to match a database, Linux libraries, database drivers and all the correct Quicklisp library versions one question I struggled a lot with was ‘How do I specify a library version that is newer than the specified Quicklisp distribution?’
The Qlot documentation says about library priorities: ‘If multiple distributions provide the same library, lower one would take priority over higher ones.’
This can be interpreted in more than one way which can lead to confusion. The correct interpretation is that the ‘lower one’ in the documentation refers to the order of the declarations in the qlfile.
To explain Qlot’s priority handling more clearly: The order of the declarations in qlfile determines the priority. When multiple distributions provide the same functionality, later statements override the the earlier ones.
The two examples demonstrate the Qlot priority handling.
Using Clack from the latest Quicklisp distribution.
ql :all 2014-01-13 ql clack :latest
Using Clack from the 2014-01-13 distribution.
ql clack :latest ql :all 2014-01-13