1{ 2 lib, 3 buildPythonPackage, 4 fetchPypi, 5 flask, 6 mock, 7 flit-core, 8 pytestCheckHook, 9 pythonAtLeast, 10 pythonOlder, 11 sqlalchemy, 12}: 13 14buildPythonPackage rec { 15 pname = "flask-sqlalchemy"; 16 version = "3.1.1"; 17 format = "pyproject"; 18 19 disabled = pythonOlder "3.9"; 20 21 src = fetchPypi { 22 pname = "flask_sqlalchemy"; 23 inherit version; 24 hash = "sha256-5LaLuIGALdoafYeLL8hMBtHuV/tAuHTT3Jfav6NrgxI="; 25 }; 26 27 nativeBuildInputs = [ flit-core ]; 28 29 propagatedBuildInputs = [ 30 flask 31 sqlalchemy 32 ]; 33 34 nativeCheckInputs = [ 35 mock 36 pytestCheckHook 37 ]; 38 39 disabledTests = [ 40 # flaky 41 "test_session_scoping_changing" 42 # https://github.com/pallets-eco/flask-sqlalchemy/issues/1084 43 "test_persist_selectable" 44 ]; 45 46 pytestFlagsArray = lib.optionals (pythonAtLeast "3.12") [ 47 # datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. 48 "-W" 49 "ignore::DeprecationWarning" 50 ]; 51 52 pythonImportsCheck = [ "flask_sqlalchemy" ]; 53 54 meta = with lib; { 55 description = "SQLAlchemy extension for Flask"; 56 homepage = "http://flask-sqlalchemy.pocoo.org/"; 57 changelog = "https://github.com/pallets-eco/flask-sqlalchemy/blob/${version}/CHANGES.rst"; 58 license = licenses.bsd3; 59 maintainers = with maintainers; [ gerschtli ]; 60 }; 61}