Code
T7020 python-lock-stale
The lock of the packages of the project's python definitions does not fit the project: the build writes no bundle until it does.
Details
The build and the check hold each lock of the project, python.lock and one for each lock that a definition names, to what the project says today. They report:
- a lock that a definition is locked into and that is not there;
- a second line,
# packages ..., that holds other entries than thepackagesof its definitions, in the order of their names and then as each wrote them: the finding names each entry that is new and each that is gone; - a first line,
# python ..., that names another Python thanpython.versionofproject, or thanversionof the named lock inpython.locks; - a line that is no line of a lock: an option, as
--index-url, an address, a path of a file, or any other form. A lock holds a package with its exact version and the mark of a system on a line, and the lines under it that each hold one fingerprint.
tent python lock reports it too, where it cannot make a lock: for a Python that the engine does not pin, with the ones it does; for two definitions that need two versions of one package, by their names; and for a package that has no ready-built file and that python.build does not name. A package with no ready-built file for one system alone is a warning of tent python lock with this code, which names the system.
The fix
Run tent python lock, which makes each lock anew from the packages of the project, and build again. Where two definitions need two versions of one package, give one of them a lock of its own. Where a Python is not pinned, name one that is in python.version.
See also
command.python, word.python, option.python.lock, option.project.python