pymysql: add meta-package for sha256 support

Replace the PYTHON3_PYMYSQL_SHA_PASSWORD_SUPPORT option, which is
causing circular dependencies, with a meta-package that installs both
python3-pymysql and python3-cryptography.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
This commit is contained in:
Eneas U de Queiroz 2023-10-04 08:54:15 -03:00
parent e483d052f3
commit 79b173a0c5
No known key found for this signature in database
GPG Key ID: A1FE5A85EFAE657D
2 changed files with 22 additions and 16 deletions

View File

@ -1,11 +0,0 @@
menu "Configuration"
depends on PACKAGE_python3-pymysql
config PYTHON3_PYMYSQL_SHA_PASSWORD_SUPPORT
bool "Enable support for SHA password authentication"
help
To use “sha256_password” or “caching_sha2_password” for authentication
this symbol needs to be enabled, to also install python3-cryptography.
default n
endmenu

View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=pymysql
PKG_VERSION:=1.1.0
PKG_RELEASE:=1
PKG_RELEASE:=2
PYPI_NAME:=PyMySQL
PKG_HASH:=4f13a7df8bf36a51e81dd9f3605fede45a4878fe02f9236349fd82a3f0612f96
@ -24,23 +24,40 @@ include ../pypi.mk
include $(INCLUDE_DIR)/package.mk
include ../python3-package.mk
define Package/python3-pymysql
define Package/python3-pymysql/Default
SUBMENU:=Python
SECTION:=lang
CATEGORY:=Languages
TITLE:=Pure Python MySQL Client
URL:=https://pymysql.readthedocs.io/
DEPENDS:=+python3 +PYTHON3_PYMYSQL_SHA_PASSWORD_SUPPORT:python3-cryptography
endef
define Package/python3-pymysql/config
source "$(SOURCE)/Config.in"
define Package/python3-pymysql
$(call Package/python3-pymysql/Default)
DEPENDS:=+python3
endef
define Package/python3-pymysql/description
This package contains a pure-Python MySQL client library, based on PEP 249.
endef
define Package/python3-pymysql-sha-pwd
$(call Package/python3-pymysql/Default)
TITLE+=w/ SHA256 password auth
DEPENDS:=+python3-pymysql $(RUST_ARCH_DEPENDS) +PACKAGE_python3-pymysql-sha-pwd:python3-cryptography
endef
define Package/python3-pymysql-sha-pwd/description
This is a meta-package installing python3-pymysql and python3-cryptography
packages to be able to use pymysql with “sha256_password” or
“caching_sha2_password” for authentication.
endef
define Package/python3-pymysql-sha-pwd/install
true
endef
$(eval $(call Py3Package,python3-pymysql))
$(eval $(call BuildPackage,python3-pymysql))
$(eval $(call BuildPackage,python3-pymysql-src))
$(eval $(call BuildPackage,python3-pymysql-sha-pwd))