diff --git a/.gitignore b/.gitignore index 6526b10..15b95fe 100644 --- a/.gitignore +++ b/.gitignore @@ -15,7 +15,3 @@ /Cartopy-0.21.0.tar.gz /Cartopy-0.21.1.tar.gz /Cartopy-0.22.0.tar.gz -/Cartopy-0.23.0.tar.gz -/cartopy-0.24.0.tar.gz -/cartopy-0.24.1.tar.gz -/cartopy-0.25.0.tar.gz diff --git a/.packit.yaml b/.packit.yaml deleted file mode 100644 index b2a3bc6..0000000 --- a/.packit.yaml +++ /dev/null @@ -1,20 +0,0 @@ -# See the documentation for more information: -# https://packit.dev/docs/configuration/ ---- -jobs: - - job: pull_from_upstream - trigger: release - dist_git_branches: - rawhide: - fast_forward_merge_into: - - fedora-branched - - job: koji_build - trigger: commit - allowed_committers: - - all_admins - dist_git_branches: - - fedora-all - - job: bodhi_update - trigger: commit - dist_git_branches: - - fedora-all diff --git a/0002-Increase-tolerance-for-new-FreeType.patch b/0001-Increase-tolerance-for-new-FreeType.patch similarity index 65% rename from 0002-Increase-tolerance-for-new-FreeType.patch rename to 0001-Increase-tolerance-for-new-FreeType.patch index cc87dde..2dc6483 100644 --- a/0002-Increase-tolerance-for-new-FreeType.patch +++ b/0001-Increase-tolerance-for-new-FreeType.patch @@ -1,69 +1,53 @@ -From d3d4e7a80ded257b3094d837e5133b199989b460 Mon Sep 17 00:00:00 2001 +From 09d403da6d8134a35bba90b7554cfe502877de57 Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Mon, 26 Feb 2018 02:42:50 -0500 -Subject: [PATCH 2/2] Increase tolerance for new FreeType +Subject: [PATCH] Increase tolerance for new FreeType. Signed-off-by: Elliott Sales de Andrade --- lib/cartopy/tests/mpl/test_examples.py | 2 +- - lib/cartopy/tests/mpl/test_gridliner.py | 19 +++++++------------ + lib/cartopy/tests/mpl/test_gridliner.py | 11 +++++++---- lib/cartopy/tests/mpl/test_mpl_integration.py | 2 +- lib/cartopy/tests/mpl/test_ticks.py | 14 +++++++++----- - 4 files changed, 18 insertions(+), 19 deletions(-) + 4 files changed, 18 insertions(+), 11 deletions(-) diff --git a/lib/cartopy/tests/mpl/test_examples.py b/lib/cartopy/tests/mpl/test_examples.py -index a7f64ac9..404d3d83 100644 +index 76f76d29..5eaeef08 100644 --- a/lib/cartopy/tests/mpl/test_examples.py +++ b/lib/cartopy/tests/mpl/test_examples.py -@@ -37,7 +37,7 @@ def test_global_map(): - +@@ -34,7 +34,7 @@ def test_global_map(): @pytest.mark.natural_earth @pytest.mark.mpl_image_compare( -- filename='contour_label.png', tolerance=3.9 if _MPL_38 else 0.5) -+ filename='contour_label.png', tolerance=11.2 if _MPL_38 else 0.5) + filename='contour_label.png', +- tolerance=3.9 if MPL_VERSION.release[:2] >= (3, 8) else 0.5) ++ tolerance=10.4) def test_contour_label(): from cartopy.tests.mpl.test_caching import sample_data fig = plt.figure() diff --git a/lib/cartopy/tests/mpl/test_gridliner.py b/lib/cartopy/tests/mpl/test_gridliner.py -index 66144070..3ff88139 100644 +index 120295c4..f855e0a0 100644 --- a/lib/cartopy/tests/mpl/test_gridliner.py +++ b/lib/cartopy/tests/mpl/test_gridliner.py -@@ -130,15 +130,10 @@ def test_gridliner_specified_lines(): - assert gl.ylocator.tick_values(None, None).tolist() == parallels +@@ -126,6 +126,9 @@ def test_gridliner_specified_lines(): + # of text objects. A new testing strategy is needed for this kind of test. + grid_label_tol = 3.9 ++# Force higher tolerance due to new FreeType on Fedora. ++grid_label_tol = 15.2 ++ --# The tolerance on these tests are particularly high because of the high number --# of text objects. A new testing strategy is needed for this kind of test. --grid_label_tol = 3.9 -- -- @pytest.mark.skipif(geos_version == (3, 9, 0), reason="GEOS intersection bug") @pytest.mark.natural_earth - @pytest.mark.mpl_image_compare(filename='gridliner_labels.png', -- tolerance=grid_label_tol) -+ tolerance=15.2) - def test_grid_labels(): - fig = plt.figure(figsize=(10, 10)) - -@@ -211,7 +206,7 @@ def test_grid_labels(): +@@ -207,7 +210,7 @@ def test_grid_labels(): @pytest.mark.skipif(geos_version == (3, 9, 0), reason="GEOS intersection bug") @pytest.mark.natural_earth @pytest.mark.mpl_image_compare(filename='gridliner_labels_tight.png', -- tolerance=2.9) +- tolerance=2.92) + tolerance=47.1) def test_grid_labels_tight(): # Ensure tight layout accounts for gridlines fig = plt.figure(figsize=(7, 5)) -@@ -259,7 +254,7 @@ def test_grid_labels_tight(): - - @pytest.mark.mpl_image_compare( - filename='gridliner_constrained_adjust_datalim.png', -- tolerance=grid_label_tol) -+ tolerance=46.5) - def test_gridliner_constrained_adjust_datalim(): - fig = plt.figure(figsize=(8, 4), layout="constrained") - -@@ -293,7 +288,7 @@ def test_gridliner_constrained_adjust_datalim(): +@@ -251,7 +254,7 @@ def test_grid_labels_tight(): @pytest.mark.skipif(geos_version == (3, 9, 0), reason="GEOS intersection bug") @pytest.mark.natural_earth @pytest.mark.parametrize('proj', TEST_PROJS) @@ -72,7 +56,7 @@ index 66144070..3ff88139 100644 def test_grid_labels_inline(proj): fig = plt.figure() if isinstance(proj, tuple): -@@ -309,7 +304,7 @@ def test_grid_labels_inline(proj): +@@ -267,7 +270,7 @@ def test_grid_labels_inline(proj): @pytest.mark.skipif(geos_version == (3, 9, 0), reason="GEOS intersection bug") @pytest.mark.natural_earth @pytest.mark.parametrize('proj', TEST_PROJS) @@ -81,8 +65,8 @@ index 66144070..3ff88139 100644 def test_grid_labels_inline_usa(proj): top = 49.3457868 # north lat left = -124.7844079 # west long -@@ -334,7 +329,7 @@ def test_grid_labels_inline_usa(proj): - @pytest.mark.natural_earth +@@ -291,7 +294,7 @@ def test_grid_labels_inline_usa(proj): + @pytest.mark.skipif(geos_version == (3, 9, 0), reason="GEOS intersection bug") @pytest.mark.mpl_image_compare(filename='gridliner_labels_bbox_style.png', - tolerance=grid_label_tol) @@ -90,20 +74,11 @@ index 66144070..3ff88139 100644 def test_gridliner_labels_bbox_style(): top = 49.3457868 # north lat left = -124.7844079 # west long -@@ -521,7 +516,7 @@ def test_gridliner_save_tight_bbox(): - - @pytest.mark.natural_earth - @pytest.mark.mpl_image_compare(filename='gridliner_labels_title_adjust.png', -- tolerance=grid_label_tol) -+ tolerance=61.3) - def test_gridliner_title_adjust(): - # Test that title do not overlap labels - projs = [ccrs.Mercator(), ccrs.AlbersEqualArea(), ccrs.LambertConformal(), diff --git a/lib/cartopy/tests/mpl/test_mpl_integration.py b/lib/cartopy/tests/mpl/test_mpl_integration.py -index f1aeccdf..78866085 100644 +index 8a60b6d9..ab84bae9 100644 --- a/lib/cartopy/tests/mpl/test_mpl_integration.py +++ b/lib/cartopy/tests/mpl/test_mpl_integration.py -@@ -1016,7 +1016,7 @@ def test_streamplot(): +@@ -980,7 +980,7 @@ def test_streamplot(): @pytest.mark.natural_earth @@ -113,10 +88,10 @@ index f1aeccdf..78866085 100644 """ test a variety of annotate options on multiple projections diff --git a/lib/cartopy/tests/mpl/test_ticks.py b/lib/cartopy/tests/mpl/test_ticks.py -index f75ad2d2..bc0ba0b7 100644 +index bb54b631..e9ef89fc 100644 --- a/lib/cartopy/tests/mpl/test_ticks.py +++ b/lib/cartopy/tests/mpl/test_ticks.py -@@ -10,7 +10,8 @@ from cartopy.mpl.ticker import LatitudeFormatter, LongitudeFormatter +@@ -11,7 +11,8 @@ from cartopy.mpl.ticker import LatitudeFormatter, LongitudeFormatter @pytest.mark.natural_earth @@ -126,7 +101,7 @@ index f75ad2d2..bc0ba0b7 100644 def test_set_xticks_no_transform(): ax = plt.axes(projection=ccrs.PlateCarree()) ax.coastlines('110m') -@@ -21,7 +22,8 @@ def test_set_xticks_no_transform(): +@@ -22,7 +23,8 @@ def test_set_xticks_no_transform(): @pytest.mark.natural_earth @@ -136,7 +111,7 @@ index f75ad2d2..bc0ba0b7 100644 def test_set_xticks_cylindrical(): ax = plt.axes(projection=ccrs.Mercator(min_latitude=-85, max_latitude=85)) ax.coastlines('110m') -@@ -40,7 +42,8 @@ def test_set_xticks_non_cylindrical(): +@@ -41,7 +43,8 @@ def test_set_xticks_non_cylindrical(): @pytest.mark.natural_earth @@ -146,7 +121,7 @@ index f75ad2d2..bc0ba0b7 100644 def test_set_yticks_no_transform(): ax = plt.axes(projection=ccrs.PlateCarree()) ax.coastlines('110m') -@@ -51,7 +54,8 @@ def test_set_yticks_no_transform(): +@@ -52,7 +55,8 @@ def test_set_yticks_no_transform(): @pytest.mark.natural_earth @@ -156,7 +131,7 @@ index f75ad2d2..bc0ba0b7 100644 def test_set_yticks_cylindrical(): ax = plt.axes(projection=ccrs.Mercator(min_latitude=-85, max_latitude=85)) ax.coastlines('110m') -@@ -72,7 +76,7 @@ def test_set_yticks_non_cylindrical(): +@@ -73,7 +77,7 @@ def test_set_yticks_non_cylindrical(): @pytest.mark.natural_earth @@ -166,5 +141,5 @@ index f75ad2d2..bc0ba0b7 100644 fig = plt.figure(figsize=(10, 10)) projections = (ccrs.PlateCarree(), -- -2.50.0 +2.41.0 diff --git a/0001-Reduce-numpy-build-dependency.patch b/0001-Reduce-numpy-build-dependency.patch deleted file mode 100644 index 42c7c25..0000000 --- a/0001-Reduce-numpy-build-dependency.patch +++ /dev/null @@ -1,26 +0,0 @@ -From e3a61e272d5ab58a2b8f13c6ad05d1136d3a5ecc Mon Sep 17 00:00:00 2001 -From: Elliott Sales de Andrade -Date: Thu, 25 Apr 2024 16:35:29 -0400 -Subject: [PATCH 1/2] Reduce numpy build dependency - -Signed-off-by: Elliott Sales de Andrade ---- - pyproject.toml | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/pyproject.toml b/pyproject.toml -index f0172aac..4e012ede 100644 ---- a/pyproject.toml -+++ b/pyproject.toml -@@ -9,7 +9,7 @@ requires = [ - # Note that building against numpy 1.x works fine too - users and - # redistributors can do this by installing the numpy version they like and - # disabling build isolation. -- "numpy>=2.0.0", -+ "numpy>=1.23", - "setuptools_scm >= 8.0.0", - ] - build-backend = "setuptools.build_meta" --- -2.50.0 - diff --git a/README.packit b/README.packit deleted file mode 100644 index 3ad54d6..0000000 --- a/README.packit +++ /dev/null @@ -1,3 +0,0 @@ -This repository is maintained by packit. -https://packit.dev/ -The file was generated using packit 1.11.0. diff --git a/python-cartopy.spec b/python-cartopy.spec index ba75e74..d59a741 100644 --- a/python-cartopy.spec +++ b/python-cartopy.spec @@ -1,26 +1,22 @@ %global srcname cartopy +%global Srcname Cartopy # Some tests use the network. %bcond_with network Name: python-%{srcname} -Version: 0.25.0 +Version: 0.22.0 Release: %autorelease Summary: Cartographic Python library with Matplotlib visualisations -License: BSD-3-Clause +License: LGPL-3.0-only URL: https://scitools.org.uk/cartopy/docs/latest/ -Source0: %pypi_source %{srcname} +Source0: %pypi_source %{Srcname} # Set location of Fedora-provided pre-existing data. Source1: siteconfig.py -# Fedora specific. -Patch: 0001-Reduce-numpy-build-dependency.patch # Might not go upstream in current form. -Patch: 0002-Increase-tolerance-for-new-FreeType.patch - -# See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval -ExcludeArch: %{ix86} +Patch: 0001-Increase-tolerance-for-new-FreeType.patch BuildRequires: gcc-c++ BuildRequires: proj-data-uk @@ -70,9 +66,10 @@ Data files for %{srcname}. %prep -%autosetup -n %{srcname}-%{version} -p1 +%autosetup -n %{Srcname}-%{version} -p1 cp -a %SOURCE1 lib/cartopy/ +sed -i -e 's/oldest-supported-numpy/numpy/g' pyproject.toml sed -i -e 's/, "pytest-cov", "coveralls"//g' pyproject.toml # Remove generated Cython sources @@ -90,7 +87,7 @@ export FORCE_CYTHON=1 SETUPTOOLS_SCM_PRETEND_VERSION=%{version} %install %pyproject_install -%pyproject_save_files -l %{srcname} +%pyproject_save_files %{srcname} mkdir -p %{buildroot}%{_datadir}/cartopy/shapefiles/natural_earth/ for theme in physical cultural; do @@ -98,6 +95,8 @@ for theme in physical cultural; do %{buildroot}%{_datadir}/cartopy/shapefiles/natural_earth/${theme} done +mv %{buildroot}%{_bindir}/feature_download %{buildroot}%{_bindir}/cartopy_feature_download + %check MPLBACKEND=Agg \ @@ -111,6 +110,7 @@ MPLBACKEND=Agg \ %files -n python-%{srcname}-common %doc README.md +%license COPYING COPYING.LESSER lib/cartopy/data/LICENSE %{_datadir}/cartopy/ %files -n python3-%{srcname} -f %{pyproject_files} diff --git a/sources b/sources index 5b897b0..c21cdcd 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (cartopy-0.25.0.tar.gz) = 6e0576f87dbd154d7dec3c2bbec520d1602874e6b416ca6e461745ceb319dc0f38a53267ad0b1f73bcd0d81674151324c07b7a799fb0a3ad590d1a27c98b3ae7 +SHA512 (Cartopy-0.22.0.tar.gz) = fed45427e8bbd4c98c9abcee80f9148bf7dd5dc310adddb78384681da6ed9583c8daaed293ef3a27fdf3f72257f8ead7532c85d2b5e4fdf8119483625fb7a585