Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 2 Dec 2020 21:48:26 +0000 (UTC)
From:      Dmitry Marakasov <amdmi3@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r556856 - in head/databases: . py-aesqlapius
Message-ID:  <202012022148.0B2LmQ1v088412@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: amdmi3
Date: Wed Dec  2 21:48:25 2020
New Revision: 556856
URL: https://svnweb.freebsd.org/changeset/ports/556856

Log:
  - Add databases/py-aesqlapius
  
  So you don't want to use ORM, and want to organize your SQL queries
  in a convenient way. Don't mix them with your python code, don't
  write `execute` and `fetchrow`s by hand for each query. With
  aesqlapius:
  
  - Store your SQL queries separate from the code, in a dedicated
    file or directory hierarchy
  - Annotate each query with python-like function definition specifying
    input arguments and output types and patterns
  
  aesqlapius builds a class out of this, where you can call your
  queries as plain methods. It handles arguments (pass positional
  or keyword arguments as you like, default values are also handled) and
  output types and patterns (you may specify whether a method returns
  iterator, list, dict of rows, or a single row, where row may
  be represented as a tuple, list, dict, single value or a custom
  type such as a dataclass).
  
  WWW: https://pypi.org/project/aesqlapius/

Added:
  head/databases/py-aesqlapius/
  head/databases/py-aesqlapius/Makefile   (contents, props changed)
  head/databases/py-aesqlapius/distinfo   (contents, props changed)
  head/databases/py-aesqlapius/pkg-descr   (contents, props changed)
Modified:
  head/databases/Makefile

Modified: head/databases/Makefile
==============================================================================
--- head/databases/Makefile	Wed Dec  2 21:22:08 2020	(r556855)
+++ head/databases/Makefile	Wed Dec  2 21:48:25 2020	(r556856)
@@ -746,6 +746,7 @@
     SUBDIR += py-MySQLdb
     SUBDIR += py-PyGreSQL
     SUBDIR += py-Pyrseas
+    SUBDIR += py-aesqlapius
     SUBDIR += py-agate-sql
     SUBDIR += py-aiopg
     SUBDIR += py-aioredis

Added: head/databases/py-aesqlapius/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/py-aesqlapius/Makefile	Wed Dec  2 21:48:25 2020	(r556856)
@@ -0,0 +1,25 @@
+# Created by: Dmitry Marakasov <amdmi3@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME=	aesqlapius
+PORTVERSION=	0.0.3
+CATEGORIES=	databases python
+MASTER_SITES=	CHEESESHOP
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	amdmi3@FreeBSD.org
+COMMENT=	Manage SQL queries as a Python API
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+TEST_DEPENDS=	${PYTHON_PKGNAMEPREFIX}pytest>=0:devel/py-pytest@${PY_FLAVOR}
+
+USES=		python:3.9+
+USE_PYTHON=	autoplist distutils
+NO_ARCH=	yes
+
+do-test:
+	@cd ${TEST_WRKSRC} && ${SETENV} ${TEST_ENV} ${PYTHON_CMD} -m pytest -v -rs
+
+.include <bsd.port.mk>

Added: head/databases/py-aesqlapius/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/py-aesqlapius/distinfo	Wed Dec  2 21:48:25 2020	(r556856)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1606938806
+SHA256 (aesqlapius-0.0.3.tar.gz) = 8fbc97bba50ce0dc534e57b7a2d7cf0c49d6df66aa8c0f84826488572b5cd01a
+SIZE (aesqlapius-0.0.3.tar.gz) = 17863

Added: head/databases/py-aesqlapius/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/py-aesqlapius/pkg-descr	Wed Dec  2 21:48:25 2020	(r556856)
@@ -0,0 +1,19 @@
+So you don't want to use ORM, and want to organize your SQL queries
+in a convenient way. Don't mix them with your python code, don't
+write `execute` and `fetchrow`s by hand for each query. With
+aesqlapius:
+
+- Store your SQL queries separate from the code, in a dedicated
+  file or directory hierarchy
+- Annotate each query with python-like function definition specifying
+  input arguments and output types and patterns
+
+aesqlapius builds a class out of this, where you can call your
+queries as plain methods. It handles arguments (pass positional
+or keyword arguments as you like, default values are also handled) and
+output types and patterns (you may specify whether a method returns
+iterator, list, dict of rows, or a single row, where row may
+be represented as a tuple, list, dict, single value or a custom
+type such as a dataclass).
+
+WWW: https://pypi.org/project/aesqlapius/



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202012022148.0B2LmQ1v088412>