diff --git a/pkgs/development/python-modules/python-mapnik/default.nix b/pkgs/development/python-modules/python-mapnik/default.nix index 6e3717109ef3..044199f6c2a6 100644 --- a/pkgs/development/python-modules/python-mapnik/default.nix +++ b/pkgs/development/python-modules/python-mapnik/default.nix @@ -28,25 +28,21 @@ buildPythonPackage rec { pname = "python-mapnik"; - version = "unstable-2020-09-08"; + version = "unstable-2023-02-23"; format = "setuptools"; src = fetchFromGitHub { owner = "mapnik"; repo = "python-mapnik"; - rev = "a2c2a86eec954b42d7f00093da03807d0834b1b4"; - hash = "sha256-GwDdrutJOHtW7pIWiUAiu1xucmRvp7YFYB3YSCrDsrY="; + # Use proj6 branch in order to support Proj >= 6 (excluding commits after 2023-02-23) + # https://github.com/mapnik/python-mapnik/compare/master...proj6 + rev = "687b2c72a24c59d701d62e4458c380f8c54f0549"; + hash = "sha256-q3Snd3K/JndckwAVwSKU+kFK5E1uph78ty7mwVo/7Ik="; # Only needed for test data fetchSubmodules = true; }; patches = [ - # https://github.com/mapnik/python-mapnik/issues/239 - (fetchpatch { - url = "https://github.com/koordinates/python-mapnik/commit/318b1edac16f48a7f21902c192c1dd86f6210a44.patch"; - hash = "sha256-cfU8ZqPPGCqoHEyGvJ8Xy/bGpbN2vSDct6A3N5+I8xM="; - }) - ./find-pycairo-with-pkg-config.patch # python-mapnik seems to depend on having the mapnik src directory # structure available at build time. We just hardcode the paths. (substituteAll { @@ -107,36 +103,15 @@ buildPythonPackage rec { # https://github.com/mapnik/python-mapnik/issues/255 disabledTests = [ - "test_adding_datasource_to_layer" - "test_compare_map" - "test_dataraster_coloring" - "test_dataraster_query_point" "test_geometry_type" - "test_good_files" - "test_layer_init" - "test_load_save_map" - "test_loading_fontset_from_map" + "test_marker_ellipse_render1" + "test_marker_ellipse_render2" "test_normalizing_definition" + "test_passing_pycairo_context_pdf" "test_pdf_printing" - "test_proj_antimeridian_bbox" - "test_proj_transform_between_init_and_literal" - "test_pycairo_pdf_surface1" - "test_pycairo_svg_surface1" - "test_query_tolerance" - "test_raster_warping" - "test_raster_warping_does_not_overclip_source" - "test_render_points" - "test_render_with_scale_factor" - "test_style_level_comp_op" - "test_style_level_image_filter" - "test_that_coordinates_do_not_overflow_and_polygon_is_rendered_csv" - "test_that_coordinates_do_not_overflow_and_polygon_is_rendered_memory" - "test_transparency_levels" - "test_visual_zoom_all_rendering1" "test_visual_zoom_all_rendering2" "test_wgs84_inverse_forward" ] ++ lib.optionals stdenv.isDarwin [ - "test_passing_pycairo_context_pdf" "test_passing_pycairo_context_svg" ]; diff --git a/pkgs/development/python-modules/python-mapnik/find-pycairo-with-pkg-config.patch b/pkgs/development/python-modules/python-mapnik/find-pycairo-with-pkg-config.patch deleted file mode 100644 index 1f35af36ee82..000000000000 --- a/pkgs/development/python-modules/python-mapnik/find-pycairo-with-pkg-config.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff --git a/setup.py b/setup.py -index 82a31d733..1c876a553 100755 ---- a/setup.py -+++ b/setup.py -@@ -228,10 +228,9 @@ extra_comp_args = list(filter(lambda arg: arg != "-fvisibility=hidden", extra_co - if os.environ.get("PYCAIRO", "false") == "true": - try: - extra_comp_args.append('-DHAVE_PYCAIRO') -- print("-I%s/include/pycairo".format(sys.exec_prefix)) -- extra_comp_args.append("-I{0}/include/pycairo".format(sys.exec_prefix)) -- #extra_comp_args.extend(check_output(["pkg-config", '--cflags', 'pycairo']).strip().split(' ')) -- #linkflags.extend(check_output(["pkg-config", '--libs', 'pycairo']).strip().split(' ')) -+ pycairo_name = 'py3cairo' if PYTHON3 else 'pycairo' -+ extra_comp_args.extend(check_output(["pkg-config", '--cflags', pycairo_name]).strip().split(' ')) -+ linkflags.extend(check_output(["pkg-config", '--libs', pycairo_name]).strip().split(' ')) - except: - raise Exception("Failed to find compiler options for pycairo") -