1{
2 lib,
3 python,
4 fetchPypi,
5 buildPythonPackage,
6 postgresql,
7 unittestCheckHook,
8}:
9
10buildPythonPackage rec {
11 pname = "pgsanity";
12 version = "0.2.9";
13 format = "setuptools";
14
15 src = fetchPypi {
16 inherit pname version;
17 sha256 = "de0bbd6fe4f98bf5139cb5f466eac2e2abaf5a7b050b9e4867b87bf360873173";
18 };
19
20 nativeCheckInputs = [
21 unittestCheckHook
22 postgresql
23 ];
24 propagatedBuildInputs = [ postgresql ];
25
26 meta = with lib; {
27 homepage = "https://github.com/markdrago/pgsanity";
28 description = "Checks the syntax of Postgresql SQL files";
29 mainProgram = "pgsanity";
30 longDescription = ''
31 PgSanity checks the syntax of Postgresql SQL files by
32 taking a file that has a list of bare SQL in it,
33 making that file look like a C file with embedded SQL,
34 run it through ecpg and
35 let ecpg report on the syntax errors of the SQL.
36 '';
37 license = licenses.mit;
38 maintainers = with maintainers; [ nalbyuites ];
39 };
40}