Next: , Previous: , Up: Top   [Contents][Index]


Appendix B ChangeLog

SEL will use semantic versioning to determine increments to version numbers. This ChangeLog will be roughly organized as described at Keep a ChangeLog. Most importantly every version will include at least one ChangeLog entry, and the entries will be sorted in reverse chronological order with the most recent at the top. Every entry will be named and indexed by date and version number. Working notes may be accumulated in a special “Unreleased” section at the top of the ChangeLog.

B.1 2019-03-20 v0.1.3 – Unreleased

B.2 2018-12-18 v0.1.2 – Unreleased

B.3 2018-11-30 v0.1.1 – Unreleased

B.4 2018-11-06 v0.1.0 – Use package-inferred-system

SEL now uses the package-inferred-system feature of ASDF (see https://common-lisp.net/project/asdf/asdf/The-package_002dinferred_002dsystem-extension.html#The-package_002dinferred_002dsystem-extension). This implicitly defines a system for every source file in the repository. We then explicitly define a package for every source file at the top of the source file. These packages explicitly list the dependencies of the source file (with :use) and the symbols exported by the source file (with :export).

The result is:

Instead of simply using the SOFTWARE-EVOLUTION-LIBRARY package clients should now use the specific packages they need. Packages are divided into “software” and “components” packages. So, e.g., a project using Clang software objects and using lexicase selection would most likely use the following packages.

(defpackage :example
  (:use :common-lisp
        :software-evolution-library
        :software-evolution-library/utility
        :software-evolution-library/software/parseable
        :software-evolution-library/software/source
        :software-evolution-library/software/clang
        :software-evolution-library/components/lexicase))

Note that the above example uses sel/sw/{ast,parseable,source} as well as sel/sw/clang. The ast, parseable, and source software objects are all ancestors of clang software objects so the related packages export symbols that are likely useful for anyone using the clang software object.

This release also removes any use of qlot from SEL’s CI infrastructure and deprecates the USER_QUICK_LISP environment variable which was redundant with the QUICK_LISP environment variable.

B.5 2018-10-17 v0.0.2 – Unreleased

B.6 2018-08-21 v0.0.1 – Unreleased

B.7 2018-07-25 v0.0.0 – Initial Release to Quicklisp

Initial changelog entry for version v.0.0.0 of the SOFTWARE-EVOLUTION-LIBRARY (SEL) Package. This is the version initially appearing in the 2018-07 Quicklisp release.


Next: , Previous: , Up: Top   [Contents][Index]