Skip to content

Commit

Permalink
Rel 1.10.0 (#1432)
Browse files Browse the repository at this point in the history
* Remove setup.cfg, update requirements, change log, and version

* Update change log

* Add new wheel workflow based on pyogrio's

* Build sdist in a GDAL container

* Fix package name

* Use bash

* Debugging output

* txt not text

* Build sdist in a venv`

* Fetch tests and activate venv

* cd

* Moar debugging

* Remove comments

* Fix yaml

* More debugging

* Checkout Fiona source earlier

* Skip apt package installation

* Provide GDAL version

* Run tests from right location

* cd before running tests

* Move tests

* Add vcpkg.json

* Add custom triplets

* Restore mutable item access to Properties

Resolves #1430.

* Remove experimental wheel build infra

* Update 1.10.0rc1 release date

* This is 1.10.0

* Bump version to the next dev version
  • Loading branch information
sgillies authored Sep 4, 2024
1 parent e56cbea commit 7bf5f07
Show file tree
Hide file tree
Showing 9 changed files with 69 additions and 14 deletions.
20 changes: 20 additions & 0 deletions CHANGES.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,26 @@ Changes

All issue numbers are relative to https://github.com/Toblerity/Fiona/issues.

1.10.0 (2024-09-03)
-------------------

The package version, credits, and citation file have been updated. There have
been no other changes since 1.10.0rc1. Fiona is the work of 73 contributors,
including 25 new contributors since 1.9.0.

1.10.0rc1 (2024-08-21)
----------------------

This is the first release candidate for 1.10.0.

Changes:

- Mutable item access to Feature, Geometry, and Properties instances has been
restored (reported in #1430). This usage should be avoided as instances of
these classes will be immutable in a future version.
- The setup.cfg duplicates project configuration in pyproject.toml and has been
removed.

1.10b3 (2024-07-29)
-------------------

Expand Down
4 changes: 2 additions & 2 deletions CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ cff-version: 1.2.0
message: "Please cite this software using these metadata."
type: software
title: Fiona
version: "1.9.5"
date-released: "2023-10-11"
version: "1.10.0"
date-released: "2024-09-03"
abstract: "Fiona streams simple feature data to and from GIS formats like GeoPackage and Shapefile."
keywords:
- cartography
Expand Down
27 changes: 26 additions & 1 deletion CREDITS.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,20 @@ Credits

Fiona is written by:

- Adam J. Stewart <[email protected]>
- Alan D. Snow <[email protected]>
- Alexandre Detiste <[email protected]>
- Ariel Nunez <[email protected]>
- Ariki <[email protected]>
- Bas Couwenberg <[email protected]>
- Brandon Liu <[email protected]>
- Brendan Ward <[email protected]>
- Chad Hawkins <[email protected]>
- Chris Mutel <[email protected]>
- Christoph Gohlke <[email protected]>
- Dan "Ducky" Little <[email protected]>
- daryl herzmann <[email protected]>
- Denis <[email protected]>
- Denis Rykov <[email protected]>
- dimlev <[email protected]>
- Efrén <[email protected]>
Expand All @@ -19,36 +26,54 @@ Fiona is written by:
- Ewout ter Hoeven <[email protected]>
- Filipe Fernandes <[email protected]>
- fredj <[email protected]>
- Gavin S <[email protected]>
- Géraud <[email protected]>
- Hannes Gräuler <[email protected]>
- Hao Lyu <[email protected]>
- Herz <[email protected]>
- Ian Rose <[email protected]>
- Jacob Wasserman <[email protected]>
- James McBride <[email protected]>
- James Wilshaw <[email protected]>
- Jelle van der Waa <[email protected]>
- Jesse Crocker <[email protected]>
- joehuanguf <[email protected]>
- Johan Van de Wauw <[email protected]>
- Joris Van den Bossche <[email protected]>
- Joshua Arnott <[email protected]>
- Juan Luis Cano Rodríguez <[email protected]>
- Keith Jenkins <[email protected]>
- Kelsey Jordahl <[email protected]>
- Kevin Wurster <[email protected]>
- lgolston <[email protected]>
- Loïc Dutrieux <[email protected]>
- Ludovic Delauné <[email protected]>
- Martijn Visser <[email protected]>
- Matthew Perry <[email protected]>
- Micah Cochran <[email protected]>
- Micah Cochran <[email protected]>
- Michael Weisman <[email protected]>
- Michele Citterio <[email protected]>
- Mike Taves <[email protected]>
- Miro Hrončok <[email protected]>
- Oliver Tonnhofer <[email protected]>
- Patrick Young <[email protected]>
- Phillip Cloud <[email protected]>
- pmav99 <[email protected]>
- qinfeng <[email protected]>
- René Buffat <[email protected]>
- Reuben Fletcher-Costin <[email protected]>
- Ryan Grout <[email protected]>
- Ryan Munro <[email protected]>
- Sandro Mani <[email protected]>
- Sean Gillies <[email protected]>
- Sid Kapur <[email protected]>
- Simon Norris <[email protected]>
- Stefan Brand <[email protected]>
- Stefano Costa <[email protected]>
- Stephane Poss <[email protected]>
- Tim Tröndle <[email protected]>
- wilsaj <[email protected]>
- Yann-Sebastien Tremblay-Johnston <[email protected]>

The GeoPandas project (Joris Van den Bossche et al.) has been a major driver
for new features in 1.8.0.
Expand Down
2 changes: 1 addition & 1 deletion fiona/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@
"remove",
]

__version__ = "1.10.0rc1.dev"
__version__ = "1.10.1.dev"
__gdal_version__ = get_gdal_release_name()

gdal_version = get_gdal_version_tuple()
Expand Down
15 changes: 9 additions & 6 deletions fiona/model.py
Original file line number Diff line number Diff line change
Expand Up @@ -139,12 +139,15 @@ def _props(self):
}

def __getitem__(self, item):
props = {
k: (dict(v) if isinstance(v, Object) else v)
for k, v in self._props().items()
}
props.update(**self._data)
return props[item]
if item in self._delegated_properties:
return getattr(self._delegate, item)
else:
props = {
k: (dict(v) if isinstance(v, Object) else v)
for k, v in self._props().items()
}
props.update(**self._data)
return props[item]

def __iter__(self):
props = self._props()
Expand Down
2 changes: 2 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@ all = ["fiona[calc,s3,test]"]
calc = ["pyparsing", "shapely"]
s3 = ["boto3>=1.3.1"]
test = [
"aiohttp",
"fsspec",
"fiona[s3]",
"pytest>=7",
"pytest-cov",
Expand Down
1 change: 0 additions & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,4 @@ click~=8.0
click-plugins
cligj>=0.5.0
importlib-metadata;python_version<"3.10"
munch>=2.3.2
certifi
3 changes: 0 additions & 3 deletions setup.cfg

This file was deleted.

9 changes: 9 additions & 0 deletions tests/test_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -342,3 +342,12 @@ def test_feature_repr():
properties=Properties(a=1, foo="bar"),
)
assert repr(feat) == "fiona.Feature(geometry=fiona.Geometry(coordinates=[(0, 0), ...], type='LineString'), id='1', properties=fiona.Properties(a=1, foo='bar'))"


def test_issue1430():
"""__getitem__() returns property, not disconnected dict."""
feat = Feature(properties=Properties())
with pytest.warns(FionaDeprecationWarning, match="immutable"):
feat["properties"]["foo"] = "bar"
assert feat["properties"]["foo"] == "bar"
assert feat.properties["foo"] == "bar"

0 comments on commit 7bf5f07

Please sign in to comment.