diff options
Diffstat (limited to 'dev-python/mysqlclient')
-rw-r--r-- | dev-python/mysqlclient/Manifest | 2 | ||||
-rw-r--r-- | dev-python/mysqlclient/mysqlclient-2.2.0.ebuild | 91 |
2 files changed, 93 insertions, 0 deletions
diff --git a/dev-python/mysqlclient/Manifest b/dev-python/mysqlclient/Manifest index 372f2ca66b20..0f0c56e77cb0 100644 --- a/dev-python/mysqlclient/Manifest +++ b/dev-python/mysqlclient/Manifest @@ -1,3 +1,5 @@ DIST mysqlclient-2.1.1.tar.gz 88138 BLAKE2B fdd044f2703af874dc0ca67b2fe07fcac3ceed5a4543aa15a0daa852ddf5ad6940a43675c0f104d9aa173e96da946e33054e1cc4c1b9812487558af64cc8fd43 SHA512 d8aed044b651aabb8d28d2df085f84e4d824ef0f147216d111425a9c8024f55634236ec131debf46660084c5a8fd67c944db60ffbf89e1d712cdca80c0726a06 +DIST mysqlclient-2.2.0.tar.gz 89543 BLAKE2B 1e75d37825b81300103d980174d12986d7d02fa2f958ebbdb3d8a2ecea498a8afd9f43c2e3d46a88109364bc0ba172f91c7d5853ed4bd173ef34bc451d31c7b3 SHA512 c392bfc173c2a2e20821b862c3f23621bcd0c20884f58623c345921aaa4f0557b3f75e75e5577a0df150adf119ec008af5ad1fcbfe11248d73918c0a211e8df9 EBUILD mysqlclient-2.1.1.ebuild 1886 BLAKE2B b1d3683885ef942afe95e41f74e3976b606225252268864c2f7074f9bfbf78d0723ad345b02cefdd5511e77d857c62b183e54e393fe002c4168b9a01bd199413 SHA512 adfbded1b4462e38032b968ef3bd82079a01245f00b6998bd84d7edc3905831beb9a5e7fd65c1fcac836bdcd822ba9f17002462c614d61add7ac794669536276 +EBUILD mysqlclient-2.2.0.ebuild 1890 BLAKE2B 618a79a247a3c2f3d43c6ceea0223a9ab3733169df42a7de7f95cc833087572a41baa849200a8454d12fc9c226bb42baf3cf4a6d3425469f5cca9eeaf1bd2d4c SHA512 fe0d0ed254012764e7f3eb5320104a98967983d0b05dc41fc9b181d990832136740c80ece82e89f519cdcceb5b947417024c33f332d8c479bc528c6753b986a4 MISC metadata.xml 507 BLAKE2B 3c274117dde5aed93bb78488b1c106ea9b18243725d88867e6b568a09229d97bc35a1116d8a529c5c72cabcb9feb33de8157448cf3d339dbf1861d8a9ff2c1d6 SHA512 4304ae4addf93365b2acfd493a27a0144bfe0dd2d559a3fce73f52d0d1683c84b1597c9d11f36b332b6428523fd8082297ab39ce000d961ccdf39d92833828ac diff --git a/dev-python/mysqlclient/mysqlclient-2.2.0.ebuild b/dev-python/mysqlclient/mysqlclient-2.2.0.ebuild new file mode 100644 index 000000000000..b474537386c1 --- /dev/null +++ b/dev-python/mysqlclient/mysqlclient-2.2.0.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..12} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Python interface to MySQL" +HOMEPAGE=" + https://pypi.org/project/mysqlclient/ + https://github.com/PyMySQL/mysqlclient/ +" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" + +DEPEND=" + dev-db/mysql-connector-c:0= +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + test? ( + dev-db/mariadb[server] + ) +" + +distutils_enable_sphinx doc +distutils_enable_tests pytest + +src_test() { + local datadir="${T}/mysql" \ + install_log="${T}/mysqld_install.log" \ + pidfile="${T}/mysqld.pid" \ + socket="${T}/mysqld.sock" \ + log="${T}/mysqld.log" + einfo "Creating test MySQL instance ..." + if ! mysql_install_db \ + --no-defaults \ + --auth-root-authentication-method=normal \ + --basedir="${EPREFIX}/usr" \ + --datadir="${datadir}" >& "${install_log}" + then + cat "${install_log}" + die "Failed to create database" + fi + + einfo "Starting test MySQL instance ..." + mysqld \ + --no-defaults \ + --character-set-server=utf8 \ + --pid-file="${pidfile}" \ + --socket="${socket}" \ + --skip-networking \ + --datadir="${datadir}" >& "${log}" & + + local i timeout=10 + einfo "Waiting for MySQL to start for up to ${timeout} seconds ..." + for i in seq 1 ${timeout}; do + [[ -S "${socket}" ]] && break + sleep 1 + done + if [[ ! -S "${socket}" ]]; then + cat "${log}" + die "MySQL failed to start in ${timeout} seconds" + fi + + cat > "${T}/mysql.cnf" <<- EOF + [MySQLdb-tests] + socket = ${socket} + user = root + database = test + EOF + + distutils-r1_src_test + + einfo "Stopping test MySQL instance ..." + pkill -F "${pidfile}" &>/dev/null +} + +python_test() { + local -x TESTDB="${T}/mysql.cnf" + rm -rf MySQLdb || die + epytest +} |