From 5a372bc2fa4809933e61835b02a7927d8e8368a7 Mon Sep 17 00:00:00 2001 From: Florian Brandes Date: Thu, 1 Jun 2023 11:01:51 +0200 Subject: [PATCH] sqlite3-to-mysql: 1.4.16 -> 1.4.19 Signed-off-by: Florian Brandes --- pkgs/tools/misc/sqlite3-to-mysql/default.nix | 42 ++++++++++++++++---- 1 file changed, 35 insertions(+), 7 deletions(-) diff --git a/pkgs/tools/misc/sqlite3-to-mysql/default.nix b/pkgs/tools/misc/sqlite3-to-mysql/default.nix index 176f97275f42..0a3806415bf7 100644 --- a/pkgs/tools/misc/sqlite3-to-mysql/default.nix +++ b/pkgs/tools/misc/sqlite3-to-mysql/default.nix @@ -1,22 +1,47 @@ { lib , fetchFromGitHub -, python3Packages +, python3 , nixosTests +, testers +, sqlite3-to-mysql +, fetchPypi }: -python3Packages.buildPythonApplication rec { +let + py = python3.override { + packageOverrides = self: super: { + # sqlite3-to-mysql is incompatible with versions > 1.4.44 of sqlalchemy + sqlalchemy = super.sqlalchemy.overridePythonAttrs (oldAttrs: rec { + version = "1.4.44"; + format = "setuptools"; + src = fetchPypi { + pname = "SQLAlchemy"; + inherit version; + hash = "sha256-LdpflnGa6Js+wPG3lpjYbrmuyx1U6ZCrs/3ZLAS0apA="; + }; + }); + }; + self = py; + }; + +in +with py.pkgs; buildPythonApplication rec { pname = "sqlite3-to-mysql"; - version = "1.4.16"; - format = "setuptools"; + version = "1.4.19"; + format = "pyproject"; src = fetchFromGitHub { owner = "techouse"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-Fxt1zOyEnBuMkCLCABfijo0514NbFocdsjrQU43qVhY="; + hash = "sha256-gtXwDLHl5f1sXLm+b8l08bY/XJkN+zVtd7m45K0CAYY="; }; - propagatedBuildInputs = with python3Packages; [ + nativeBuildInputs = [ + setuptools + ]; + + propagatedBuildInputs = [ click mysql-connector pytimeparse @@ -38,9 +63,12 @@ python3Packages.buildPythonApplication rec { # run package tests as a separate nixos test passthru.tests = { nixosTest = nixosTests.sqlite3-to-mysql; + version = testers.testVersion { + package = sqlite3-to-mysql; + command = "sqlite3mysql --version"; + }; }; - meta = with lib; { description = "A simple Python tool to transfer data from SQLite 3 to MySQL"; homepage = "https://github.com/techouse/sqlite3-to-mysql";