Date: Fri, 2 Oct 2020 13:14:41 +0000 (UTC) From: Sunpoet Po-Chuan Hsieh <sunpoet@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r551174 - in head/devel: . py-dpcontracts Message-ID: <202010021314.092DEfVV028466@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: sunpoet Date: Fri Oct 2 13:14:40 2020 New Revision: 551174 URL: https://svnweb.freebsd.org/changeset/ports/551174 Log: Add py-dpcontracts 0.6.0 This module provides a collection of decorators that makes it easy to write software using contracts. Contracts are a debugging and verification tool. They are declarative statements about what states a program must be in to be considered "correct" at runtime. They are similar to assertions, and are verified automatically at various well-defined points in the program. Contracts can be specified on functions and on classes. Contracts serve as a form of documentation and a way of formally specifying program behavior. Good practice often includes writing all of the contracts first, with these contract specifying the exact expected state before and after each function or method call and the things that should always be true for a given class of object. Contracts consist of two parts: a description and a condition. The description is simply a human-readable string that describes what the contract is testing, while the condition is a single function that tests that condition. The condition is executed automatically and passed certain arguments (which vary depending on the type of contract), and must return a boolean value: True if the condition has been met, and False otherwise. WWW: https://github.com/deadpixi/contracts Added: head/devel/py-dpcontracts/ head/devel/py-dpcontracts/Makefile (contents, props changed) head/devel/py-dpcontracts/distinfo (contents, props changed) head/devel/py-dpcontracts/pkg-descr (contents, props changed) Modified: head/devel/Makefile Modified: head/devel/Makefile ============================================================================== --- head/devel/Makefile Fri Oct 2 12:10:52 2020 (r551173) +++ head/devel/Makefile Fri Oct 2 13:14:40 2020 (r551174) @@ -4335,6 +4335,7 @@ SUBDIR += py-dogpile.cache SUBDIR += py-doit SUBDIR += py-dotted + SUBDIR += py-dpcontracts SUBDIR += py-dtfabric SUBDIR += py-durus SUBDIR += py-dynrules Added: head/devel/py-dpcontracts/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/py-dpcontracts/Makefile Fri Oct 2 13:14:40 2020 (r551174) @@ -0,0 +1,20 @@ +# Created by: Po-Chuan Hsieh <sunpoet@FreeBSD.org> +# $FreeBSD$ + +PORTNAME= dpcontracts +PORTVERSION= 0.6.0 +CATEGORIES= devel python +MASTER_SITES= CHEESESHOP +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Simple implementation of contracts for Python + +LICENSE= LGPL3+ + +USES= python:3.5+ +USE_PYTHON= autoplist concurrent distutils + +NO_ARCH= yes + +.include <bsd.port.mk> Added: head/devel/py-dpcontracts/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/py-dpcontracts/distinfo Fri Oct 2 13:14:40 2020 (r551174) @@ -0,0 +1,3 @@ +TIMESTAMP = 1601627925 +SHA256 (dpcontracts-0.6.0.tar.gz) = 6cf9df1f16beaa48523b798b41170dabf7a536a6133328731665cdb29c42234a +SIZE (dpcontracts-0.6.0.tar.gz) = 11156 Added: head/devel/py-dpcontracts/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/py-dpcontracts/pkg-descr Fri Oct 2 13:14:40 2020 (r551174) @@ -0,0 +1,23 @@ +This module provides a collection of decorators that makes it easy to write +software using contracts. + +Contracts are a debugging and verification tool. They are declarative statements +about what states a program must be in to be considered "correct" at runtime. +They are similar to assertions, and are verified automatically at various +well-defined points in the program. Contracts can be specified on functions and +on classes. + +Contracts serve as a form of documentation and a way of formally specifying +program behavior. Good practice often includes writing all of the contracts +first, with these contract specifying the exact expected state before and after +each function or method call and the things that should always be true for a +given class of object. + +Contracts consist of two parts: a description and a condition. The description +is simply a human-readable string that describes what the contract is testing, +while the condition is a single function that tests that condition. The +condition is executed automatically and passed certain arguments (which vary +depending on the type of contract), and must return a boolean value: True if the +condition has been met, and False otherwise. + +WWW: https://github.com/deadpixi/contracts
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202010021314.092DEfVV028466>