From cbda4d5a88e971b6047d6c90b01cf20cde51ab08 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 21 Jan 2022 12:21:05 +0000 Subject: [PATCH 01/43] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering From 750a9049251ae154e8d961ac621b2731da38b329 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Sun, 8 May 2022 08:15:50 -0400 Subject: [PATCH 02/43] Fix test failures with pandas 1.4 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Backport upstream PR’s #2219, #2289, #2298, and #2320 in order to resolve test failures with pandas 1.4. It seems that PR#2320 may also be needed for pandas 1.3.5, which should have been a compatible release. --- 2219.patch | 79 +++++++++++++++++ 2289.patch | 199 ++++++++++++++++++++++++++++++++++++++++++ 2298.patch | 116 ++++++++++++++++++++++++ 2320.patch | 21 +++++ python-geopandas.spec | 25 ++++++ 5 files changed, 440 insertions(+) create mode 100644 2219.patch create mode 100644 2289.patch create mode 100644 2298.patch create mode 100644 2320.patch diff --git a/2219.patch b/2219.patch new file mode 100644 index 0000000..066daad --- /dev/null +++ b/2219.patch @@ -0,0 +1,79 @@ +From ac67515c9df745b672cca1669adf05eaf5cb0f3b Mon Sep 17 00:00:00 2001 +From: Joris Van den Bossche +Date: Sat, 6 Nov 2021 11:20:08 +0100 +Subject: [PATCH 1/2] TST/COMPAT: update GeometryArray getitem error type + fix + tests + +--- + geopandas/array.py | 6 ++++-- + geopandas/tests/test_extension_array.py | 12 ++++++++++++ + 2 files changed, 16 insertions(+), 2 deletions(-) + +diff --git a/geopandas/array.py b/geopandas/array.py +index 0532c08b8..3319847ea 100644 +--- a/geopandas/array.py ++++ b/geopandas/array.py +@@ -363,10 +363,12 @@ def __getitem__(self, idx): + # for pandas >= 1.0, validate and convert IntegerArray/BooleanArray + # to numpy array, pass-through non-array-like indexers + idx = pd.api.indexers.check_array_indexer(self, idx) +- if isinstance(idx, (Iterable, slice)): + return GeometryArray(self.data[idx], crs=self.crs) + else: +- raise TypeError("Index type not supported", idx) ++ if isinstance(idx, (Iterable, slice)): ++ return GeometryArray(self.data[idx], crs=self.crs) ++ else: ++ raise TypeError("Index type not supported", idx) + + def __setitem__(self, key, value): + if compat.PANDAS_GE_10: +diff --git a/geopandas/tests/test_extension_array.py b/geopandas/tests/test_extension_array.py +index 6e1205b26..9582404b4 100644 +--- a/geopandas/tests/test_extension_array.py ++++ b/geopandas/tests/test_extension_array.py +@@ -231,6 +231,18 @@ def as_array(request): + return request.param + + ++@pytest.fixture ++def invalid_scalar(data): ++ """ ++ A scalar that *cannot* be held by this ExtensionArray. ++ ++ The default should work for most subclasses, but is not guaranteed. ++ ++ If the array can hold any item (i.e. object dtype), then use pytest.skip. ++ """ ++ return object.__new__(object) ++ ++ + # Fixtures defined in pandas/conftest.py that are also needed: defining them + # here instead of importing for compatibility + + +From 7d0de45cd794161c52ee998d3e1e4ac2f683e87b Mon Sep 17 00:00:00 2001 +From: Joris Van den Bossche +Date: Sat, 6 Nov 2021 16:40:22 +0100 +Subject: [PATCH 2/2] fix doctest for GEOS 3.10 + +--- + geopandas/array.py | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/geopandas/array.py b/geopandas/array.py +index 3319847ea..fd7b7fc6f 100644 +--- a/geopandas/array.py ++++ b/geopandas/array.py +@@ -742,8 +742,9 @@ def to_crs(self, crs=None, epsg=None): + + >>> a = a.to_crs(3857) + >>> to_wkt(a) +- array(['POINT (111319 111325)', 'POINT (222639 222684)', +- 'POINT (333958 334111)'], dtype=object) ++ array(['POINT (111319.490793 111325.142866)', ++ 'POINT (222638.981587 222684.208506)', ++ 'POINT (333958.47238 334111.171402)'], dtype=object) + >>> a.crs # doctest: +SKIP + + Name: WGS 84 / Pseudo-Mercator diff --git a/2289.patch b/2289.patch new file mode 100644 index 0000000..54807ac --- /dev/null +++ b/2289.patch @@ -0,0 +1,199 @@ +From f5998c419aef31d237a2bd316199cc6351221c4c Mon Sep 17 00:00:00 2001 +From: Matt Richards +Date: Wed, 5 Jan 2022 12:21:21 +1000 +Subject: [PATCH 1/5] TST: fix test_value_counts pandas master + +--- + geopandas/_compat.py | 1 + + geopandas/tests/test_pandas_methods.py | 19 +++++++++++++++---- + 2 files changed, 16 insertions(+), 4 deletions(-) + +diff --git a/geopandas/_compat.py b/geopandas/_compat.py +index e5ac045df..9fe9e124a 100644 +--- a/geopandas/_compat.py ++++ b/geopandas/_compat.py +@@ -19,6 +19,7 @@ + PANDAS_GE_11 = str(pd.__version__) >= LooseVersion("1.1.0") + PANDAS_GE_115 = str(pd.__version__) >= LooseVersion("1.1.5") + PANDAS_GE_12 = str(pd.__version__) >= LooseVersion("1.2.0") ++PANDAS_GE_20 = str(pd.__version__) > LooseVersion("1.4.0.dev") + + + # ----------------------------------------------------------------------------- +diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py +index 709ad3da0..f9ce67e86 100644 +--- a/geopandas/tests/test_pandas_methods.py ++++ b/geopandas/tests/test_pandas_methods.py +@@ -445,33 +445,44 @@ def test_unique(): + assert_array_equal(s.unique(), exp) + + ++def pd20_compat_index(index): ++ if compat.PANDAS_GE_20: ++ return from_shapely(index) ++ else: ++ return index ++ ++ + def test_value_counts(): + # each object is considered unique + s = GeoSeries([Point(0, 0), Point(1, 1), Point(0, 0)]) + res = s.value_counts() + with compat.ignore_shapely2_warnings(): +- exp = pd.Series([2, 1], index=[Point(0, 0), Point(1, 1)]) ++ exp = pd.Series([2, 1], index=pd20_compat_index([Point(0, 0), Point(1, 1)])) + assert_series_equal(res, exp) + # Check crs doesn't make a difference - note it is not kept in output index anyway + s2 = GeoSeries([Point(0, 0), Point(1, 1), Point(0, 0)], crs="EPSG:4326") + res2 = s2.value_counts() + assert_series_equal(res2, exp) ++ if compat.PANDAS_GE_20: ++ # TODO should/ can we fix CRS being lost ++ assert s2.value_counts().index.array.crs is None + + # check mixed geometry + s3 = GeoSeries([Point(0, 0), LineString([[1, 1], [2, 2]]), Point(0, 0)]) + res3 = s3.value_counts() ++ index = pd20_compat_index([Point(0, 0), LineString([[1, 1], [2, 2]])]) + with compat.ignore_shapely2_warnings(): +- exp3 = pd.Series([2, 1], index=[Point(0, 0), LineString([[1, 1], [2, 2]])]) ++ exp3 = pd.Series([2, 1], index=index) + assert_series_equal(res3, exp3) + + # check None is handled + s4 = GeoSeries([Point(0, 0), None, Point(0, 0)]) + res4 = s4.value_counts(dropna=True) + with compat.ignore_shapely2_warnings(): +- exp4_dropna = pd.Series([2], index=[Point(0, 0)]) ++ exp4_dropna = pd.Series([2], index=pd20_compat_index([Point(0, 0)])) + assert_series_equal(res4, exp4_dropna) + with compat.ignore_shapely2_warnings(): +- exp4_keepna = pd.Series([2, 1], index=[Point(0, 0), None]) ++ exp4_keepna = pd.Series([2, 1], index=pd20_compat_index([Point(0, 0), None])) + res4_keepna = s4.value_counts(dropna=False) + assert_series_equal(res4_keepna, exp4_keepna) + + +From ecff4fd976fa619ae9f9792904ec1ecc291f092d Mon Sep 17 00:00:00 2001 +From: Matt Richards <45483497+m-richards@users.noreply.github.com> +Date: Sun, 9 Jan 2022 21:43:42 +1000 +Subject: [PATCH 2/5] Update geopandas/_compat.py + +Co-authored-by: Joris Van den Bossche +--- + geopandas/_compat.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/geopandas/_compat.py b/geopandas/_compat.py +index 9fe9e124a..000db2a60 100644 +--- a/geopandas/_compat.py ++++ b/geopandas/_compat.py +@@ -19,7 +19,7 @@ + PANDAS_GE_11 = str(pd.__version__) >= LooseVersion("1.1.0") + PANDAS_GE_115 = str(pd.__version__) >= LooseVersion("1.1.5") + PANDAS_GE_12 = str(pd.__version__) >= LooseVersion("1.2.0") +-PANDAS_GE_20 = str(pd.__version__) > LooseVersion("1.4.0.dev") ++PANDAS_GE_14 = str(pd.__version__) >= LooseVersion("1.4.0") + + + # ----------------------------------------------------------------------------- + +From 9f22ee43d6960d7c8b6cfdc1907e8e424dc99ba7 Mon Sep 17 00:00:00 2001 +From: Matt Richards <45483497+m-richards@users.noreply.github.com> +Date: Sun, 9 Jan 2022 21:44:25 +1000 +Subject: [PATCH 3/5] Update geopandas/tests/test_pandas_methods.py + +--- + geopandas/tests/test_pandas_methods.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py +index f9ce67e86..82a03869e 100644 +--- a/geopandas/tests/test_pandas_methods.py ++++ b/geopandas/tests/test_pandas_methods.py +@@ -446,7 +446,7 @@ def test_unique(): + + + def pd20_compat_index(index): +- if compat.PANDAS_GE_20: ++ if compat.PANDAS_GE_14: + return from_shapely(index) + else: + return index + +From 2281d167eba59df24a80607d28d6e54c9a20fedd Mon Sep 17 00:00:00 2001 +From: Matt Richards <45483497+m-richards@users.noreply.github.com> +Date: Sun, 9 Jan 2022 21:45:04 +1000 +Subject: [PATCH 4/5] Update test_pandas_methods.py + +--- + geopandas/tests/test_pandas_methods.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py +index 82a03869e..a78e9f0df 100644 +--- a/geopandas/tests/test_pandas_methods.py ++++ b/geopandas/tests/test_pandas_methods.py +@@ -463,7 +463,7 @@ def test_value_counts(): + s2 = GeoSeries([Point(0, 0), Point(1, 1), Point(0, 0)], crs="EPSG:4326") + res2 = s2.value_counts() + assert_series_equal(res2, exp) +- if compat.PANDAS_GE_20: ++ if compat.PANDAS_GE_14: + # TODO should/ can we fix CRS being lost + assert s2.value_counts().index.array.crs is None + + +From 40eb9185c7e18bebf5b6e3cb8da6de7d5520e81f Mon Sep 17 00:00:00 2001 +From: Matt Richards +Date: Sun, 9 Jan 2022 21:46:59 +1000 +Subject: [PATCH 5/5] CLN: finish renames + +--- + geopandas/tests/test_pandas_methods.py | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py +index a78e9f0df..ed080af46 100644 +--- a/geopandas/tests/test_pandas_methods.py ++++ b/geopandas/tests/test_pandas_methods.py +@@ -445,7 +445,7 @@ def test_unique(): + assert_array_equal(s.unique(), exp) + + +-def pd20_compat_index(index): ++def pd14_compat_index(index): + if compat.PANDAS_GE_14: + return from_shapely(index) + else: +@@ -457,7 +457,7 @@ def test_value_counts(): + s = GeoSeries([Point(0, 0), Point(1, 1), Point(0, 0)]) + res = s.value_counts() + with compat.ignore_shapely2_warnings(): +- exp = pd.Series([2, 1], index=pd20_compat_index([Point(0, 0), Point(1, 1)])) ++ exp = pd.Series([2, 1], index=pd14_compat_index([Point(0, 0), Point(1, 1)])) + assert_series_equal(res, exp) + # Check crs doesn't make a difference - note it is not kept in output index anyway + s2 = GeoSeries([Point(0, 0), Point(1, 1), Point(0, 0)], crs="EPSG:4326") +@@ -470,7 +470,7 @@ def test_value_counts(): + # check mixed geometry + s3 = GeoSeries([Point(0, 0), LineString([[1, 1], [2, 2]]), Point(0, 0)]) + res3 = s3.value_counts() +- index = pd20_compat_index([Point(0, 0), LineString([[1, 1], [2, 2]])]) ++ index = pd14_compat_index([Point(0, 0), LineString([[1, 1], [2, 2]])]) + with compat.ignore_shapely2_warnings(): + exp3 = pd.Series([2, 1], index=index) + assert_series_equal(res3, exp3) +@@ -479,10 +479,10 @@ def test_value_counts(): + s4 = GeoSeries([Point(0, 0), None, Point(0, 0)]) + res4 = s4.value_counts(dropna=True) + with compat.ignore_shapely2_warnings(): +- exp4_dropna = pd.Series([2], index=pd20_compat_index([Point(0, 0)])) ++ exp4_dropna = pd.Series([2], index=pd14_compat_index([Point(0, 0)])) + assert_series_equal(res4, exp4_dropna) + with compat.ignore_shapely2_warnings(): +- exp4_keepna = pd.Series([2, 1], index=pd20_compat_index([Point(0, 0), None])) ++ exp4_keepna = pd.Series([2, 1], index=pd14_compat_index([Point(0, 0), None])) + res4_keepna = s4.value_counts(dropna=False) + assert_series_equal(res4_keepna, exp4_keepna) + diff --git a/2298.patch b/2298.patch new file mode 100644 index 0000000..1b228f0 --- /dev/null +++ b/2298.patch @@ -0,0 +1,116 @@ +From 4121b08257d60cb1c9f504257ca2d8064461ea61 Mon Sep 17 00:00:00 2001 +From: Joris Van den Bossche +Date: Fri, 14 Jan 2022 10:58:10 +0100 +Subject: [PATCH 1/3] TST: test groupby apply with function that requires + GeoDataFrame attributes + +--- + geopandas/tests/test_pandas_methods.py | 34 ++++++++++++++++++++++++++ + 1 file changed, 34 insertions(+) + +diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py +index ed080af46..41db42809 100644 +--- a/geopandas/tests/test_pandas_methods.py ++++ b/geopandas/tests/test_pandas_methods.py +@@ -558,6 +558,40 @@ def test_groupby_groups(df): + assert_frame_equal(res, exp) + + ++@pytest.mark.parametrize("crs", [None, "EPSG:4326"]) ++def test_groupby_metadata(crs): ++ # https://github.com/geopandas/geopandas/issues/2294 ++ df = GeoDataFrame( ++ { ++ "geometry": [Point(0, 0), Point(1, 1), Point(0, 0)], ++ "value1": np.arange(3, dtype="int64"), ++ "value2": np.array([1, 2, 1], dtype="int64"), ++ }, ++ crs=crs, ++ ) ++ ++ # dummy test asserting we can access the crs ++ def func(group): ++ assert isinstance(group, GeoDataFrame) ++ assert group.crs == crs ++ ++ df.groupby("value2").apply(func) ++ ++ # actual test with functionality ++ res = df.groupby("value2").apply( ++ lambda x: geopandas.sjoin(x, x[["geometry", "value1"]], how="inner") ++ ) ++ ++ expected = ( ++ df.take([0, 2, 0, 2, 1]) ++ .set_index("value2", drop=False, append=True) ++ .swaplevel() ++ .rename(columns={"value1": "value1_left"}) ++ .assign(value1_right=[0, 0, 2, 2, 1]) ++ ) ++ assert_geodataframe_equal(res.drop(columns=["index_right"]), expected) ++ ++ + def test_apply(s): + # function that returns geometry preserves GeoSeries class + def geom_func(geom): + +From df3fc9ec5a241a01d76640404dcd0dab9b6ef434 Mon Sep 17 00:00:00 2001 +From: Joris Van den Bossche +Date: Mon, 17 Jan 2022 17:11:59 +0100 +Subject: [PATCH 2/3] skip for pandas 1.3.5 + +--- + geopandas/_compat.py | 1 + + geopandas/tests/test_pandas_methods.py | 4 ++++ + 2 files changed, 5 insertions(+) + +diff --git a/geopandas/_compat.py b/geopandas/_compat.py +index 000db2a60..f233eee84 100644 +--- a/geopandas/_compat.py ++++ b/geopandas/_compat.py +@@ -19,6 +19,7 @@ + PANDAS_GE_11 = str(pd.__version__) >= LooseVersion("1.1.0") + PANDAS_GE_115 = str(pd.__version__) >= LooseVersion("1.1.5") + PANDAS_GE_12 = str(pd.__version__) >= LooseVersion("1.2.0") ++PANDAS_GE_13 = str(pd.__version__) >= LooseVersion("1.3.0") + PANDAS_GE_14 = str(pd.__version__) >= LooseVersion("1.4.0") + + +diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py +index 41db42809..6c55e7ef6 100644 +--- a/geopandas/tests/test_pandas_methods.py ++++ b/geopandas/tests/test_pandas_methods.py +@@ -558,6 +558,10 @@ def test_groupby_groups(df): + assert_frame_equal(res, exp) + + ++@pytest.mark.skipif( ++ compat.PANDAS_GE_13 and not compat.PANDAS_GE_14, ++ reason="this was broken in pandas 1.3.5", ++) + @pytest.mark.parametrize("crs", [None, "EPSG:4326"]) + def test_groupby_metadata(crs): + # https://github.com/geopandas/geopandas/issues/2294 + +From d9a52c7945c254b313232739c7aaeed778a4f436 Mon Sep 17 00:00:00 2001 +From: Joris Van den Bossche +Date: Tue, 18 Jan 2022 00:47:59 +0100 +Subject: [PATCH 3/3] add issue number in skip comment + +--- + geopandas/tests/test_pandas_methods.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py +index 6c55e7ef6..c6d04209b 100644 +--- a/geopandas/tests/test_pandas_methods.py ++++ b/geopandas/tests/test_pandas_methods.py +@@ -560,7 +560,7 @@ def test_groupby_groups(df): + + @pytest.mark.skipif( + compat.PANDAS_GE_13 and not compat.PANDAS_GE_14, +- reason="this was broken in pandas 1.3.5", ++ reason="this was broken in pandas 1.3.5 (GH-2294)", + ) + @pytest.mark.parametrize("crs", [None, "EPSG:4326"]) + def test_groupby_metadata(crs): diff --git a/2320.patch b/2320.patch new file mode 100644 index 0000000..cac555e --- /dev/null +++ b/2320.patch @@ -0,0 +1,21 @@ +From 197617180d78e72f6c8699dbde0ed7cff1c3c34e Mon Sep 17 00:00:00 2001 +From: Joris Van den Bossche +Date: Sun, 23 Jan 2022 10:35:25 +0100 +Subject: [PATCH] TST: skip pandas groupby test if no sindex available + +--- + geopandas/tests/test_pandas_methods.py | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py +index 72dbcffc0..42c79de7e 100644 +--- a/geopandas/tests/test_pandas_methods.py ++++ b/geopandas/tests/test_pandas_methods.py +@@ -558,6 +558,7 @@ def test_groupby_groups(df): + assert_frame_equal(res, exp) + + ++@pytest.mark.skip_no_sindex + @pytest.mark.skipif( + compat.PANDAS_GE_13 and not compat.PANDAS_GE_14, + reason="this was broken in pandas 1.3.5 (GH-2294)", diff --git a/python-geopandas.spec b/python-geopandas.spec index 4bc2606..c32e4ac 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -19,6 +19,31 @@ Source0: https://github.com/%{srcname}/%{srcname}/archive/v%{version}/%{s BuildArch: noarch +# TST/COMPAT: update GeometryArray getitem error type + fix tests +# https://github.com/geopandas/geopandas/pull/2219 +# +# Fixes: +# TST: tests with invalid values fail with pandas master +# https://github.com/geopandas/geopandas/issues/2207 +Patch: https://github.com/%{srcname}/%{srcname}/pull/2219.patch +# TST: fix test_value_counts test for pandas 1.4 +# https://github.com/geopandas/geopandas/pull/2289 +# +# Fixes: +# TST: test_value_counts breaking against pandas latest +# https://github.com/geopandas/geopandas/issues/2287 +Patch: https://github.com/%{srcname}/%{srcname}/pull/2289.patch +# TST: test groupby apply with function that requires GeoDataFrame attributes +# https://github.com/geopandas/geopandas/pull/2298 +# +# Fixes: +# BUG: Missing _crs attribute when using sjoin on grouped gdf and latest version of pandas +# https://github.com/geopandas/geopandas/issues/2294 +Patch: https://github.com/%{srcname}/%{srcname}/pull/2298.patch +# TST: skip pandas groupby test if no sindex available +# https://github.com/geopandas/geopandas/pull/2320 +Patch: https://github.com/%{srcname}/%{srcname}/pull/2320.patch + %description %{_description} From 4c748c4cf875dc830fb6a6f3950c05812335f2b0 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Sun, 22 May 2022 10:41:54 -0400 Subject: [PATCH 03/43] Add a BR on python3dist(pandas[test]) This is necessary since the geopandas tests inherit from the Pandas ones, and pandas.tests is now packaged in python3-pandas+test. --- python-geopandas.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/python-geopandas.spec b/python-geopandas.spec index c32e4ac..17748a3 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -60,6 +60,10 @@ BuildRequires: python3dist(rtree) >= 0.8 BuildRequires: python3dist(sqlalchemy) BuildRequires: python3dist(matplotlib) >= 2.0.1 BuildRequires: python3dist(mapclassify) +# See: +# Depend on pandas[test] for testing +# https://github.com/geopandas/geopandas/pull/2438 +BuildRequires: python3dist(pandas[test]) %description -n python3-%{srcname} %{_description} From a46e3971a9eb62d03080036239f9a95a55e4a756 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Wed, 15 Jun 2022 10:54:39 +0200 Subject: [PATCH 04/43] Introduce a tests bcond MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The current loops are: • python-geopandas → python-mapclassify → python-libpysal → python-networkx → python-geopandas • python-geopandas → python-mapclassify → python-networkx → python-libpysal → python-geopandas • python-geopandas → python-mapclassify → python-networkx → python-geopandas • python-geopandas → python-networkx → python-libpysal → python-geopandas • python-geopandas → python-networkx → python-geopandas • python-geopandas → python-mapclassify → python-libpysal → python-geopandas • python-geopandas → python-mapclassify → python-geopandas --- python-geopandas.spec | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/python-geopandas.spec b/python-geopandas.spec index 17748a3..dff8e45 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -1,5 +1,10 @@ %global srcname geopandas +# There is a build dependency loop when built with tests. +# It involves libpysal, mapclassify, networkx. +# This bcons allows to bootstrap it. +%bcond_without tests + Name: python-%{srcname} Version: 0.10.2 Release: %autorelease @@ -49,10 +54,10 @@ Patch: https://github.com/%{srcname}/%{srcname}/pull/2320.patch %package -n python3-%{srcname} Summary: %{summary} - BuildRequires: python3-devel -BuildRequires: python3dist(numpy) >= 1.15 +%if %{with tests} +BuildRequires: python3dist(numpy) >= 1.15 BuildRequires: python3dist(pytest) BuildRequires: python3dist(fsspec) BuildRequires: python3dist(psycopg2) @@ -64,6 +69,7 @@ BuildRequires: python3dist(mapclassify) # Depend on pandas[test] for testing # https://github.com/geopandas/geopandas/pull/2438 BuildRequires: python3dist(pandas[test]) +%endif %description -n python3-%{srcname} %{_description} @@ -81,7 +87,12 @@ BuildRequires: python3dist(pandas[test]) %pyproject_save_files %{srcname} %check +%if %{with tests} %{pytest} -ra geopandas -m 'not web' +%else +# naturalearth_creation assumes zipfile from naturalearthdata was downloaded to current directory +%pyproject_check_import -e 'geopandas.*test*' -e geopandas.datasets.naturalearth_creation +%endif %files -n python3-%{srcname} -f %{pyproject_files} %license LICENSE.txt From b431b0577da75c74a2e67e231e46a4ac0c1ec4a7 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Tue, 21 Jun 2022 18:35:11 +0200 Subject: [PATCH 05/43] Bootstrap for Python 3.11 --- python-geopandas.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/python-geopandas.spec b/python-geopandas.spec index dff8e45..739f716 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -1,3 +1,4 @@ +%global _without_tests 1 %global srcname geopandas # There is a build dependency loop when built with tests. From 96ce582c50f26897285e8a7c5655bdd6e8ae4a7e Mon Sep 17 00:00:00 2001 From: Python Maint Date: Mon, 4 Jul 2022 10:44:10 +0200 Subject: [PATCH 06/43] Rebuilt for Python 3.11 --- python-geopandas.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/python-geopandas.spec b/python-geopandas.spec index 739f716..dff8e45 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -1,4 +1,3 @@ -%global _without_tests 1 %global srcname geopandas # There is a build dependency loop when built with tests. From 3a3805a604c66c59ce446ae1c59cb49c706c2902 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 22 Jul 2022 18:43:20 +0000 Subject: [PATCH 07/43] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering From f78643fbd79ad078caf0762e13271a2093d995ad Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Sun, 31 Jul 2022 14:58:20 -0400 Subject: [PATCH 08/43] Update to latest version (#2099491) --- .gitignore | 1 + 2219.patch | 79 ----------------- 2289.patch | 199 ------------------------------------------ 2298.patch | 116 ------------------------ 2320.patch | 21 ----- python-geopandas.spec | 40 ++------- sources | 2 +- 7 files changed, 10 insertions(+), 448 deletions(-) delete mode 100644 2219.patch delete mode 100644 2289.patch delete mode 100644 2298.patch delete mode 100644 2320.patch diff --git a/.gitignore b/.gitignore index d90cfa3..25c9eb6 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ /geopandas-0.10.0.tar.gz /geopandas-0.10.1.tar.gz /geopandas-0.10.2.tar.gz +/geopandas-0.11.1.tar.gz diff --git a/2219.patch b/2219.patch deleted file mode 100644 index 066daad..0000000 --- a/2219.patch +++ /dev/null @@ -1,79 +0,0 @@ -From ac67515c9df745b672cca1669adf05eaf5cb0f3b Mon Sep 17 00:00:00 2001 -From: Joris Van den Bossche -Date: Sat, 6 Nov 2021 11:20:08 +0100 -Subject: [PATCH 1/2] TST/COMPAT: update GeometryArray getitem error type + fix - tests - ---- - geopandas/array.py | 6 ++++-- - geopandas/tests/test_extension_array.py | 12 ++++++++++++ - 2 files changed, 16 insertions(+), 2 deletions(-) - -diff --git a/geopandas/array.py b/geopandas/array.py -index 0532c08b8..3319847ea 100644 ---- a/geopandas/array.py -+++ b/geopandas/array.py -@@ -363,10 +363,12 @@ def __getitem__(self, idx): - # for pandas >= 1.0, validate and convert IntegerArray/BooleanArray - # to numpy array, pass-through non-array-like indexers - idx = pd.api.indexers.check_array_indexer(self, idx) -- if isinstance(idx, (Iterable, slice)): - return GeometryArray(self.data[idx], crs=self.crs) - else: -- raise TypeError("Index type not supported", idx) -+ if isinstance(idx, (Iterable, slice)): -+ return GeometryArray(self.data[idx], crs=self.crs) -+ else: -+ raise TypeError("Index type not supported", idx) - - def __setitem__(self, key, value): - if compat.PANDAS_GE_10: -diff --git a/geopandas/tests/test_extension_array.py b/geopandas/tests/test_extension_array.py -index 6e1205b26..9582404b4 100644 ---- a/geopandas/tests/test_extension_array.py -+++ b/geopandas/tests/test_extension_array.py -@@ -231,6 +231,18 @@ def as_array(request): - return request.param - - -+@pytest.fixture -+def invalid_scalar(data): -+ """ -+ A scalar that *cannot* be held by this ExtensionArray. -+ -+ The default should work for most subclasses, but is not guaranteed. -+ -+ If the array can hold any item (i.e. object dtype), then use pytest.skip. -+ """ -+ return object.__new__(object) -+ -+ - # Fixtures defined in pandas/conftest.py that are also needed: defining them - # here instead of importing for compatibility - - -From 7d0de45cd794161c52ee998d3e1e4ac2f683e87b Mon Sep 17 00:00:00 2001 -From: Joris Van den Bossche -Date: Sat, 6 Nov 2021 16:40:22 +0100 -Subject: [PATCH 2/2] fix doctest for GEOS 3.10 - ---- - geopandas/array.py | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/geopandas/array.py b/geopandas/array.py -index 3319847ea..fd7b7fc6f 100644 ---- a/geopandas/array.py -+++ b/geopandas/array.py -@@ -742,8 +742,9 @@ def to_crs(self, crs=None, epsg=None): - - >>> a = a.to_crs(3857) - >>> to_wkt(a) -- array(['POINT (111319 111325)', 'POINT (222639 222684)', -- 'POINT (333958 334111)'], dtype=object) -+ array(['POINT (111319.490793 111325.142866)', -+ 'POINT (222638.981587 222684.208506)', -+ 'POINT (333958.47238 334111.171402)'], dtype=object) - >>> a.crs # doctest: +SKIP - - Name: WGS 84 / Pseudo-Mercator diff --git a/2289.patch b/2289.patch deleted file mode 100644 index 54807ac..0000000 --- a/2289.patch +++ /dev/null @@ -1,199 +0,0 @@ -From f5998c419aef31d237a2bd316199cc6351221c4c Mon Sep 17 00:00:00 2001 -From: Matt Richards -Date: Wed, 5 Jan 2022 12:21:21 +1000 -Subject: [PATCH 1/5] TST: fix test_value_counts pandas master - ---- - geopandas/_compat.py | 1 + - geopandas/tests/test_pandas_methods.py | 19 +++++++++++++++---- - 2 files changed, 16 insertions(+), 4 deletions(-) - -diff --git a/geopandas/_compat.py b/geopandas/_compat.py -index e5ac045df..9fe9e124a 100644 ---- a/geopandas/_compat.py -+++ b/geopandas/_compat.py -@@ -19,6 +19,7 @@ - PANDAS_GE_11 = str(pd.__version__) >= LooseVersion("1.1.0") - PANDAS_GE_115 = str(pd.__version__) >= LooseVersion("1.1.5") - PANDAS_GE_12 = str(pd.__version__) >= LooseVersion("1.2.0") -+PANDAS_GE_20 = str(pd.__version__) > LooseVersion("1.4.0.dev") - - - # ----------------------------------------------------------------------------- -diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py -index 709ad3da0..f9ce67e86 100644 ---- a/geopandas/tests/test_pandas_methods.py -+++ b/geopandas/tests/test_pandas_methods.py -@@ -445,33 +445,44 @@ def test_unique(): - assert_array_equal(s.unique(), exp) - - -+def pd20_compat_index(index): -+ if compat.PANDAS_GE_20: -+ return from_shapely(index) -+ else: -+ return index -+ -+ - def test_value_counts(): - # each object is considered unique - s = GeoSeries([Point(0, 0), Point(1, 1), Point(0, 0)]) - res = s.value_counts() - with compat.ignore_shapely2_warnings(): -- exp = pd.Series([2, 1], index=[Point(0, 0), Point(1, 1)]) -+ exp = pd.Series([2, 1], index=pd20_compat_index([Point(0, 0), Point(1, 1)])) - assert_series_equal(res, exp) - # Check crs doesn't make a difference - note it is not kept in output index anyway - s2 = GeoSeries([Point(0, 0), Point(1, 1), Point(0, 0)], crs="EPSG:4326") - res2 = s2.value_counts() - assert_series_equal(res2, exp) -+ if compat.PANDAS_GE_20: -+ # TODO should/ can we fix CRS being lost -+ assert s2.value_counts().index.array.crs is None - - # check mixed geometry - s3 = GeoSeries([Point(0, 0), LineString([[1, 1], [2, 2]]), Point(0, 0)]) - res3 = s3.value_counts() -+ index = pd20_compat_index([Point(0, 0), LineString([[1, 1], [2, 2]])]) - with compat.ignore_shapely2_warnings(): -- exp3 = pd.Series([2, 1], index=[Point(0, 0), LineString([[1, 1], [2, 2]])]) -+ exp3 = pd.Series([2, 1], index=index) - assert_series_equal(res3, exp3) - - # check None is handled - s4 = GeoSeries([Point(0, 0), None, Point(0, 0)]) - res4 = s4.value_counts(dropna=True) - with compat.ignore_shapely2_warnings(): -- exp4_dropna = pd.Series([2], index=[Point(0, 0)]) -+ exp4_dropna = pd.Series([2], index=pd20_compat_index([Point(0, 0)])) - assert_series_equal(res4, exp4_dropna) - with compat.ignore_shapely2_warnings(): -- exp4_keepna = pd.Series([2, 1], index=[Point(0, 0), None]) -+ exp4_keepna = pd.Series([2, 1], index=pd20_compat_index([Point(0, 0), None])) - res4_keepna = s4.value_counts(dropna=False) - assert_series_equal(res4_keepna, exp4_keepna) - - -From ecff4fd976fa619ae9f9792904ec1ecc291f092d Mon Sep 17 00:00:00 2001 -From: Matt Richards <45483497+m-richards@users.noreply.github.com> -Date: Sun, 9 Jan 2022 21:43:42 +1000 -Subject: [PATCH 2/5] Update geopandas/_compat.py - -Co-authored-by: Joris Van den Bossche ---- - geopandas/_compat.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/geopandas/_compat.py b/geopandas/_compat.py -index 9fe9e124a..000db2a60 100644 ---- a/geopandas/_compat.py -+++ b/geopandas/_compat.py -@@ -19,7 +19,7 @@ - PANDAS_GE_11 = str(pd.__version__) >= LooseVersion("1.1.0") - PANDAS_GE_115 = str(pd.__version__) >= LooseVersion("1.1.5") - PANDAS_GE_12 = str(pd.__version__) >= LooseVersion("1.2.0") --PANDAS_GE_20 = str(pd.__version__) > LooseVersion("1.4.0.dev") -+PANDAS_GE_14 = str(pd.__version__) >= LooseVersion("1.4.0") - - - # ----------------------------------------------------------------------------- - -From 9f22ee43d6960d7c8b6cfdc1907e8e424dc99ba7 Mon Sep 17 00:00:00 2001 -From: Matt Richards <45483497+m-richards@users.noreply.github.com> -Date: Sun, 9 Jan 2022 21:44:25 +1000 -Subject: [PATCH 3/5] Update geopandas/tests/test_pandas_methods.py - ---- - geopandas/tests/test_pandas_methods.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py -index f9ce67e86..82a03869e 100644 ---- a/geopandas/tests/test_pandas_methods.py -+++ b/geopandas/tests/test_pandas_methods.py -@@ -446,7 +446,7 @@ def test_unique(): - - - def pd20_compat_index(index): -- if compat.PANDAS_GE_20: -+ if compat.PANDAS_GE_14: - return from_shapely(index) - else: - return index - -From 2281d167eba59df24a80607d28d6e54c9a20fedd Mon Sep 17 00:00:00 2001 -From: Matt Richards <45483497+m-richards@users.noreply.github.com> -Date: Sun, 9 Jan 2022 21:45:04 +1000 -Subject: [PATCH 4/5] Update test_pandas_methods.py - ---- - geopandas/tests/test_pandas_methods.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py -index 82a03869e..a78e9f0df 100644 ---- a/geopandas/tests/test_pandas_methods.py -+++ b/geopandas/tests/test_pandas_methods.py -@@ -463,7 +463,7 @@ def test_value_counts(): - s2 = GeoSeries([Point(0, 0), Point(1, 1), Point(0, 0)], crs="EPSG:4326") - res2 = s2.value_counts() - assert_series_equal(res2, exp) -- if compat.PANDAS_GE_20: -+ if compat.PANDAS_GE_14: - # TODO should/ can we fix CRS being lost - assert s2.value_counts().index.array.crs is None - - -From 40eb9185c7e18bebf5b6e3cb8da6de7d5520e81f Mon Sep 17 00:00:00 2001 -From: Matt Richards -Date: Sun, 9 Jan 2022 21:46:59 +1000 -Subject: [PATCH 5/5] CLN: finish renames - ---- - geopandas/tests/test_pandas_methods.py | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py -index a78e9f0df..ed080af46 100644 ---- a/geopandas/tests/test_pandas_methods.py -+++ b/geopandas/tests/test_pandas_methods.py -@@ -445,7 +445,7 @@ def test_unique(): - assert_array_equal(s.unique(), exp) - - --def pd20_compat_index(index): -+def pd14_compat_index(index): - if compat.PANDAS_GE_14: - return from_shapely(index) - else: -@@ -457,7 +457,7 @@ def test_value_counts(): - s = GeoSeries([Point(0, 0), Point(1, 1), Point(0, 0)]) - res = s.value_counts() - with compat.ignore_shapely2_warnings(): -- exp = pd.Series([2, 1], index=pd20_compat_index([Point(0, 0), Point(1, 1)])) -+ exp = pd.Series([2, 1], index=pd14_compat_index([Point(0, 0), Point(1, 1)])) - assert_series_equal(res, exp) - # Check crs doesn't make a difference - note it is not kept in output index anyway - s2 = GeoSeries([Point(0, 0), Point(1, 1), Point(0, 0)], crs="EPSG:4326") -@@ -470,7 +470,7 @@ def test_value_counts(): - # check mixed geometry - s3 = GeoSeries([Point(0, 0), LineString([[1, 1], [2, 2]]), Point(0, 0)]) - res3 = s3.value_counts() -- index = pd20_compat_index([Point(0, 0), LineString([[1, 1], [2, 2]])]) -+ index = pd14_compat_index([Point(0, 0), LineString([[1, 1], [2, 2]])]) - with compat.ignore_shapely2_warnings(): - exp3 = pd.Series([2, 1], index=index) - assert_series_equal(res3, exp3) -@@ -479,10 +479,10 @@ def test_value_counts(): - s4 = GeoSeries([Point(0, 0), None, Point(0, 0)]) - res4 = s4.value_counts(dropna=True) - with compat.ignore_shapely2_warnings(): -- exp4_dropna = pd.Series([2], index=pd20_compat_index([Point(0, 0)])) -+ exp4_dropna = pd.Series([2], index=pd14_compat_index([Point(0, 0)])) - assert_series_equal(res4, exp4_dropna) - with compat.ignore_shapely2_warnings(): -- exp4_keepna = pd.Series([2, 1], index=pd20_compat_index([Point(0, 0), None])) -+ exp4_keepna = pd.Series([2, 1], index=pd14_compat_index([Point(0, 0), None])) - res4_keepna = s4.value_counts(dropna=False) - assert_series_equal(res4_keepna, exp4_keepna) - diff --git a/2298.patch b/2298.patch deleted file mode 100644 index 1b228f0..0000000 --- a/2298.patch +++ /dev/null @@ -1,116 +0,0 @@ -From 4121b08257d60cb1c9f504257ca2d8064461ea61 Mon Sep 17 00:00:00 2001 -From: Joris Van den Bossche -Date: Fri, 14 Jan 2022 10:58:10 +0100 -Subject: [PATCH 1/3] TST: test groupby apply with function that requires - GeoDataFrame attributes - ---- - geopandas/tests/test_pandas_methods.py | 34 ++++++++++++++++++++++++++ - 1 file changed, 34 insertions(+) - -diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py -index ed080af46..41db42809 100644 ---- a/geopandas/tests/test_pandas_methods.py -+++ b/geopandas/tests/test_pandas_methods.py -@@ -558,6 +558,40 @@ def test_groupby_groups(df): - assert_frame_equal(res, exp) - - -+@pytest.mark.parametrize("crs", [None, "EPSG:4326"]) -+def test_groupby_metadata(crs): -+ # https://github.com/geopandas/geopandas/issues/2294 -+ df = GeoDataFrame( -+ { -+ "geometry": [Point(0, 0), Point(1, 1), Point(0, 0)], -+ "value1": np.arange(3, dtype="int64"), -+ "value2": np.array([1, 2, 1], dtype="int64"), -+ }, -+ crs=crs, -+ ) -+ -+ # dummy test asserting we can access the crs -+ def func(group): -+ assert isinstance(group, GeoDataFrame) -+ assert group.crs == crs -+ -+ df.groupby("value2").apply(func) -+ -+ # actual test with functionality -+ res = df.groupby("value2").apply( -+ lambda x: geopandas.sjoin(x, x[["geometry", "value1"]], how="inner") -+ ) -+ -+ expected = ( -+ df.take([0, 2, 0, 2, 1]) -+ .set_index("value2", drop=False, append=True) -+ .swaplevel() -+ .rename(columns={"value1": "value1_left"}) -+ .assign(value1_right=[0, 0, 2, 2, 1]) -+ ) -+ assert_geodataframe_equal(res.drop(columns=["index_right"]), expected) -+ -+ - def test_apply(s): - # function that returns geometry preserves GeoSeries class - def geom_func(geom): - -From df3fc9ec5a241a01d76640404dcd0dab9b6ef434 Mon Sep 17 00:00:00 2001 -From: Joris Van den Bossche -Date: Mon, 17 Jan 2022 17:11:59 +0100 -Subject: [PATCH 2/3] skip for pandas 1.3.5 - ---- - geopandas/_compat.py | 1 + - geopandas/tests/test_pandas_methods.py | 4 ++++ - 2 files changed, 5 insertions(+) - -diff --git a/geopandas/_compat.py b/geopandas/_compat.py -index 000db2a60..f233eee84 100644 ---- a/geopandas/_compat.py -+++ b/geopandas/_compat.py -@@ -19,6 +19,7 @@ - PANDAS_GE_11 = str(pd.__version__) >= LooseVersion("1.1.0") - PANDAS_GE_115 = str(pd.__version__) >= LooseVersion("1.1.5") - PANDAS_GE_12 = str(pd.__version__) >= LooseVersion("1.2.0") -+PANDAS_GE_13 = str(pd.__version__) >= LooseVersion("1.3.0") - PANDAS_GE_14 = str(pd.__version__) >= LooseVersion("1.4.0") - - -diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py -index 41db42809..6c55e7ef6 100644 ---- a/geopandas/tests/test_pandas_methods.py -+++ b/geopandas/tests/test_pandas_methods.py -@@ -558,6 +558,10 @@ def test_groupby_groups(df): - assert_frame_equal(res, exp) - - -+@pytest.mark.skipif( -+ compat.PANDAS_GE_13 and not compat.PANDAS_GE_14, -+ reason="this was broken in pandas 1.3.5", -+) - @pytest.mark.parametrize("crs", [None, "EPSG:4326"]) - def test_groupby_metadata(crs): - # https://github.com/geopandas/geopandas/issues/2294 - -From d9a52c7945c254b313232739c7aaeed778a4f436 Mon Sep 17 00:00:00 2001 -From: Joris Van den Bossche -Date: Tue, 18 Jan 2022 00:47:59 +0100 -Subject: [PATCH 3/3] add issue number in skip comment - ---- - geopandas/tests/test_pandas_methods.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py -index 6c55e7ef6..c6d04209b 100644 ---- a/geopandas/tests/test_pandas_methods.py -+++ b/geopandas/tests/test_pandas_methods.py -@@ -560,7 +560,7 @@ def test_groupby_groups(df): - - @pytest.mark.skipif( - compat.PANDAS_GE_13 and not compat.PANDAS_GE_14, -- reason="this was broken in pandas 1.3.5", -+ reason="this was broken in pandas 1.3.5 (GH-2294)", - ) - @pytest.mark.parametrize("crs", [None, "EPSG:4326"]) - def test_groupby_metadata(crs): diff --git a/2320.patch b/2320.patch deleted file mode 100644 index cac555e..0000000 --- a/2320.patch +++ /dev/null @@ -1,21 +0,0 @@ -From 197617180d78e72f6c8699dbde0ed7cff1c3c34e Mon Sep 17 00:00:00 2001 -From: Joris Van den Bossche -Date: Sun, 23 Jan 2022 10:35:25 +0100 -Subject: [PATCH] TST: skip pandas groupby test if no sindex available - ---- - geopandas/tests/test_pandas_methods.py | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/geopandas/tests/test_pandas_methods.py b/geopandas/tests/test_pandas_methods.py -index 72dbcffc0..42c79de7e 100644 ---- a/geopandas/tests/test_pandas_methods.py -+++ b/geopandas/tests/test_pandas_methods.py -@@ -558,6 +558,7 @@ def test_groupby_groups(df): - assert_frame_equal(res, exp) - - -+@pytest.mark.skip_no_sindex - @pytest.mark.skipif( - compat.PANDAS_GE_13 and not compat.PANDAS_GE_14, - reason="this was broken in pandas 1.3.5 (GH-2294)", diff --git a/python-geopandas.spec b/python-geopandas.spec index dff8e45..4367c5f 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,9 +6,16 @@ %bcond_without tests Name: python-%{srcname} -Version: 0.10.2 +Version: 0.11.1 Release: %autorelease Summary: Geographic Pandas extensions + +License: BSD +URL: https://pypi.python.org/pypi/%{srcname} +Source0: https://github.com/%{srcname}/%{srcname}/archive/v%{version}/%{srcname}-%{version}.tar.gz + +BuildArch: noarch + %global _description \ GeoPandas is a project to add support for geographic data to Pandas objects. \ \ @@ -18,37 +25,6 @@ operations in Pandas and a high-level interface to multiple geometries to \ Shapely. GeoPandas enables you to easily do operations in Python that would \ otherwise require a spatial database such as PostGIS. -License: BSD -URL: https://pypi.python.org/pypi/%{srcname} -Source0: https://github.com/%{srcname}/%{srcname}/archive/v%{version}/%{srcname}-%{version}.tar.gz - -BuildArch: noarch - -# TST/COMPAT: update GeometryArray getitem error type + fix tests -# https://github.com/geopandas/geopandas/pull/2219 -# -# Fixes: -# TST: tests with invalid values fail with pandas master -# https://github.com/geopandas/geopandas/issues/2207 -Patch: https://github.com/%{srcname}/%{srcname}/pull/2219.patch -# TST: fix test_value_counts test for pandas 1.4 -# https://github.com/geopandas/geopandas/pull/2289 -# -# Fixes: -# TST: test_value_counts breaking against pandas latest -# https://github.com/geopandas/geopandas/issues/2287 -Patch: https://github.com/%{srcname}/%{srcname}/pull/2289.patch -# TST: test groupby apply with function that requires GeoDataFrame attributes -# https://github.com/geopandas/geopandas/pull/2298 -# -# Fixes: -# BUG: Missing _crs attribute when using sjoin on grouped gdf and latest version of pandas -# https://github.com/geopandas/geopandas/issues/2294 -Patch: https://github.com/%{srcname}/%{srcname}/pull/2298.patch -# TST: skip pandas groupby test if no sindex available -# https://github.com/geopandas/geopandas/pull/2320 -Patch: https://github.com/%{srcname}/%{srcname}/pull/2320.patch - %description %{_description} diff --git a/sources b/sources index a8c4518..fce0b0a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-0.10.2.tar.gz) = 2fee9f5de51c4573f156c4e3ba19d4124b391c102b583ca17d9dcb7742ded8f6088266e5007127cb2c70b14ef143a1cdaae51bc8a4d1d34131b244bdf4b7ac56 +SHA512 (geopandas-0.11.1.tar.gz) = e4cc968c6b93f9870aeaeaab59833f65d74a7d63312c40432e2259f08cf822a463f8682e012088b83b47805f4fd7805e281571e3c41f629fdfa72a86ac198b56 From 395a4e3b7e862014da7963d9e5eae60a270f947c Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Sun, 20 Nov 2022 17:56:27 -0500 Subject: [PATCH 09/43] Update to latest version (#2137275) --- .gitignore | 1 + python-geopandas.spec | 6 +++--- sources | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 25c9eb6..c65e16b 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ /geopandas-0.10.1.tar.gz /geopandas-0.10.2.tar.gz /geopandas-0.11.1.tar.gz +/geopandas-0.12.1.tar.gz diff --git a/python-geopandas.spec b/python-geopandas.spec index 4367c5f..a817eb7 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -2,15 +2,15 @@ # There is a build dependency loop when built with tests. # It involves libpysal, mapclassify, networkx. -# This bcons allows to bootstrap it. +# This bcond allows to bootstrap it. %bcond_without tests Name: python-%{srcname} -Version: 0.11.1 +Version: 0.12.1 Release: %autorelease Summary: Geographic Pandas extensions -License: BSD +License: BSD-3-Clause URL: https://pypi.python.org/pypi/%{srcname} Source0: https://github.com/%{srcname}/%{srcname}/archive/v%{version}/%{srcname}-%{version}.tar.gz diff --git a/sources b/sources index fce0b0a..d73fbb7 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-0.11.1.tar.gz) = e4cc968c6b93f9870aeaeaab59833f65d74a7d63312c40432e2259f08cf822a463f8682e012088b83b47805f4fd7805e281571e3c41f629fdfa72a86ac198b56 +SHA512 (geopandas-0.12.1.tar.gz) = 42f70d7d919e819e0ab5872d7389ede769868599221c1717ea18c0f4fe24ec3cc736ef7c7b26766c43abaa456e46a4f9283ab9f4364d13ae171aaf705ff3d168 From faa4ee9990df8279d0fed0937e5422cbb40982eb Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Sat, 10 Dec 2022 17:20:18 -0500 Subject: [PATCH 10/43] Update to latest version (#2152334) --- .gitignore | 1 + python-geopandas.spec | 2 +- sources | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index c65e16b..df91bc0 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,4 @@ /geopandas-0.10.2.tar.gz /geopandas-0.11.1.tar.gz /geopandas-0.12.1.tar.gz +/geopandas-0.12.2.tar.gz diff --git a/python-geopandas.spec b/python-geopandas.spec index a817eb7..896c739 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,7 +6,7 @@ %bcond_without tests Name: python-%{srcname} -Version: 0.12.1 +Version: 0.12.2 Release: %autorelease Summary: Geographic Pandas extensions diff --git a/sources b/sources index d73fbb7..63f8cc2 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-0.12.1.tar.gz) = 42f70d7d919e819e0ab5872d7389ede769868599221c1717ea18c0f4fe24ec3cc736ef7c7b26766c43abaa456e46a4f9283ab9f4364d13ae171aaf705ff3d168 +SHA512 (geopandas-0.12.2.tar.gz) = 6470bf45360bb6486607870ee643f295a8823ce3109b777ec9d1eb576bc11c717d3dc40777481748ffe8d17a6d9869245efff5298bea274ec108ca9d0b1502ba From 8d4b2aa8cf9b5853340e6fe5b0e5488123d67eca Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 20 Jan 2023 13:26:05 +0000 Subject: [PATCH 11/43] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering From 6bfd0f69f3db31faa7efadbeca689d352d3c7397 Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Sun, 7 May 2023 05:05:42 -0400 Subject: [PATCH 12/43] Update to latest version (#2195910) --- .gitignore | 1 + python-geopandas.spec | 6 +++--- sources | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index df91bc0..7c74fc3 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,4 @@ /geopandas-0.11.1.tar.gz /geopandas-0.12.1.tar.gz /geopandas-0.12.2.tar.gz +/geopandas-0.13.0.tar.gz diff --git a/python-geopandas.spec b/python-geopandas.spec index 896c739..a5fad63 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,7 +6,7 @@ %bcond_without tests Name: python-%{srcname} -Version: 0.12.2 +Version: 0.13.0 Release: %autorelease Summary: Geographic Pandas extensions @@ -39,7 +39,7 @@ BuildRequires: python3dist(fsspec) BuildRequires: python3dist(psycopg2) BuildRequires: python3dist(rtree) >= 0.8 BuildRequires: python3dist(sqlalchemy) -BuildRequires: python3dist(matplotlib) >= 2.0.1 +BuildRequires: python3dist(matplotlib) >= 3.3.4 BuildRequires: python3dist(mapclassify) # See: # Depend on pandas[test] for testing @@ -53,7 +53,7 @@ BuildRequires: python3dist(pandas[test]) %autosetup -n %{srcname}-%{version} -p1 %generate_buildrequires -%pyproject_buildrequires -r +%pyproject_buildrequires %build %pyproject_wheel diff --git a/sources b/sources index 63f8cc2..b9cdb50 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-0.12.2.tar.gz) = 6470bf45360bb6486607870ee643f295a8823ce3109b777ec9d1eb576bc11c717d3dc40777481748ffe8d17a6d9869245efff5298bea274ec108ca9d0b1502ba +SHA512 (geopandas-0.13.0.tar.gz) = 88e09e394548711d2182c67611b1a23c5c3a476f3fbfbfd4242da85ecebad055914cca24900f0ed6e7b9d66a67e85e7d737fa9d8fe805750cdb00b16ab4dbc38 From 91b6f37f3f20e25c98b7a91b327f0fcc5644fe12 Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Sun, 11 Jun 2023 03:47:49 -0400 Subject: [PATCH 13/43] Update to latest version (#2212271) --- .gitignore | 1 + python-geopandas.spec | 2 +- sources | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 7c74fc3..53d3e90 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,4 @@ /geopandas-0.12.1.tar.gz /geopandas-0.12.2.tar.gz /geopandas-0.13.0.tar.gz +/geopandas-0.13.2.tar.gz diff --git a/python-geopandas.spec b/python-geopandas.spec index a5fad63..57a29e1 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,7 +6,7 @@ %bcond_without tests Name: python-%{srcname} -Version: 0.13.0 +Version: 0.13.2 Release: %autorelease Summary: Geographic Pandas extensions diff --git a/sources b/sources index b9cdb50..cf00d51 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-0.13.0.tar.gz) = 88e09e394548711d2182c67611b1a23c5c3a476f3fbfbfd4242da85ecebad055914cca24900f0ed6e7b9d66a67e85e7d737fa9d8fe805750cdb00b16ab4dbc38 +SHA512 (geopandas-0.13.2.tar.gz) = 4dff4bfeca2490081c02c41edf92037fa8a8f4b030b6f6a0cdc231b3119f829604af39277125db9535c66aac0698d2d4dcfac2bb58b92d31bea83f0ee296e21a From 9163648b50cf9e51d3489e196bb15d07e0265788 Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Wed, 19 Jul 2023 20:55:04 -0400 Subject: [PATCH 14/43] Bootstrap for Python 3.12b4 --- python-geopandas.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/python-geopandas.spec b/python-geopandas.spec index 57a29e1..04708ad 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -3,7 +3,7 @@ # There is a build dependency loop when built with tests. # It involves libpysal, mapclassify, networkx. # This bcond allows to bootstrap it. -%bcond_without tests +%bcond bootstrap 1 Name: python-%{srcname} Version: 0.13.2 @@ -32,7 +32,7 @@ otherwise require a spatial database such as PostGIS. Summary: %{summary} BuildRequires: python3-devel -%if %{with tests} +%if %{without bootstrap} BuildRequires: python3dist(numpy) >= 1.15 BuildRequires: python3dist(pytest) BuildRequires: python3dist(fsspec) @@ -63,7 +63,7 @@ BuildRequires: python3dist(pandas[test]) %pyproject_save_files %{srcname} %check -%if %{with tests} +%if %{without bootstrap} %{pytest} -ra geopandas -m 'not web' %else # naturalearth_creation assumes zipfile from naturalearthdata was downloaded to current directory From 53d4167f98a828d95067cbc0765df4c553208c9d Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Sat, 16 Sep 2023 19:18:11 -0400 Subject: [PATCH 15/43] Update to latest version (#2239113) --- .gitignore | 1 + python-geopandas.spec | 2 +- sources | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 53d3e90..09f9e62 100644 --- a/.gitignore +++ b/.gitignore @@ -19,3 +19,4 @@ /geopandas-0.12.2.tar.gz /geopandas-0.13.0.tar.gz /geopandas-0.13.2.tar.gz +/geopandas-0.14.0.tar.gz diff --git a/python-geopandas.spec b/python-geopandas.spec index 04708ad..313f387 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,7 +6,7 @@ %bcond bootstrap 1 Name: python-%{srcname} -Version: 0.13.2 +Version: 0.14.0 Release: %autorelease Summary: Geographic Pandas extensions diff --git a/sources b/sources index cf00d51..c9c8f0b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-0.13.2.tar.gz) = 4dff4bfeca2490081c02c41edf92037fa8a8f4b030b6f6a0cdc231b3119f829604af39277125db9535c66aac0698d2d4dcfac2bb58b92d31bea83f0ee296e21a +SHA512 (geopandas-0.14.0.tar.gz) = add1b6add7a3d0d32719aec000a7e54e99a166f7f2bdf088884d01664adc6f6e91811fb5c9e5f2bd4c24c6eee38a3e2660c8b416c163e9229a05afd0f7250989 From 553b0f64c788361d173ab596b29ef8dde8be7bec Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Sat, 16 Sep 2023 19:35:31 -0400 Subject: [PATCH 16/43] Disable bootstrap [skip changelog] --- python-geopandas.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python-geopandas.spec b/python-geopandas.spec index 313f387..46d034b 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -3,7 +3,7 @@ # There is a build dependency loop when built with tests. # It involves libpysal, mapclassify, networkx. # This bcond allows to bootstrap it. -%bcond bootstrap 1 +%bcond bootstrap 0 Name: python-%{srcname} Version: 0.14.0 From 0a8a83a0e9294f97bfa4d1090e312d2125bfd58d Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Mon, 20 Nov 2023 01:39:42 -0500 Subject: [PATCH 17/43] Update to latest version (#2249215) --- .gitignore | 1 + python-geopandas.spec | 2 +- sources | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 09f9e62..f225c1b 100644 --- a/.gitignore +++ b/.gitignore @@ -20,3 +20,4 @@ /geopandas-0.13.0.tar.gz /geopandas-0.13.2.tar.gz /geopandas-0.14.0.tar.gz +/geopandas-0.14.1.tar.gz diff --git a/python-geopandas.spec b/python-geopandas.spec index 46d034b..0ae1806 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,7 +6,7 @@ %bcond bootstrap 0 Name: python-%{srcname} -Version: 0.14.0 +Version: 0.14.1 Release: %autorelease Summary: Geographic Pandas extensions diff --git a/sources b/sources index c9c8f0b..69ae17f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-0.14.0.tar.gz) = add1b6add7a3d0d32719aec000a7e54e99a166f7f2bdf088884d01664adc6f6e91811fb5c9e5f2bd4c24c6eee38a3e2660c8b416c163e9229a05afd0f7250989 +SHA512 (geopandas-0.14.1.tar.gz) = ef9bfc215ffe1533c1497b8ea0cb740f497f686b2e50067197b2b44fde2554fcadfefa9c1bbc117c4de2f925d1477a17211afafb65bfbaab01088fed333a93b4 From 8dd7f0b5446c887ce6f02911096ac0114a2847b0 Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Sun, 7 Jan 2024 03:20:46 -0500 Subject: [PATCH 18/43] Update to latest version (#2256876) --- .gitignore | 1 + python-geopandas.spec | 2 +- sources | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index f225c1b..88410ca 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,4 @@ /geopandas-0.13.2.tar.gz /geopandas-0.14.0.tar.gz /geopandas-0.14.1.tar.gz +/geopandas-0.14.2.tar.gz diff --git a/python-geopandas.spec b/python-geopandas.spec index 0ae1806..75defe9 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,7 +6,7 @@ %bcond bootstrap 0 Name: python-%{srcname} -Version: 0.14.1 +Version: 0.14.2 Release: %autorelease Summary: Geographic Pandas extensions diff --git a/sources b/sources index 69ae17f..b04d986 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-0.14.1.tar.gz) = ef9bfc215ffe1533c1497b8ea0cb740f497f686b2e50067197b2b44fde2554fcadfefa9c1bbc117c4de2f925d1477a17211afafb65bfbaab01088fed333a93b4 +SHA512 (geopandas-0.14.2.tar.gz) = 1f5da5aee0565612e3535c52b3c4a725b9a61fc2e2f83d5c2ad99b8df12c47207d32a5be08a3f85d3872899adfde60abc97cc66e40f9624cb17b763248f05d68 From ad77d690577f1ccbfdf0fc66073bda612d39c327 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 22 Jan 2024 01:39:48 +0000 Subject: [PATCH 19/43] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 312fece844936ad745df67ce2620d2bb2f008d17 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 26 Jan 2024 04:43:08 +0000 Subject: [PATCH 20/43] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 7a4dc12b6638bc8d17d27d14df5e68acc24c282f Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Sun, 4 Feb 2024 20:23:24 -0500 Subject: [PATCH 21/43] Update to latest version (#2262154) --- .gitignore | 1 + python-geopandas.spec | 2 +- sources | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 88410ca..0ed4e2e 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,4 @@ /geopandas-0.14.0.tar.gz /geopandas-0.14.1.tar.gz /geopandas-0.14.2.tar.gz +/geopandas-0.14.3.tar.gz diff --git a/python-geopandas.spec b/python-geopandas.spec index 75defe9..4fc00c8 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,7 +6,7 @@ %bcond bootstrap 0 Name: python-%{srcname} -Version: 0.14.2 +Version: 0.14.3 Release: %autorelease Summary: Geographic Pandas extensions diff --git a/sources b/sources index b04d986..329cbe0 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-0.14.2.tar.gz) = 1f5da5aee0565612e3535c52b3c4a725b9a61fc2e2f83d5c2ad99b8df12c47207d32a5be08a3f85d3872899adfde60abc97cc66e40f9624cb17b763248f05d68 +SHA512 (geopandas-0.14.3.tar.gz) = 0be32ccd6699b52b9982683b48a6506e7d72e29dd39d282b27cc785964ef593dcb20dec0aebaaf35f04a8a979209e1f6b55f46b77b8f66aa44eb9cca549b1c4f From 1c3d63420f618c8b0e473caca625fe069c0846fb Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Tue, 25 Jun 2024 21:44:15 -0400 Subject: [PATCH 22/43] Update to latest version (#2274937) --- .gitignore | 1 + python-geopandas.spec | 2 +- sources | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 0ed4e2e..eae5ca0 100644 --- a/.gitignore +++ b/.gitignore @@ -23,3 +23,4 @@ /geopandas-0.14.1.tar.gz /geopandas-0.14.2.tar.gz /geopandas-0.14.3.tar.gz +/geopandas-0.14.4.tar.gz diff --git a/python-geopandas.spec b/python-geopandas.spec index 4fc00c8..3b5d636 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,7 +6,7 @@ %bcond bootstrap 0 Name: python-%{srcname} -Version: 0.14.3 +Version: 0.14.4 Release: %autorelease Summary: Geographic Pandas extensions diff --git a/sources b/sources index 329cbe0..46ef993 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-0.14.3.tar.gz) = 0be32ccd6699b52b9982683b48a6506e7d72e29dd39d282b27cc785964ef593dcb20dec0aebaaf35f04a8a979209e1f6b55f46b77b8f66aa44eb9cca549b1c4f +SHA512 (geopandas-0.14.4.tar.gz) = 2e6a5075662a6b2a1c7202a1a6d7f001ad9c3c5c76794b69b2e6d5b97aa7f05e60ac59b494031227b48340d188dc243945289558fe22fd336608b75413c4b717 From 6578064576c3c6da7a068b0f91f27dacf199872e Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Wed, 26 Jun 2024 02:31:48 -0400 Subject: [PATCH 23/43] Backport fixes for GDAL 3.9 --- 0001-Backport-fixes-for-GDAL-3.9.patch | 34 ++++++++++++++++++++++++++ python-geopandas.spec | 3 +++ 2 files changed, 37 insertions(+) create mode 100644 0001-Backport-fixes-for-GDAL-3.9.patch diff --git a/0001-Backport-fixes-for-GDAL-3.9.patch b/0001-Backport-fixes-for-GDAL-3.9.patch new file mode 100644 index 0000000..cb782c0 --- /dev/null +++ b/0001-Backport-fixes-for-GDAL-3.9.patch @@ -0,0 +1,34 @@ +From e0db755cb3680977463c1c71dee600038b464216 Mon Sep 17 00:00:00 2001 +From: Martin Fleischmann +Date: Fri, 17 May 2024 09:31:36 +0200 +Subject: [PATCH] Backport fixes for GDAL 3.9 + +This backports two commits: +- TST: GDAL 3.9 compat for boolean array in shp (#3286) +- TST: GDAL 3.9 compat for boolean array in shp for fiona (#3303) + +Signed-off-by: Elliott Sales de Andrade +--- + geopandas/io/tests/test_file.py | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/geopandas/io/tests/test_file.py b/geopandas/io/tests/test_file.py +index 4b516276..005a4c27 100644 +--- a/geopandas/io/tests/test_file.py ++++ b/geopandas/io/tests/test_file.py +@@ -174,9 +174,10 @@ def test_to_file_bool(tmpdir, driver, ext, engine): + result = read_file(tempfilename, engine=engine) + if ext in (".shp", ""): + # Shapefile does not support boolean, so is read back as int +- if engine == "fiona": ++ # but since GDAL 3.9 supports boolean fields in SHP ++ if engine == "fiona" and fiona.gdal_version.minor < 9: + df["col"] = df["col"].astype("int64") +- else: ++ elif engine == "pyogrio" and pyogrio.__gdal_version__ < (3, 9): + df["col"] = df["col"].astype("int32") + assert_geodataframe_equal(result, df) + # check the expected driver +-- +2.45.2 + diff --git a/python-geopandas.spec b/python-geopandas.spec index 3b5d636..76932a1 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -13,6 +13,9 @@ Summary: Geographic Pandas extensions License: BSD-3-Clause URL: https://pypi.python.org/pypi/%{srcname} Source0: https://github.com/%{srcname}/%{srcname}/archive/v%{version}/%{srcname}-%{version}.tar.gz +# https://github.com/geopandas/geopandas/pull/3286 +# https://github.com/geopandas/geopandas/pull/3303 +Patch: 0001-Backport-fixes-for-GDAL-3.9.patch BuildArch: noarch From 721851873bf59cb49951636b2579f4126e17a364 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jul 2024 11:52:31 +0000 Subject: [PATCH 24/43] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 6d812c87430381bbc52a946cd2084f145602de1a Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Sun, 17 Nov 2024 06:39:04 -0500 Subject: [PATCH 25/43] Update to latest version (#2295479) --- .gitignore | 1 + 0001-Backport-fixes-for-GDAL-3.9.patch | 34 -------------------------- python-geopandas.spec | 25 +++++++++---------- sources | 2 +- 4 files changed, 14 insertions(+), 48 deletions(-) delete mode 100644 0001-Backport-fixes-for-GDAL-3.9.patch diff --git a/.gitignore b/.gitignore index eae5ca0..9fc9f92 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,4 @@ /geopandas-0.14.2.tar.gz /geopandas-0.14.3.tar.gz /geopandas-0.14.4.tar.gz +/geopandas-1.0.1.tar.gz diff --git a/0001-Backport-fixes-for-GDAL-3.9.patch b/0001-Backport-fixes-for-GDAL-3.9.patch deleted file mode 100644 index cb782c0..0000000 --- a/0001-Backport-fixes-for-GDAL-3.9.patch +++ /dev/null @@ -1,34 +0,0 @@ -From e0db755cb3680977463c1c71dee600038b464216 Mon Sep 17 00:00:00 2001 -From: Martin Fleischmann -Date: Fri, 17 May 2024 09:31:36 +0200 -Subject: [PATCH] Backport fixes for GDAL 3.9 - -This backports two commits: -- TST: GDAL 3.9 compat for boolean array in shp (#3286) -- TST: GDAL 3.9 compat for boolean array in shp for fiona (#3303) - -Signed-off-by: Elliott Sales de Andrade ---- - geopandas/io/tests/test_file.py | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/geopandas/io/tests/test_file.py b/geopandas/io/tests/test_file.py -index 4b516276..005a4c27 100644 ---- a/geopandas/io/tests/test_file.py -+++ b/geopandas/io/tests/test_file.py -@@ -174,9 +174,10 @@ def test_to_file_bool(tmpdir, driver, ext, engine): - result = read_file(tempfilename, engine=engine) - if ext in (".shp", ""): - # Shapefile does not support boolean, so is read back as int -- if engine == "fiona": -+ # but since GDAL 3.9 supports boolean fields in SHP -+ if engine == "fiona" and fiona.gdal_version.minor < 9: - df["col"] = df["col"].astype("int64") -- else: -+ elif engine == "pyogrio" and pyogrio.__gdal_version__ < (3, 9): - df["col"] = df["col"].astype("int32") - assert_geodataframe_equal(result, df) - # check the expected driver --- -2.45.2 - diff --git a/python-geopandas.spec b/python-geopandas.spec index 76932a1..b990c75 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,16 +6,14 @@ %bcond bootstrap 0 Name: python-%{srcname} -Version: 0.14.4 +Version: 1.0.1 Release: %autorelease Summary: Geographic Pandas extensions License: BSD-3-Clause URL: https://pypi.python.org/pypi/%{srcname} -Source0: https://github.com/%{srcname}/%{srcname}/archive/v%{version}/%{srcname}-%{version}.tar.gz -# https://github.com/geopandas/geopandas/pull/3286 -# https://github.com/geopandas/geopandas/pull/3303 -Patch: 0001-Backport-fixes-for-GDAL-3.9.patch +# PyPI source does not have test data. +Source: https://github.com/%{srcname}/%{srcname}/archive/v%{version}/%{srcname}-%{version}.tar.gz BuildArch: noarch @@ -36,14 +34,16 @@ Summary: %{summary} BuildRequires: python3-devel %if %{without bootstrap} -BuildRequires: python3dist(numpy) >= 1.15 -BuildRequires: python3dist(pytest) BuildRequires: python3dist(fsspec) -BuildRequires: python3dist(psycopg2) -BuildRequires: python3dist(rtree) >= 0.8 -BuildRequires: python3dist(sqlalchemy) -BuildRequires: python3dist(matplotlib) >= 3.3.4 +BuildRequires: python3dist(fiona) +BuildRequires: python3dist(geopy) BuildRequires: python3dist(mapclassify) +BuildRequires: python3dist(matplotlib) >= 3.5 +BuildRequires: python3dist(psycopg) >= 3.1 +BuildRequires: python3dist(pyarrow) >= 8 +BuildRequires: python3dist(pytest) +BuildRequires: python3dist(sqlalchemy) >= 1.3 +BuildRequires: python3dist(xyzservices) # See: # Depend on pandas[test] for testing # https://github.com/geopandas/geopandas/pull/2438 @@ -69,8 +69,7 @@ BuildRequires: python3dist(pandas[test]) %if %{without bootstrap} %{pytest} -ra geopandas -m 'not web' %else -# naturalearth_creation assumes zipfile from naturalearthdata was downloaded to current directory -%pyproject_check_import -e 'geopandas.*test*' -e geopandas.datasets.naturalearth_creation +%pyproject_check_import -e 'geopandas.*test*' %endif %files -n python3-%{srcname} -f %{pyproject_files} diff --git a/sources b/sources index 46ef993..d90dd19 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-0.14.4.tar.gz) = 2e6a5075662a6b2a1c7202a1a6d7f001ad9c3c5c76794b69b2e6d5b97aa7f05e60ac59b494031227b48340d188dc243945289558fe22fd336608b75413c4b717 +SHA512 (geopandas-1.0.1.tar.gz) = 41ed79c1c798837b063ee45b1cda677b9f205cbc38e0ead019f86406a626fb8cfaae111ca8cead369c46155102665da094fa6d9ae2588290fa38b546a3875d87 From fc0537bda5c08ab1123411f60b5387cf8f09713a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 27 Nov 2024 14:52:31 +0000 Subject: [PATCH 26/43] Rebuild for libarrow 18 From 86b3e8f5aaf3d9351f2759d09b503d55ce446b83 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 18 Jan 2025 14:38:11 +0000 Subject: [PATCH 27/43] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 2548b4023e13b7a7b44c048c35df83099c6eb4eb Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Mon, 2 Jun 2025 13:23:32 -0400 Subject: [PATCH 28/43] Add Packit configuration --- .packit.yaml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 .packit.yaml diff --git a/.packit.yaml b/.packit.yaml new file mode 100644 index 0000000..d11d5ba --- /dev/null +++ b/.packit.yaml @@ -0,0 +1,18 @@ +# 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 + dist_git_branches: + - fedora-all + - job: bodhi_update + trigger: commit + dist_git_branches: + - fedora-all From 3d9937b7db67368e04a56f3209230e7da0995fe5 Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Mon, 2 Jun 2025 13:23:55 -0400 Subject: [PATCH 29/43] Update to latest version --- .gitignore | 1 + python-geopandas.spec | 10 +++++----- sources | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index 9fc9f92..6b2ee21 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,4 @@ /geopandas-0.14.3.tar.gz /geopandas-0.14.4.tar.gz /geopandas-1.0.1.tar.gz +/geopandas-1.1.0.tar.gz diff --git a/python-geopandas.spec b/python-geopandas.spec index b990c75..3f01717 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,7 +6,7 @@ %bcond bootstrap 0 Name: python-%{srcname} -Version: 1.0.1 +Version: 1.1.0 Release: %autorelease Summary: Geographic Pandas extensions @@ -35,14 +35,14 @@ BuildRequires: python3-devel %if %{without bootstrap} BuildRequires: python3dist(fsspec) -BuildRequires: python3dist(fiona) +BuildRequires: python3dist(fiona) >= 1.8.21 BuildRequires: python3dist(geopy) -BuildRequires: python3dist(mapclassify) -BuildRequires: python3dist(matplotlib) >= 3.5 +BuildRequires: python3dist(mapclassify) >= 2.5 +BuildRequires: python3dist(matplotlib) >= 3.7 BuildRequires: python3dist(psycopg) >= 3.1 BuildRequires: python3dist(pyarrow) >= 8 BuildRequires: python3dist(pytest) -BuildRequires: python3dist(sqlalchemy) >= 1.3 +BuildRequires: python3dist(sqlalchemy) >= 2 BuildRequires: python3dist(xyzservices) # See: # Depend on pandas[test] for testing diff --git a/sources b/sources index d90dd19..d6abed1 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-1.0.1.tar.gz) = 41ed79c1c798837b063ee45b1cda677b9f205cbc38e0ead019f86406a626fb8cfaae111ca8cead369c46155102665da094fa6d9ae2588290fa38b546a3875d87 +SHA512 (geopandas-1.1.0.tar.gz) = 12dfc4f9fab0088858ca8405a0a7ff314a7ed557e32078e23c5b2730a2b9ea7df6b70aa63387da78e5879a285086363989c3bab8362d79bfc1e267c5443ad5af From d06bff8bbfc639d012b2de44423d6ad3bb834580 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Wed, 18 Jun 2025 21:31:53 +0200 Subject: [PATCH 30/43] Bootstrap for Python 3.14 --- python-geopandas.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/python-geopandas.spec b/python-geopandas.spec index 3f01717..331cdbc 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -1,3 +1,4 @@ +%global _with_bootstrap 1 %global srcname geopandas # There is a build dependency loop when built with tests. From 060efb3a98556989037062e2848bcfaae5e6dd85 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Mon, 21 Jul 2025 11:30:04 +0200 Subject: [PATCH 31/43] Unbootstrap for Python 3.14 --- python-geopandas.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/python-geopandas.spec b/python-geopandas.spec index 331cdbc..3f01717 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -1,4 +1,3 @@ -%global _with_bootstrap 1 %global srcname geopandas # There is a build dependency loop when built with tests. From f4c7ba07b4537a399a8f51088e4d1b3b5f24d285 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 08:04:56 +0000 Subject: [PATCH 32/43] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From e1ff79ca6260cfe3a99497d9d109f401c1b513f0 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 15 Aug 2025 13:48:36 +0200 Subject: [PATCH 33/43] Rebuilt for Python 3.14.0rc2 bytecode From adda4debfdd74b8108b35a8ce2c80c54c33c5147 Mon Sep 17 00:00:00 2001 From: Packit Date: Sun, 7 Sep 2025 07:50:05 +0000 Subject: [PATCH 34/43] Update to 1.1.1 upstream release - Resolves: rhbz#2369643 Commit authored by Packit automation (https://packit.dev/) --- .gitignore | 1 + README.packit | 3 +++ python-geopandas.spec | 2 +- sources | 2 +- 4 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 README.packit diff --git a/.gitignore b/.gitignore index 6b2ee21..1fc04d0 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,4 @@ /geopandas-0.14.4.tar.gz /geopandas-1.0.1.tar.gz /geopandas-1.1.0.tar.gz +/geopandas-1.1.1.tar.gz diff --git a/README.packit b/README.packit new file mode 100644 index 0000000..fb341a1 --- /dev/null +++ b/README.packit @@ -0,0 +1,3 @@ +This repository is maintained by packit. +https://packit.dev/ +The file was generated using packit 1.11.0.post1.dev7+gfdcdf3a32. diff --git a/python-geopandas.spec b/python-geopandas.spec index 3f01717..f1ab769 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,7 +6,7 @@ %bcond bootstrap 0 Name: python-%{srcname} -Version: 1.1.0 +Version: 1.1.1 Release: %autorelease Summary: Geographic Pandas extensions diff --git a/sources b/sources index d6abed1..e4c6f7a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-1.1.0.tar.gz) = 12dfc4f9fab0088858ca8405a0a7ff314a7ed557e32078e23c5b2730a2b9ea7df6b70aa63387da78e5879a285086363989c3bab8362d79bfc1e267c5443ad5af +SHA512 (geopandas-1.1.1.tar.gz) = 096630e7f7d17c36bb7855f00d83f728c68a9c9e43ebe46608eef97220f839bb520815cd3b8bbf71953387cc91e65d15af155495238fe3fd862c1bc54e1e5f74 From 1932cf508541c5ba95448ff0e31e8d01beca5530 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 19 Sep 2025 13:22:33 +0200 Subject: [PATCH 35/43] Rebuilt for Python 3.14.0rc3 bytecode From 15a43a8ec735194404a994f53cbc29ca5f9f67c1 Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Tue, 23 Sep 2025 19:23:03 -0400 Subject: [PATCH 36/43] Fix tests with GEOS 3.14 --- ...8fe055f8bf10bf7a0ae64dc39a10799cf99e.patch | 89 +++++++++++++++++++ python-geopandas.spec | 2 + 2 files changed, 91 insertions(+) create mode 100644 1d598fe055f8bf10bf7a0ae64dc39a10799cf99e.patch diff --git a/1d598fe055f8bf10bf7a0ae64dc39a10799cf99e.patch b/1d598fe055f8bf10bf7a0ae64dc39a10799cf99e.patch new file mode 100644 index 0000000..a2facc0 --- /dev/null +++ b/1d598fe055f8bf10bf7a0ae64dc39a10799cf99e.patch @@ -0,0 +1,89 @@ +From 1d598fe055f8bf10bf7a0ae64dc39a10799cf99e Mon Sep 17 00:00:00 2001 +From: Matt Richards <45483497+m-richards@users.noreply.github.com> +Date: Tue, 23 Sep 2025 17:57:22 +1000 +Subject: [PATCH] TST: Max Inscribed circle for GEOS 3.14 (#3645) + +Co-authored-by: Joris Van den Bossche +--- + geopandas/base.py | 14 +++++++------- + geopandas/tests/test_geom_methods.py | 29 +++++++++++++++------------- + 2 files changed, 23 insertions(+), 20 deletions(-) + +diff --git a/geopandas/base.py b/geopandas/base.py +index 32bbc8f21a..a37e1e0214 100644 +--- a/geopandas/base.py ++++ b/geopandas/base.py +@@ -1888,22 +1888,22 @@ def maximum_inscribed_circle(self, *, tolerance=None): + >>> s = geopandas.GeoSeries( + ... [ + ... Polygon([(0, 0), (1, 1), (0, 1), (0, 0)]), +- ... Polygon([(0, 0), (10, 10), (0, 10), (0, 0)]), ++ ... Polygon([(0, 0), (0.5, -1), (1, 0), (1, 1), (-0.5, 0.5)]), + ... ] + ... ) + >>> s +- 0 POLYGON ((0 0, 1 1, 0 1, 0 0)) +- 1 POLYGON ((0 0, 10 10, 0 10, 0 0)) ++ 0 POLYGON ((0 0, 1 1, 0 1, 0 0)) ++ 1 POLYGON ((0 0, 0.5 -1, 1 0, 1 1, -0.5 0.5, 0 0)) + dtype: geometry + + >>> s.maximum_inscribed_circle() +- 0 LINESTRING (0.29297 0.70703, 0.5 0.5) +- 1 LINESTRING (2.92969 7.07031, 5 5) ++ 0 LINESTRING (0.29289 0.70711, 0.5 0.5) ++ 1 LINESTRING (0.4668 0.25977, 1 0.25977) + dtype: geometry + + >>> s.maximum_inscribed_circle(tolerance=2) +- 0 LINESTRING (0.25 0.5, 0.375 0.375) +- 1 LINESTRING (2.5 7.5, 2.5 10) ++ 0 LINESTRING (0.29289 0.70711, 0.5 0.5) ++ 1 LINESTRING (0.375 0.25, 0 0) + dtype: geometry + + See Also +diff --git a/geopandas/tests/test_geom_methods.py b/geopandas/tests/test_geom_methods.py +index 866faff5d2..c5d597bbc6 100644 +--- a/geopandas/tests/test_geom_methods.py ++++ b/geopandas/tests/test_geom_methods.py +@@ -1613,23 +1613,26 @@ def test_minimum_bounding_circle(self): + + @pytest.mark.skipif(not SHAPELY_GE_21, reason="requires shapely 2.1") + def test_maximum_inscribed_circle(self): +- mic = self.g1.maximum_inscribed_circle() +- expected = GeoSeries( ++ gs = GeoSeries( + [ +- LineString([(0.70703125, 0.29296875), (0.5, 0.5)]), +- LineString([(0.5, 0.5), (0.5, 0)]), ++ Polygon([(0, 0), (1, 0), (1, 1), (0, 1)]), ++ Polygon([(0, 0), (0.5, -1), (1, 0), (1, 1), (-0.5, 0.5)]), + ] + ) +- assert_geoseries_equal(mic, expected) +- +- mic_tolerance = self.g1.maximum_inscribed_circle(tolerance=np.array([10, 0])) +- expected_tol = GeoSeries( +- [ +- LineString([(0.75, 0.5), (0.625, 0.625)]), +- LineString([(0.5, 0.5), (0.5, 0)]), +- ] ++ mic = gs.maximum_inscribed_circle() ++ assert (mic.geom_type == "LineString").all() ++ assert (shapely.get_num_points(mic) == 2).all() ++ expected_centers = GeoSeries([Point(0.5, 0.5), Point(0.466796875, 0.259765625)]) ++ expected_length = Series([0.5, 0.533203125]) ++ assert_geoseries_equal( ++ shapely.get_point(mic, 0), expected_centers, check_less_precise=True + ) +- assert_geoseries_equal(mic_tolerance, expected_tol) ++ assert_series_equal(shapely.length(mic), expected_length) ++ ++ # with tolerance for second polygon -> stops earlier with smaller circle, thus ++ # just assert the length of the resulting line is lower ++ mic_tolerance = gs.maximum_inscribed_circle(tolerance=np.array([0, 10])) ++ assert (shapely.length(mic_tolerance) <= 0.5).all() + + def test_total_bounds(self): + bbox = self.sol.x, self.sol.y, self.esb.x, self.esb.y diff --git a/python-geopandas.spec b/python-geopandas.spec index f1ab769..b215512 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -14,6 +14,8 @@ License: BSD-3-Clause URL: https://pypi.python.org/pypi/%{srcname} # PyPI source does not have test data. Source: https://github.com/%{srcname}/%{srcname}/archive/v%{version}/%{srcname}-%{version}.tar.gz +# Fix tests with GEOS 3.14. +Patch: https://github.com/geopandas/geopandas/commit/1d598fe055f8bf10bf7a0ae64dc39a10799cf99e.patch BuildArch: noarch From 9197676276b1dd6ba296211d1e43c04a6d7e4ee9 Mon Sep 17 00:00:00 2001 From: Packit Date: Mon, 22 Dec 2025 22:43:43 +0000 Subject: [PATCH 37/43] Update to 1.1.2 upstream release - Resolves: rhbz#2424519 Commit authored by Packit automation (https://packit.dev/) --- .gitignore | 1 + ...8fe055f8bf10bf7a0ae64dc39a10799cf99e.patch | 89 ------------------- README.packit | 2 +- python-geopandas.spec | 4 +- sources | 2 +- 5 files changed, 4 insertions(+), 94 deletions(-) delete mode 100644 1d598fe055f8bf10bf7a0ae64dc39a10799cf99e.patch diff --git a/.gitignore b/.gitignore index 1fc04d0..998d13e 100644 --- a/.gitignore +++ b/.gitignore @@ -27,3 +27,4 @@ /geopandas-1.0.1.tar.gz /geopandas-1.1.0.tar.gz /geopandas-1.1.1.tar.gz +/geopandas-1.1.2.tar.gz diff --git a/1d598fe055f8bf10bf7a0ae64dc39a10799cf99e.patch b/1d598fe055f8bf10bf7a0ae64dc39a10799cf99e.patch deleted file mode 100644 index a2facc0..0000000 --- a/1d598fe055f8bf10bf7a0ae64dc39a10799cf99e.patch +++ /dev/null @@ -1,89 +0,0 @@ -From 1d598fe055f8bf10bf7a0ae64dc39a10799cf99e Mon Sep 17 00:00:00 2001 -From: Matt Richards <45483497+m-richards@users.noreply.github.com> -Date: Tue, 23 Sep 2025 17:57:22 +1000 -Subject: [PATCH] TST: Max Inscribed circle for GEOS 3.14 (#3645) - -Co-authored-by: Joris Van den Bossche ---- - geopandas/base.py | 14 +++++++------- - geopandas/tests/test_geom_methods.py | 29 +++++++++++++++------------- - 2 files changed, 23 insertions(+), 20 deletions(-) - -diff --git a/geopandas/base.py b/geopandas/base.py -index 32bbc8f21a..a37e1e0214 100644 ---- a/geopandas/base.py -+++ b/geopandas/base.py -@@ -1888,22 +1888,22 @@ def maximum_inscribed_circle(self, *, tolerance=None): - >>> s = geopandas.GeoSeries( - ... [ - ... Polygon([(0, 0), (1, 1), (0, 1), (0, 0)]), -- ... Polygon([(0, 0), (10, 10), (0, 10), (0, 0)]), -+ ... Polygon([(0, 0), (0.5, -1), (1, 0), (1, 1), (-0.5, 0.5)]), - ... ] - ... ) - >>> s -- 0 POLYGON ((0 0, 1 1, 0 1, 0 0)) -- 1 POLYGON ((0 0, 10 10, 0 10, 0 0)) -+ 0 POLYGON ((0 0, 1 1, 0 1, 0 0)) -+ 1 POLYGON ((0 0, 0.5 -1, 1 0, 1 1, -0.5 0.5, 0 0)) - dtype: geometry - - >>> s.maximum_inscribed_circle() -- 0 LINESTRING (0.29297 0.70703, 0.5 0.5) -- 1 LINESTRING (2.92969 7.07031, 5 5) -+ 0 LINESTRING (0.29289 0.70711, 0.5 0.5) -+ 1 LINESTRING (0.4668 0.25977, 1 0.25977) - dtype: geometry - - >>> s.maximum_inscribed_circle(tolerance=2) -- 0 LINESTRING (0.25 0.5, 0.375 0.375) -- 1 LINESTRING (2.5 7.5, 2.5 10) -+ 0 LINESTRING (0.29289 0.70711, 0.5 0.5) -+ 1 LINESTRING (0.375 0.25, 0 0) - dtype: geometry - - See Also -diff --git a/geopandas/tests/test_geom_methods.py b/geopandas/tests/test_geom_methods.py -index 866faff5d2..c5d597bbc6 100644 ---- a/geopandas/tests/test_geom_methods.py -+++ b/geopandas/tests/test_geom_methods.py -@@ -1613,23 +1613,26 @@ def test_minimum_bounding_circle(self): - - @pytest.mark.skipif(not SHAPELY_GE_21, reason="requires shapely 2.1") - def test_maximum_inscribed_circle(self): -- mic = self.g1.maximum_inscribed_circle() -- expected = GeoSeries( -+ gs = GeoSeries( - [ -- LineString([(0.70703125, 0.29296875), (0.5, 0.5)]), -- LineString([(0.5, 0.5), (0.5, 0)]), -+ Polygon([(0, 0), (1, 0), (1, 1), (0, 1)]), -+ Polygon([(0, 0), (0.5, -1), (1, 0), (1, 1), (-0.5, 0.5)]), - ] - ) -- assert_geoseries_equal(mic, expected) -- -- mic_tolerance = self.g1.maximum_inscribed_circle(tolerance=np.array([10, 0])) -- expected_tol = GeoSeries( -- [ -- LineString([(0.75, 0.5), (0.625, 0.625)]), -- LineString([(0.5, 0.5), (0.5, 0)]), -- ] -+ mic = gs.maximum_inscribed_circle() -+ assert (mic.geom_type == "LineString").all() -+ assert (shapely.get_num_points(mic) == 2).all() -+ expected_centers = GeoSeries([Point(0.5, 0.5), Point(0.466796875, 0.259765625)]) -+ expected_length = Series([0.5, 0.533203125]) -+ assert_geoseries_equal( -+ shapely.get_point(mic, 0), expected_centers, check_less_precise=True - ) -- assert_geoseries_equal(mic_tolerance, expected_tol) -+ assert_series_equal(shapely.length(mic), expected_length) -+ -+ # with tolerance for second polygon -> stops earlier with smaller circle, thus -+ # just assert the length of the resulting line is lower -+ mic_tolerance = gs.maximum_inscribed_circle(tolerance=np.array([0, 10])) -+ assert (shapely.length(mic_tolerance) <= 0.5).all() - - def test_total_bounds(self): - bbox = self.sol.x, self.sol.y, self.esb.x, self.esb.y diff --git a/README.packit b/README.packit index fb341a1..9bb65f0 100644 --- a/README.packit +++ b/README.packit @@ -1,3 +1,3 @@ This repository is maintained by packit. https://packit.dev/ -The file was generated using packit 1.11.0.post1.dev7+gfdcdf3a32. +The file was generated using packit 1.13.0.post1.dev2+g84134016c. diff --git a/python-geopandas.spec b/python-geopandas.spec index b215512..7562739 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,7 +6,7 @@ %bcond bootstrap 0 Name: python-%{srcname} -Version: 1.1.1 +Version: 1.1.2 Release: %autorelease Summary: Geographic Pandas extensions @@ -14,8 +14,6 @@ License: BSD-3-Clause URL: https://pypi.python.org/pypi/%{srcname} # PyPI source does not have test data. Source: https://github.com/%{srcname}/%{srcname}/archive/v%{version}/%{srcname}-%{version}.tar.gz -# Fix tests with GEOS 3.14. -Patch: https://github.com/geopandas/geopandas/commit/1d598fe055f8bf10bf7a0ae64dc39a10799cf99e.patch BuildArch: noarch diff --git a/sources b/sources index e4c6f7a..73dff9f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-1.1.1.tar.gz) = 096630e7f7d17c36bb7855f00d83f728c68a9c9e43ebe46608eef97220f839bb520815cd3b8bbf71953387cc91e65d15af155495238fe3fd862c1bc54e1e5f74 +SHA512 (geopandas-1.1.2.tar.gz) = d130a1a89f7eddc3215c48a103e541238aa75a2341b17a45517617b0bba316f1085486c80f557b9aed6c981c75f91233d89bf339911a06bd304cf0b9bda7f2dd From 1a2c63d7af6e53daa3e375c24c01186729881eb2 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 17 Jan 2026 07:37:04 +0000 Subject: [PATCH 38/43] Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild From 110a3a616544698d0ddecac6f0af660f61d09f34 Mon Sep 17 00:00:00 2001 From: Packit Date: Mon, 9 Mar 2026 21:54:41 +0000 Subject: [PATCH 39/43] Update to 1.1.3 upstream release - Resolves: rhbz#2445875 Commit authored by Packit automation (https://packit.dev/) --- .gitignore | 1 + README.packit | 2 +- python-geopandas.spec | 2 +- sources | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 998d13e..7cb1bd0 100644 --- a/.gitignore +++ b/.gitignore @@ -28,3 +28,4 @@ /geopandas-1.1.0.tar.gz /geopandas-1.1.1.tar.gz /geopandas-1.1.2.tar.gz +/geopandas-1.1.3.tar.gz diff --git a/README.packit b/README.packit index 9bb65f0..b0c77e3 100644 --- a/README.packit +++ b/README.packit @@ -1,3 +1,3 @@ This repository is maintained by packit. https://packit.dev/ -The file was generated using packit 1.13.0.post1.dev2+g84134016c. +The file was generated using packit 1.15.0.post1.dev6+g98b589859. diff --git a/python-geopandas.spec b/python-geopandas.spec index 7562739..ec7a62b 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,7 +6,7 @@ %bcond bootstrap 0 Name: python-%{srcname} -Version: 1.1.2 +Version: 1.1.3 Release: %autorelease Summary: Geographic Pandas extensions diff --git a/sources b/sources index 73dff9f..2ea9005 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-1.1.2.tar.gz) = d130a1a89f7eddc3215c48a103e541238aa75a2341b17a45517617b0bba316f1085486c80f557b9aed6c981c75f91233d89bf339911a06bd304cf0b9bda7f2dd +SHA512 (geopandas-1.1.3.tar.gz) = 39254df8a7e544e1f32a612831c7603f700036d0d10de14fdd1c11a420d5cbffad265ea8db36fdf63694b0080c844f9879e3d5bfc1ad20b528d43227c5c7f49e From 90dd5b55671f4761fcf06c5e01c478674bfd52cf Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Fri, 22 May 2026 14:38:54 +0100 Subject: [PATCH 40/43] Rebuild for Pandas3 From 4e5b8ff68383795e0fb600bf9eeca3caa0f11d47 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 5 Jun 2026 21:00:28 +0200 Subject: [PATCH 41/43] Rebuilt for Python 3.15 From d2d3c3f96a13c1afa3caa851fbd15eacd026112b Mon Sep 17 00:00:00 2001 From: Packit Date: Fri, 26 Jun 2026 20:14:33 +0000 Subject: [PATCH 42/43] Update to 1.1.4 upstream release - Resolves: rhbz#2493684 Commit authored by Packit automation (https://packit.dev/) --- .gitignore | 1 + README.packit | 2 +- python-geopandas.spec | 2 +- sources | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 7cb1bd0..5fa314f 100644 --- a/.gitignore +++ b/.gitignore @@ -29,3 +29,4 @@ /geopandas-1.1.1.tar.gz /geopandas-1.1.2.tar.gz /geopandas-1.1.3.tar.gz +/geopandas-1.1.4.tar.gz diff --git a/README.packit b/README.packit index b0c77e3..dd0af79 100644 --- a/README.packit +++ b/README.packit @@ -1,3 +1,3 @@ This repository is maintained by packit. https://packit.dev/ -The file was generated using packit 1.15.0.post1.dev6+g98b589859. +The file was generated using packit 1.16.1. diff --git a/python-geopandas.spec b/python-geopandas.spec index ec7a62b..47100b5 100644 --- a/python-geopandas.spec +++ b/python-geopandas.spec @@ -6,7 +6,7 @@ %bcond bootstrap 0 Name: python-%{srcname} -Version: 1.1.3 +Version: 1.1.4 Release: %autorelease Summary: Geographic Pandas extensions diff --git a/sources b/sources index 2ea9005..b798a00 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (geopandas-1.1.3.tar.gz) = 39254df8a7e544e1f32a612831c7603f700036d0d10de14fdd1c11a420d5cbffad265ea8db36fdf63694b0080c844f9879e3d5bfc1ad20b528d43227c5c7f49e +SHA512 (geopandas-1.1.4.tar.gz) = 70e30407e50acee8ff8d081d3db097ab188a078467bffe2e9765c5d64d9e1d88be76c4f37747a5c107cb96d75c9fa53a7f779e0b406b784386be7d5fef899878 From bf30296f9e9e06a5282bec883c46c00ec08998e7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jul 2026 19:33:40 +0000 Subject: [PATCH 43/43] Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild