From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marius Bakke Subject: Re: [PATCH] gnu: Add python-pycontracts. Date: Thu, 12 Jan 2017 19:26:40 +0100 Message-ID: <878tqg6snz.fsf@kirby.i-did-not-set--mail-host-address--so-tickle-me> References: <20170112093257.27397-1-dannym@scratchpost.org> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:48536) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cRk5H-0003I5-9z for guix-devel@gnu.org; Thu, 12 Jan 2017 13:26:48 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cRk5E-0003dC-4L for guix-devel@gnu.org; Thu, 12 Jan 2017 13:26:47 -0500 Received: from out2-smtp.messagingengine.com ([66.111.4.26]:55024) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cRk5D-0003cU-SM for guix-devel@gnu.org; Thu, 12 Jan 2017 13:26:44 -0500 In-Reply-To: <20170112093257.27397-1-dannym@scratchpost.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Danny Milosavljevic , guix-devel@gnu.org --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Danny Milosavljevic writes: > * gnu/packages/python.scm (python-pycontracts, python2-pycontracts): > New variables. > --- > gnu/packages/python.scm | 32 ++++++++++++++++++++++++++++++++ > 1 file changed, 32 insertions(+) > > diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm > index 4dc284d03..1cd4f168a 100644 > --- a/gnu/packages/python.scm > +++ b/gnu/packages/python.scm > @@ -2201,6 +2201,38 @@ have failed since the last commit or what tests ar= e currently failing.") > (define-public python2-testrepository > (package-with-python2 python-testrepository)) >=20=20 > +(define-public python-pycontracts > + (package > + (name "python-pycontracts") > + (version "1.7.15") > + (source > + (origin > + (method url-fetch) > + (uri (pypi-uri "PyContracts" version)) > + (sha256 > + (base32 > + "0sf41nccy5ihymiab31sfc4ylxd87fvvhbzqd8lhw7fnryskmgr4")))) > + (build-system python-build-system) > + (propagated-inputs > + `(("python-decorator" ,python-decorator) > + ("python-pyparsing" ,python-pyparsing) > + ("python-six" ,python-six))) > + (native-inputs > + `(("python-nose" ,python-nose))) > + (home-page "http://andreacensi.github.com/contracts/") > + (synopsis "Checks declared constraints on function parameters and re= turn > +values") This is a little too long for my taste. Maybe just 'Declare constraints on function parameters and return values'. Checking them is kind of implied, me thinks. > + (description "PyContracts is a Python package that allows to declare > +constraints on function parameters and return values. Contracts can be > +specified using Python3 annotations, in a decorator, or inside a docstri= ng > +:type: and :rtype: tags. PyContracts supports a basic type system, vari= ables ^^^^ ^^^^ @code{} on these. > +binding, arithmetic constraints, and has several specialized contracts > +(notably for Numpy arrays), as well as an extension API.") > + (license license:lgpl3))) > + > +(define-public python2-pycontracts > + (package-with-python2 python-pycontracts)) Otherwise LGTM, thanks! I guess you can push this yourself when the account is set up :) --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlh3ymAACgkQoqBt8qM6 VPrcCQf/fC/q7WwTcDu1wrSA+vqHWgwkfQbCKXw0nGR9+0f9rizaPhWDmPOe77hi +FbYTeF74X7n+vu9Q6GDOEbEai4iyC3GzByhGftoJafq1/7jDofqEBqaNGTjF9Nx ofcbqCbdCAuj3SV0QHQNLBqy89OKeTJa89nA1DHMu98w70i3QVs+GqUP0DEfWQxh kAo5oTYoQjBPfRhgQoz3mbgZo6Rj7pi5syHFQCp2GJGn90OfsDbNAcmF5F+6ay2g 08SOhRe620C90Xx2q76J1Ti8fTym6+z5p01qcDg3HXeWZsPm6LUM7BPzm1L7hs82 geTN4rhZBjFspAN3uHdL9J7HtKxanA== =z2vB -----END PGP SIGNATURE----- --=-=-=--