python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / tools / misc / dsq / default.nix
blob835143fb06d7900350f61d9c77ed1c80e0bcf925
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , buildGoModule
5 , runCommand
6 , nix-update-script
7 , fetchurl
8 , testers
9 , python3
10 , curl
11 , jq
12 , p7zip
13 , dsq
16 buildGoModule rec {
17   pname = "dsq";
18   version = "0.23.0";
20   src = fetchFromGitHub {
21     owner = "multiprocessio";
22     repo = "dsq";
23     rev = "v${version}";
24     hash = "sha256-FZBJe+2y4HV3Pgeap4yvD0a8M/j+6pAJEFpoQVVE1ec=";
25   };
27   vendorSha256 = "sha256-MbBR+OC1OGhZZGcZqc+Jzmabdc5ZfFEwzqP5YMrj6mY=";
29   ldflags = [ "-X" "main.Version=${version}" ];
31   checkInputs = [ python3 curl jq p7zip ];
33   preCheck = ''
34     substituteInPlace scripts/test.py \
35       --replace 'dsq latest' 'dsq ${version}'
36   '';
38   checkPhase = ''
39     runHook preCheck
41     7z e testdata/taxi.csv.7z
42     cp "$GOPATH/bin/dsq" .
43     python3 scripts/test.py
45     runHook postCheck
46   '';
48   passthru = {
49     updateScript = nix-update-script { attrPath = pname; };
51     tests.version = testers.testVersion { package = dsq; };
52   };
54   meta = with lib; {
55     description = "Commandline tool for running SQL queries against JSON, CSV, Excel, Parquet, and more";
56     homepage = "https://github.com/multiprocessio/dsq";
57     license = licenses.asl20;
58     maintainers = with maintainers; [ liff ];
59   };