Hello! Sorry for the slooow response :-) The patch mostly LGTM. A few minor comments: Muriithi Frederick Muriuki writes: > * gnu/packages/python.scm (python-xenon, python2-xenon) New variables. [...] > +(define-public python-xenon > + (package > + (name "python-xenon") > + (version "0.5.1") It looks like 0.5.2 was recently released. Can you try updating to it? > + (source > + (origin > + (method url-fetch) > + (uri (pypi-uri "xenon" version)) > + (sha256 > + (base32 > + "14kby2y48vp3sgwxqlm5d5789yibqwb1qli5fwcmdqg3iayrbklc")))) > + (build-system python-build-system) > + (native-inputs > + `(("python-pyyaml" ,python-pyyaml) > + ("python-radon" ,python-radon) > + ("python-requests" ,python-requests) > + ("python-flake8" ,python-flake8) Indentation is off :) > + ("python-tox" ,python-tox))) > + (arguments > + `(#:phases > + (modify-phases %standard-phases > + (add-before 'build 'patch-test-requirements > + (lambda* (#:key inputs #:allow-other-keys) > + ;; Update requirements from dependecy==version Missing letter here: ^^^ > + ;; to dependency>=version > + (substitute* "requirements.txt" > + (("==") ">=") > + ((",<1.5.0") "")) > + ;; Remove httpretty dependency for tests > + (substitute* "setup.py" > + (("httpretty") "")) Why is this necessary? Can you expand on this comment? > + #t))))) > + (home-page "https://xenon.readthedocs.org/") > + (synopsis > + "Monitor code metrics for Python on your CI server") > + (description > + "@code{Xenon} is a monitoring tool based on Radon. It monitors code’s I think we can drop @code here since it's used as a name. Side note: It would be cool if we could cross-reference packages in descriptions. Sorry for the nit-picks! I'll go through the other patches shortly. > +complexity. Ideally, @code{xenon} is run every time code is committed. Through > +command line options, various thresholds can be set for the complexity of code. > +It will fail (i.e. it will exit with a non-zero exit code) when any of these > +equirements is not met.") > + (license license:expat)))