Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DEP: bump required versions of dependecies #2358

Merged
merged 11 commits into from
Feb 21, 2022

Conversation

martinfleis
Copy link
Member

Bumping required versions of dependencies following the rules defined in #1457 and removed now obsolete compatibility code.

@martinfleis
Copy link
Member Author

I think that we're hitting #1697 in environments coming from defaults. They're latest fiona is quite old and seem to conflict with a newer pyproj...

@martinfleis
Copy link
Member Author

And why are we getting package python-3.7.9-4_73_pypy requires python_abi 3.7 *_pypy37_pp73, but none of the providers can be installed in the minimal env, the I truly don't know. I'll fire up my Linux box to try these locally.

@martinfleis
Copy link
Member Author

I think we should be fine now. A few observation as it was not as easy as I thought.

  • when using defaults, pyproj>3 does not work together with Fiona, so it only resolves with pyproj2.6 (good to know because then next release should bump pyproj to v3). When installed via pip we bump into QST:Weird Bug - Invalid input to create CRS #1821 as a result of conflicting PROJ databases.
  • some of pandas 1.0.x contain a regression causing GeoDataFrame to be a DataFrame. 1.0.5 has that one fixed but we should keep in mind that on 1.0.0 and 1.0.1 (maybe some more), GeoPandas does not work.

@@ -922,7 +909,8 @@ def test_estimate_utm_crs__geographic(self):
self.landmarks.estimate_utm_crs()
else:
assert self.landmarks.estimate_utm_crs() == CRS("EPSG:32618")
assert self.landmarks.estimate_utm_crs("NAD83") == CRS("EPSG:26918")
if compat.PYPROJ_GE_32: # result is unstable in older pyproj
assert self.landmarks.estimate_utm_crs("NAD83") == CRS("EPSG:26918")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Didn't we test with such older version before, or is it triggered due to the combo with a certain fiona install?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No. We tested with 2.2 which skipped the whole test and latest. I have added 3.1 which causes the issue #2045

Copy link
Member

@jorisvandenbossche jorisvandenbossche left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a lot! Looks good, one more thing: can you also update the documentation? (https://geopandas.org/en/latest/getting_started/install.html#dependencies)

@martinfleis
Copy link
Member Author

can you also update the documentation?

Forgot about that one :). Fixed.

@martinfleis martinfleis merged commit ff5ed7e into geopandas:main Feb 21, 2022
@martinfleis martinfleis deleted the bump_deps branch February 21, 2022 20:01
bstadlbauer added a commit to bstadlbauer/geopandas that referenced this pull request Feb 27, 2022
Can be removed as geopandas#2358 bumped shapely to ">= 1.7"
martinfleis added a commit that referenced this pull request Mar 1, 2022
* TST: Add test for rectangle clipping

* ENH: Add `GeometryArray().clip_by_rect()`

* ENH: Add `GeoPandasBase().clip_by_rect()`

Closes #1902

* Change signatures to use tuple rectangle

* Change signatures to use tuple rectangle

* Raise exception when shapely < 1.7

Exception is raised as `shapely.ops.clip_by_rect` was introduced in shapely 1.7

* Reorder tests to make them easier to group

* Parameterize all test which use single_rectangle_df to also test with bounds

* Paramterize test with larger single rectangle

* Add bounding box clip capability to clip using .clip_by_rect()

* Add documentation for `.clip_by_rect()` and changes in `clip()`

* Skip clip tests if shapely < 1.7

* Improve test coverage

* Remove shapely >1.7 compatibility checks

Can be removed as #2358 bumped shapely to ">= 1.7"

* Apply suggestions from code review

Co-authored-by: Martin Fleischmann <martin@martinfleischmann.net>

* Only check for empty geometries after `.clip_by_rect()`

* Move changes to `clip.py` to its own PR

* Change docstring of `base.clip_by_rect()` according to PR comments

* add interpshinx links

Co-authored-by: Martin Fleischmann <martin@martinfleischmann.net>
@martinfleis martinfleis mentioned this pull request Mar 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants