50 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
{ lib, buildPythonPackage, fetchPypi, python, pkgs, pythonOlder, substituteAll
 | 
						|
, aenum
 | 
						|
, cython
 | 
						|
, pytest
 | 
						|
, mock
 | 
						|
, numpy
 | 
						|
}:
 | 
						|
 | 
						|
buildPythonPackage rec {
 | 
						|
  pname = "pyproj";
 | 
						|
  version = "2.2.1";
 | 
						|
 | 
						|
  src = fetchPypi {
 | 
						|
    inherit pname version;
 | 
						|
    sha256 = "0yigcxwmx5cczipf2mpmy2gq1dnl0635yjvjq86ay47j1j5fd2gc";
 | 
						|
  };
 | 
						|
 | 
						|
  # force pyproj to use ${pkgs.proj}
 | 
						|
  patches = [
 | 
						|
    (substituteAll {
 | 
						|
      src = ./001.proj.patch;
 | 
						|
      proj = pkgs.proj;
 | 
						|
    })
 | 
						|
  ];
 | 
						|
 | 
						|
  buildInputs = [ cython pkgs.proj ];
 | 
						|
 | 
						|
  propagatedBuildInputs = [
 | 
						|
    numpy
 | 
						|
  ] ++ lib.optional (pythonOlder "3.6") aenum;
 | 
						|
 | 
						|
  checkInputs = [ pytest mock ];
 | 
						|
 | 
						|
  # ignore rounding errors, and impure docgen
 | 
						|
  # datadir is ignored because it does the proj look up logic, which isn't relevant
 | 
						|
  checkPhase = ''
 | 
						|
    pytest . -k 'not alternative_grid_name \
 | 
						|
                 and not transform_wgs84_to_alaska \
 | 
						|
                 and not repr' \
 | 
						|
            --ignore=test/test_doctest_wrapper.py \
 | 
						|
            --ignore=test/test_datadir.py
 | 
						|
  '';
 | 
						|
 | 
						|
  meta = {
 | 
						|
    description = "Python interface to PROJ.4 library";
 | 
						|
    homepage = "https://github.com/jswhit/pyproj";
 | 
						|
    license = with lib.licenses; [ isc ];
 | 
						|
  };
 | 
						|
}
 |