Repository: perrygeo/python-rasterstats (language: python)

Issue:
Lock Fiona version to prevent breaking change
**Describe the bug**
The recent upgrade of Fiona to 1.9.0 breaks the geojson_out feature which then returns `fiona.model` objects instead of GeoJSON dicts. We faced this issue in https://github.com/WFP-VAM/prism-app/ and fixed it with https://github.com/WFP-VAM/prism-app/pull/730

**To Reproduce**

Steps to reproduce the behavior:
1. How did you install rasterstats and its dependencies?
Installing through docker and requirements.txt, installing version 0.17.0
2. What datasets are necessary to reproduce the bug? Please provide links to example data if necessary.
NA
3. What code is necessary to reproduce the bug? Provide the code directly below or provide links to it.
installing rasterstats and running zonal_stats with geojson_out=True

In the repo PRISM listed above, before the fix, running the tests would highlight the error.

Pinning the Fiona dependency version to `1.8.22` should be enough to fix this for now, before diving into the underlying issue.

PS - Thanks for this awesome lib @perrygeo !



Discussion / hints:

Fix patch:
diff --git a/requirements.txt b/requirements.txt
index 62f0f04..226f2b0 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -4,5 +4,5 @@ numpy>=1.9
 rasterio>=1.0
 cligj>=0.4
 click>7.1
-fiona
+fiona<1.9
 simplejson


Test patch:
diff --git a/.github/workflows/test-rasterstats.yml b/.github/workflows/test-rasterstats.yml
index d6e0a6e..d21e9fb 100644
--- a/.github/workflows/test-rasterstats.yml
+++ b/.github/workflows/test-rasterstats.yml
@@ -10,7 +10,7 @@ jobs:
     runs-on: ubuntu-latest
     strategy:
       matrix:
-        python-version: [3.6, 3.7, 3.8, 3.9]
+        python-version: ["3.7", "3.8", "3.9", "3.10"]
     steps:
     - uses: actions/checkout@v2
     - name: Set up Python ${{ matrix.python-version }}