The smartos package method incorrectly parses some lines if they had strings that looked like package name/version pairs.
- pkgin ls | grep py27-cairo
py27-cairo-1.10.0nb2 Python bindings for cairo (python-2.x version)
Is parsed as follows:
2014-07-09T21:56:46+0000 verbose: /default/pkg/packages/'py27-cairo': Comparing [available] package (py27-cairo-1.10.0nb2,2.x,default) to [==] with given (py27-cairo,,) [name,version,arch]
That is, the package name was assumed to be py27-cairo-1.0.0nb2 and the package version was assumed to be 2.x. This would causes cfengine to always assume the package needs installing.