跳转到主要内容

Fiona读取和写入空间数据文件

项目描述

https://github.com/Toblerity/Fiona/actions/workflows/tests.yml/badge.svg https://github.com/Toblerity/Fiona/actions/workflows/test_gdal_latest.yml/badge.svg https://img.shields.io/pypi/v/fiona https://api.securityscorecards.dev/projects/github.com/Toblerity/Fiona/badge

Fiona将简单要素数据流式传输到和从GIS格式(如GeoPackage和Shapefile)。

Fiona可以使用多层GIS格式、压缩和内存中的虚拟文件系统、从硬盘上的文件或云存储中读取和写入现实世界的数据。此项目包括Python模块和命令行界面(CLI)。

Fiona依赖于GDAL,但与GDAL自己的绑定不同。Fiona旨在提高生产效率,并使编写易于阅读的代码变得容易。

安装

Fianna有几个扩展模块,这些模块与libgdal链接。这使得安装变得复杂。包含libgdal及其依赖项的二进制分发(wheels)可以从Python包索引中获取,并可以使用pip进行安装。

pip install fiona

这些wheels主要用于简化简单应用程序的安装,而不是用于生产。它们未经测试,无法与其他二进制wheels、conda包或QGIS兼容,并省略了GDAL许多可选格式驱动程序。如果您需要,例如,GML支持,您将需要从源分发版构建和安装Fianna。您可以使用pip(版本 >= 22.3)和–no-binary选项从源安装Fianna。可以通过设置GDAL_CONFIG环境变量来选择特定的GDAL安装。

pip install -U pip
pip install --no-binary fiona fiona

许多用户发现Anaconda和conda-forge是安装Fianna并获取更多可选格式驱动程序(如GML)的好方法。

Fianna 1.10需要Python 3.8或更高版本以及GDAL 3.4或更高版本。

Python使用方法

特征从返回自fiona.open()函数的文件-like Collection对象中读取和写入。特征是基于GeoJSON格式的数据类。它们没有自己的空间方法,因此如果您想转换它们,您将需要Shapely或其他类似工具。以下是一个使用Fianna从数据文件中读取一些特征、使用Shapely更改它们的几何属性并将它们写入新数据文件的示例。

import fiona
from fiona import Feature, Geometry
from shapely.geometry import mapping, shape

# Open a file for reading. We'll call this the source.
with fiona.open(
    "zip+https://github.com/Toblerity/Fiona/files/11151652/coutwildrnp.zip"
) as src:

    # The file we'll write to must be initialized with a coordinate
    # system, a format driver name, and a record schema. We can get
    # initial values from the open source's profile property and then
    # modify them as we need.
    profile = src.profile
    profile["schema"]["geometry"] = "Point"
    profile["driver"] = "GPKG"

    # Open an output file, using the same format driver and coordinate
    # reference system as the source. The profile mapping fills in the
    # keyword parameters of fiona.open.
    with fiona.open("centroids.gpkg", "w", **profile) as dst:

        # Process only the feature records intersecting a box.
        for feat in src.filter(bbox=(-107.0, 37.0, -105.0, 39.0)):

            # Get the feature's centroid.
            centroid_shp = shape(feat.geometry).centroid
            new_geom = Geometry.from_dict(centroid_shp)

            # Write the feature out.
            dst.write(
                Feature(geometry=new_geom, properties=f.properties)
            )

    # The destination's contents are flushed to disk and the file is
    # closed when its with block ends. This effectively
    # executes ``dst.flush(); dst.close()``.

CLI使用方法

Fianna的命令行界面,名为“fio”,在docs/cli.rst中有文档说明。CLI有多个不同的命令。它的fio cat命令从任何数据集流式传输GeoJSON特征。

$ fio cat --compact tests/data/coutwildrnp.shp | jq -c '.'
{"geometry":{"coordinates":[[[-111.73527526855469,41.995094299316406],...]]}}
...

文档

有关此项目的更多详细信息,请参阅

更改

所有问题编号均相对于https://github.com/Toblerity/Fiona/issues

1.10.1 (2024-09-16)

错误修复

  • 在CRS类中记录不再尝试打印在搜索权威匹配时可能为NULL的对象的表示(#1445)。

1.10.0 (2024-09-03)

已更新包版本、致谢和引用文件。自1.10.0rc1以来没有其他更改。Fianna是73位贡献者的作品,其中包括自1.9.0以来新增的25位贡献者。

1.10.0rc1(2024-08-21)

这是1.10.0的第一个发布候选版本。

更改

  • Feature、Geometry和Properties实例的可变项访问已恢复(在#1430中报告)。应避免此用法,因为这些类的实例将在未来的版本中是不可变的。

  • setup.cfg重复了pyproject.toml中的项目配置,已被删除。

1.10b3(2024-07-29)

错误修复

  • 1.10b2版本的半公开Python打开器接口已被从fiona.abc导出的ABC替换(#1415)。

  • 已实现truncate VSI插件回调(#1413)。

1.10b2(2024-07-10)

错误修复

  • Pyopener注册表和VSI插件已被重写,以避免文件名冲突并兼容多线程。现在,为每个使用打开器的实例注册新的插件处理程序(#1408)。在GDAL 3.9.0之前,插件处理程序无法删除,因此可能会观察到Pyopener注册表的大小在程序执行期间增长。

  • 添加了CSLConstList ctypedef,并在适当的位置使用它(#1404)。

  • Fianna模型对象再次具有信息丰富、可打印的表示(#1380)。

打包

  • PyPI wheels包含GDAL 3.9.1和curl 8.8.0。

1.10b1(2024-04-16)

错误修复

  • Fianna可以再次设置值为从日期、时间和datetime派生的类的实例的字段(#1377)。这被1.10a2中的更改破坏了。

1.10a2(2024-04-05)

弃用功能

  • 项目不再使用 fiona.schema 的 FIELD_TYPES、FIELD_TYPES_MAP 和 FIELD_TYPES_MAP_REV 属性,这些属性将在版本 2.0 中被移除(#1366)。

  • 版本 1.0 中引入的 rio-filter 表达式的 Python 风格已被弃用。版本 2.0 将仅支持括号列表类型的表达式。

新功能

  • 现在所有支持的 Fiona 字段类型都由 fiona.schema 中的类表示。这些类映射到 FIELD_TYPES_MAP2 和 FIELD_TYPES_MAP2_REV,以 OGR 字段类型和字段子类型对的形式存在(#1366)。

  • fio-planet 公域版本 1.1.0 中的 filter、map 和 reduce CLI 命令已被纳入 Fiona 的核心命令集(#1362)。这些命令仅在安装了 pyparsing 和 shapely(这些都在“calc”额外的需求中声明)的情况下可用。

错误修复

  • Fiona 的 Python 打开器 VSI 插件前缀已更改为“vsifiopener”,以避免与 Rasterio 冲突(#1368)。

  • 基于 OGR 的 OSFTInt16 整数子类型,添加了 16 位整数类型“int16”(#1358)。

  • 允许在写入模式下打开 GeoJSON 集合时设置图层名称(#1352)。

  • 被新 crs.pyx 模块覆盖的旧 crs.py 模块已被删除(#1344)。

  • Python 3.8 已被添加到支持的版本列表中,并且在 1.10a1 中添加了对 Numpy 的依赖已被移除。

  • 已向 _vsiopener.pyx 添加了 VSI flush 回调的实现。

  • 现在仅通过 urlpath 注册打开器。模式不再被视为 OGR 驱动程序在创建新数据集时可能会使用多种模式。

其他更改

  • 在读取和写入特征时,会重用特征构建器和字段获取/设置实例(#1366)。

1.10a1(2024-03-01)

Python 版本

Fiona 1.10 将需要 Python 版本 3.9 或更高。

弃用功能

版本 2.0 中将移除 fiona.path 模块,并在导入该模块时发出弃用警告(#1334)。此外,该模块的成员不再从顶级模块导出。

新功能

Python 打开器现在可以支持发现辅助“副车”文件,如 .aux.xml、.msk 和 .tfw 文件,用于 GeoTIFF。此外,如 fsspec 之类的文件系统对象可以用作打开器。这将成为推荐的使用方式,取代了单文件打开器的使用。

错误修复

  • 在 test_rio_info.py 中已消除对 pkg_resources 的使用。

  • 在 Windows 上,包含驱动器字母的 gzip、tar 和 zip 存档 URI 并未始终正确解析,但现在已经可以了(#1334)。

1.9.6 (2024-03-07)

  • 确保在模式中几何类型被转换为线性类型,因为几何实例是(#1313)。

  • 修复了 Read The Docs 上的损坏的稳定 API 文档(#)。

  • 移除了对 setuptools 的安装要求,这是 1.9.5 中引入的回归。

1.9.5 (2023-10-11)

错误修复

  • 扩展了模式不匹配异常中的键,解决了 #1278。

  • 在序列化时保留特征的空属性和几何形状(#1276)。

打包

  • 分发名称现在是官方的“fiona”,不再是“Fiona”。导入名称仍然是“fiona”。

  • 构建现在需要 Cython >= 3.0.2(#1276)。

  • PyPI 轮子包括 GDAL 3.6.4、PROJ 9.0.1 和 GEOS 3.11.2。

  • PyPI 轮子包括 curl 8.4.0,解决 CVE-2023-38545 和 CVE-38546。

  • 现在为 Python 3.12 提供了 PyPI 轮子。

1.9.4.post1(2023-05-23)

1.9.4 轮子中意外包含了一些文件。此 post1 版本排除了它们,以便轮子内容与版本 1.9.3 相同。

1.9.4 (2023-05-16)

  • Feature.from_dict() 的性能已得到改善(#1267)。

  • 避免了来自 fiona._geometry 关于 NULL 几何体的无意义日志消息的几个来源(#1264)。

  • 已将 Parquet 驱动器添加到支持的驱动器列表,并在您的系统 GDAL 库链接到 libarrow 时可用。请注意,PyPI 上的 fiona 轮子不包括 libarrow,因为它相当大。

  • 确保找到并包含 fiona._vendor 模块。

  • 当序列化为GeoJSON时,Bytes类型特征属性现在以十六进制编码(#1263)。

  • 对listdir和listlayers的文档字符串进行了澄清和协调。

  • 将Nose样式的测试用例转换为unittest.TestCase(#1256)。

  • fio-filter和fio-calc使用的munch包现在已作为供应商软件包集成,并修复以删除对已弃用的pkg_resources模块的使用(#1255)。

1.9.3 (2023-04-10)

  • Rasterio CRS对象与Collection构造函数兼容,现在被接受(#1248)。

  • 为fio-load启用追加模式(#1237)。

  • 由于从版本1.9.0开始,带有空数组属性的GeoJSON读取可能导致段错误,此问题已修复(#1228)。

1.9.2 (2023-03-20)

  • 使用importlib.metadata获取命令入口点(#1220)。

  • 除非调用者选择部分重投影,否则transform_geom()在某些点无法重投影时将引发异常,而不是警告。这恢复了版本1.8.22的行为。

  • 向所有调用fiona.open的CLI命令添加支持打开选项(#1215)。

  • 修复了在迭代数据集时可能出现的内存泄漏(#1205)。

  • ZipMemoryFile现在支持压缩的GDB数据(#1203)。

1.9.1 (2023-02-09)

  • 当遇到同名字段时记录警告消息(#1201)。

  • 避免在测试中依赖于listdir的顺序(#1193)。

  • 防止在__geo_interface__中出现空几何数组(#1197)。

  • 将setuptools添加到pyproject.toml。它的pkg_resources模块由CLI使用(#1191)。

1.9.0 (2023-01-30)

  • CITATION.txt已被新的CITATION.cff文件取代,并已更新了致谢。

  • 在setup.py中不再使用(已弃用)的distutils日志记录器。

1.9b2(2023-01-22)

  • 添加Feature.__geo_interface__属性(#1181)。

  • 过滤并忽略无效的创建选项(#1180)。

  • 精简并更新了readme文档,包括1.9.0版本的现代示例(#1174)。

  • Geometry类现在提供并查找__geo_interface__(#1174)。

  • 顶级fiona模块现在导出Feature、Geometry和Properties(#1174)。

  • 接受Feature或Geometry对象的函数将继续接受dict或提供__geo_interface__的对象。这撤销了1.9a2中引入的弃用(#1177)。

  • Python默认忽略SIGPIPE。由于在例如将rio-shapes的输出管道传输到Unix head程序时,永远不会通过except Exception捕获BrokenPipeError,因此当解释器关闭时,我们避免收到未处理的BrokenPipeError消息(#2689)。

1.9b1(2022-12-13)

新功能

  • 将listdir和listlayers方法添加到io.MemoryFile中(解决#754)。

  • 添加对TIN和三角形几何形状的支持(#1163)。

  • 向fiona.open()添加允许_unsupported_drivers选项(#1126)。

  • 添加对OGR StringList字段类型的支持(#1141)。

更改和错误修复

  • 已添加或删除缺失和未使用的导入。

  • 确保在无法正确保存集合时不会丢失错误(#1169)。

  • 确保在创建后ZipMemoryFile具有正确的GDAL名称,以便我们可以使用listdir()(#1092)。

  • 支持Windows上DLL加载的fiona._loading模块已移动到__init__.py,且不再在其他地方使用(#1168)。

  • 将项目元数据移动到pyproject.toml(#1165)。

  • 更新drvsupport.py以反映GDAL 3.6.0中的新格式功能(#1122)。

  • 从env和_env模块中删除调试日志。

1.9a3(2022-10-17)

打包

  • 由于以下原因,构建现在需要Cython >= 0.29.29:

  • https://github.com/cython/cython/issues/4609(参见#1143)。

  • PyPI轮现在包括GDAL 3.5.2、PROJ 9.0.1和GEOS 3.11.0。

  • PyPI轮现在支持Python 3.11。

1.9a2(2022-06-10)

弃用功能

  • Fiona的API方法将在1.9.0中接受特征和几何dict,但此用法已被弃用。在2.0中需要Feature和Geometry实例。

  • fiona.transform.transform_geom的精度关键字参数已被弃用,将在版本2.0中删除。

  • 在项目中消除了弃用用法。运行带有-Werror::DeprecationWarning过滤器的Fiona测试时,Fiona的测试通过。

更改

  • Fiona的FionaDeprecationWarning现在子类化DeprecationWarning。

  • 一些测试模块已经使用黑色重新格式化。

新功能

  • Fiona 集合现在包含一个上下文退出栈,我们可以将其推入 fiona Envs 和 MemoryFiles(#1059)。

  • Fiona 新增了一个 CRS 类,类似于 rasterio,与先前版本的 CRS 字典兼容(#714)。

1.9a1(2022-05-19)

弃用功能

  • fiona.drivers() 函数已被弃用,将在版本 2.0 中删除。应使用 fiona.Env() 替换。

  • 新 fiona.meta 模块将在版本 2.0 中更名为 fiona.drivers。

打包

  • 源分布不包含 C 源文件,需要 Cython 从 .pyx 文件创建它们(#1096)。

更改

  • 已删除各种版本的 GDAL 的 Shim,并用 Cython 编译条件替换(#1093)。

  • CURL_CA_BUNDLE 环境变量的使用已被更具体的 GDAL/PROJ_CURL_CA_BUNDLE 替换(#1095)。

  • Fiona 的特性访问器现在返回 fiona.model.Feature 实例,而不是 Python 字典(#787)。Feature 类与预期 GeoJSON-like 字典的代码兼容,但也提供了 id、几何和属性属性。后两个属性是 fiona.model.Geometry 和 fiona.model.Properties 的实例。

  • GDAL 3.1.0 是最低的 GDAL 版本。

  • 放弃 Python 2,并将 Python 3.7 建立为最低版本(#1079)。

  • 删除 six 并减少 fiona.compat 的足迹(#985)。

新功能

  • 在写入模式下,可以从文件名检测适当的格式驱动程序(#948)。

  • 现在通过 fiona.meta 模块的方法公开驱动程序元数据,包括数据集打开和数据集和层创建选项(#950)。

  • 支持 CRS WKT 格式(#979)。

  • 添加了“where” SQL 子句来设置属性过滤器(#961,#1097)。

错误修复

  • Env 和 Session 类已更新,以与 rasterio 平齐并解决凭证刷新错误(#1055)。

1.8.22 (2022-10-14)

由于 https://github.com/cython/cython/issues/4609(#1143),构建现在需要 Cython >= 0.29.29。

1.8.21 (2022-02-07)

更改

  • 驱动程序模式支持测试已变得更加通用,并减少了与特性字段和坐标值相关的驱动程序怪癖的敏感性(#1060)。

  • 尝试以“a”模式在 Python 文件对象中打开数据集时将引发 OSError(见 #1027)。

  • 升级 attrs、cython 等以支持 Python 3.10(#1049)。

错误修复

  • 允许 FieldSkipLogFilter 处理异常消息以及字符串(在 #1035 中报告)。

  • 清理由 MemoryFileBase 留下的 VSI 文件,解决 #1041。

  • 在 #423 中添加的硬编码“utf-8”集合编码已被删除(#1057)。

1.8.20 (2021-05-31)

打包

  • 轮子包括 GDAL 3.3.0 和 GEOS 3.9.1。

错误修复

  • 允许与 click 8 及更高版本一起使用(#1015)。

1.8.19 (2021-04-07)

打包

  • 轮子包括 GDAL 3.2.1 和 PROJ 7.2.1。

错误修复

  • 现在在 fiona/env.py 中使用 set_gdal_config 配置 GDAL 数据路径,而不是设置 GDAL_DATA 环境变量(#1007)。

  • 消除多余的迭代器重置警告(#987)。

1.8.18 (2020-11-17)

  • 修复了 transform 的精度选项,以解决 GeometryCollections 的情况(#971,#972)。

  • 为 fio-load 添加了缺少的 –co(创建)选项(#390)。

  • 如果可以导入 certifi 包,则其证书存储位置将在导入 fiona._env 时传递给 GDAL,除非 CURL_CA_BUNDLE 已经设置。

  • 当找到名为“”的特征字段时发出警告(#955)。

1.8.17 (2020-09-09)

  • 为解决 #952 中的问题,fio-cat 命令默认不再在子午线上切割特征几何形状。已添加 –cut-at-antimeridian 选项,允许在地理目标坐标参考系中切割几何形状。

1.8.16 (2020-09-04)

  • 在调用 GDAL C API 函数时出现更多 OGR 错误和警告。

  • 在 1.8.15 的一些情况下引入的循环导入已被修复(#945)。

1.8.15 (2020-09-03)

  • 将 Shim 函数的更改更改为不返回元组(#942),作为解决 #941 中报告的打包问题的解决方案。

  • 当 VSIFOpenL 失败时引发 Python 异常(#937)。

1.8.14 (2020-08-31)

  • 当在MemoryFile中创建一个新集合并使用默认(随机)名称时,Fiona会尝试使用驱动程序支持的文件扩展名格式(#934)。当初始化一个包含格式化用于矢量驱动程序的字节数据的MemoryFile时,如果需要特定的文件名或扩展名,用户应继续传递适当的文件名和/或扩展名。

  • 在drvsupport模块中已启用FlatGeobuf的读取支持。

  • MemoryFile实现已被改进,以便支持多部分S3下载(#906)。这主要是从rasterio代码移植的。

  • 当使用“EPSG:dddd”形式传递CRS时,fiona.transform的结果轴排序错误(#919)。这个问题已被(#926)修复。

  • 允许隐式访问ZipMemoryFile中的唯一数据集。现在ZipMemoryFile.open()的路径参数是可选的(#928)。

  • 改进了对datetime类型的支持:支持毫秒(#744)、时区(#914),并在类型不受驱动程序支持时改进了警告(#572)。

  • 修复了FileGDB驱动程序的“无法提交事务”TransactionError。

  • 在Python 3.8+ / Windows上使用add_dll_directory()加载GDAL DLL依赖关系(#851)。

  • 不再要求可选属性(#848)。

  • 确保切片不会溢出可用数据(#884)。

  • 解决在导入fiona时出现“ERROR 4: 无法打开EPSG支持文件gcs.csv。”的问题(#897)。

  • 解决可能导致字段名称混淆的问题(仅影响DXF、GPX、GPSTrackMacker和DGN驱动程序)(#916)。

  • 在写入MemoryFile时确保传递crs_wkt(#907)。

1.8.13.post1(2020-02-21)

  • 本次发布是为了提高与shapely 1.7.0的二元轮兼容性。自1.8.13以来,fiona包代码没有发生变化。

1.8.13 (2019-12-05)

  • 1.8.12中argparse和ordereddict的Python版本规范错误,并已更正(#843)。

1.8.12 (2019-12-04)

  • 指定argparse、enum34和ordereddict的要求的Python版本(#842)。

1.8.11 (2019-11-07)

  • 修复了Windows上的访问违规(#826)。

1.8.10 (2019-11-07)

弃用功能

  • 使用open或listlayers的vfs关键字参数已被标记为已弃用,但现在将触发弃用警告。

错误修复

  • fiona.open()现在可以使用CRS URNs创建新数据集(#823)。

  • listlayers()现在接受文件和Path对象,如open()(#825)。

  • 使用新的set_proj_search_path()函数设置PROJ数据搜索路径。对于GDAL版本低于3.0,它设置PROJ_LIB环境变量。对于GDAL版本3.0,它调用OSRSetPROJSearchPaths(),这覆盖了PROJ_LIB。

  • 删除旧的和未使用的_drivers扩展模块。

  • 在查找已安装的GDAL数据时,检查header.dxf文件而不是pcs.csv。后者随GDAL 3.0一同消失,但前者仍然存在(#818)。

1.8.9.post2(2019-10-22)

  • 1.8.9.post1版本引入了一个影响使用GDAL 2.x从源分布构建包的构建的错误。这个错误已在提交960568d中修复。

1.8.9.post1(2019-10-22)

  • 已对包设置脚本进行了修改,以便从源分布构建包时使用GDAL 3的shim模块。包没有其他更改。

1.8.9 (2019-10-21)

  • 已添加shim模块和GDAL 3.0的支持。现在,该包可以使用GDAL 3.0和PROJ 6.1或6.2构建和使用。请注意,我们将上传到PyPI的1.8.9轮子将包含与1.8.8轮子相同的GDAL 2.4.2和PROJ 4.9.3。

1.8.8 (2019-09-25)

  • 使用Fiona 1.8.7无法报告具有3000几何类型代码的geopackage文件的架构。此错误已修复。

1.8.7 (2019-09-24)

错误修复

  • 在版本1.8.5下记录的关于处理包含M值的多边形的回归实际上当时没有修复(请参阅新报告#789),但在版本1.8.7中已修复。

  • 现在正确解析包含“!”的Windows文件名,修复了问题#742。

即将到来的变化

  • 在版本 1.9.0 中,迭代 Collection 时产生的对象将是可变映射,但将不再是 Python 的 dict 实例。版本 1.9 的目标是与 1.8 兼容,除非用户代码测试 isinstance(feature, dict)。在版本 2.0 中,新的 Feature、Geometry 和 Properties 类将变为不可变映射。有关版本 2.0 即将到来的更改的更多信息,请参阅 https://github.com/Toblerity/fiona-rfc/blob/main/rfc/0001-fiona-2-0-changes.md

1.8.6 (2019-03-18)

  • 1.8.5 版本中关于启用 JSON 驱动程序的广告是错误的 (#176),但在这个版本中它们已经准备好使用。

1.8.5 (2019-03-15)

  • GDAL 在 GDAL_DATA 设置得尽可能早的情况下工作得最好。理想情况下是在构建库或导入 Fiona 之前的环境中进行设置,但对于 wheel,我们在导入 fiona.env 时将 GDAL_DATA 补丁到 os.environ 中。这解决了 #731。

  • 修复了一系列允许忽略 .cpg 文件的错误 (#726)。

  • 在进入集合上下文(Collection.__enter__)时,如果需要,将创建并进入一个新的匿名 GDAL 环境。这使得 with fiona.open(…) as collection: 大致等同于 with fiona.open(…) as collection, Env():。这有助于防止在创建集合后稍后或在不同的作用域中使用时出现错误。

  • 为 TopoJSON、GeoJSONSeq 和 ESRIJSON 启用了缺失的 GDAL 支持 (#721)。

  • 修复了处理具有 M 值的多边形的回归 (#724)。

  • 消除了 OGRFeatureBuilder 方法中的按特征调试日志调用,以提高特征写入性能 (#718)。

  • 添加了对由“gs”资源名称标识的 Google Cloud Storage 中的数据集的原生支持 (#709)。

  • 添加了对三角形、多边形表面和 TIN 几何类型的支持 (#679)。

  • 将有关使用 MemoryFile 和 ZipMemoryFile 类的说明添加到手册 (#674) 中。

1.8.4 (2018-12-10)

  • 现在可以使用指定的精度转换 3D 几何体 (#523)。

  • 修复了产生虚假的 DriverSupportError 的错误,该错误针对具有“时间”字段的 Shapefiles (#692)。

  • 意外地保留了对 GDAL_DATA 环境变量的补丁,现在已将其删除。

1.8.3 (2018-11-30)

  • 从 Rasterio 捕获的 RASTERIO_ENV 配置环境标记已被重命名为 FIONA_ENV (#665)。

  • 已将选项 –gdal-data 和 –proj-data 添加到 fio-env 命令中,以便 Rasterio wheel 的用户可以获取设置 GDAL_DATA 和 PROJ_LIB 环境变量的路径。

  • 已撤销尝试使 GDAL 和 PROJ 在集合的 crs 和 crs_wkt 属性中自动发现和配置文件发现和支持的失败尝试。用户必须在 with Env() 块内执行此类代码或设置 GDAL 和 PROJ 所需的 GDAL_DATA 和 PROJ_LIB 环境变量。

1.8.2 (2018-11-19)

错误修复

  • 当调用迭代器的 __next__ 并发现会话缺失或非活动时,引发 FionaValueError 而不是将空指针传递给 OGR_L_GetNextFeature (#687)。

1.8.1 (2018-11-15)

错误修复

  • 在 OSRGetAuthorityName 和 OSRGetAuthorityCode 调用周围添加了检查,以记录查找这些项时的问题。

  • 在 WritingSession.start 中引发异常之前,我们现在会释放打开的数据源 (#676)。这解决了 Windows 上的锁定文件问题。

  • 现在,我们在获取集合的 crs 或 crs_wkt 属性时确保存在 Env 实例 (#673, #690)。否则,Fiona wheel 中包含的所需 GDAL 和 PROJ 数据文件将找不到。

  • GDAL 和 PROJ 数据搜索已重构以提高可测试性 (#678)。

  • 在项目的 Cython 代码中,已用适当的 GDAL 类型替换了 void* 指针 (#672)。

  • 消除了关于 ENCODING 创建选项的普遍警告级别日志消息 (#668)。

1.8.0 (2018-10-31)

这是最终的 1.8.0 版本。谢谢大家!

错误修复

  • 我们 cpdef Session.stop,以便它有一个可以从 __dealloc__ 安全调用的 C 版本,从而修复了 PyPy 问题 (#659, #553)。

1.8rc1(2018-10-26)

1.8rc1 没有其他变化,只是增加了更多的测试标准化,并引入了临时测试模块 test_collection_legacy.py 来支持在 Travis-CI 上构建经过充分测试的 Python 2.7 macosx 轮子。

1.8b2(2018-10-23)

错误修复

  • ensure_env_with_credentials 装饰器将不再覆盖外部环境的凭证。这修复了向 Rasterio 项目报告的 bug,该 bug 也存在于 Fiona 中。

  • 已删除未使用的 packaging 模块导入及其依赖项(#653)。

  • Env 类现在将日志记录到‘rasterio’层次结构而不是‘fiona’。这个错误已被纠正(#646)。

  • 尽可能从 collections.abc 导入 Mapping 抽象基类(#647)。

重构

  • pytest 函数和 fixtures 的测试标准化继续进行,并接近完成(#648、#649、#650、#651、#652)。

1.8b1(2018-10-15)

弃用功能

  • 集合切片已弃用,并在未来的版本中将被禁止。

错误修复

  • 传递给 transform 模块方法的 Rasterio CRS 对象将根据需要转换为字典(#590)。

  • 将曲线几何体隐式转换为它们的线性近似,而不是失败(#617)。

  • 将 test_collection.py 和 test_layer.py 中的 unittest 测试用例迁移到使用标准数据_dir 和 path_coutwildrnp_shp 固定值(#616)。

  • 从所有测试脚本中删除了根日志记录器配置(#615)。

  • 仅在明确请求时,为 CLI 上下文的 Env 创建 AWS 会话,以匹配 Rasterio CLI 的行为(#635)。

  • 显式依赖 attrs。

  • 其他依赖项在 requirements 文件中锁定在已知良好的版本。

  • 已从 Env 构造函数中删除未使用的参数(#637)。

重构

  • 添加了 with_context_env 装饰器,并用于设置 GDAL 环境以用于 CLI 命令。命令函数现在已简化。

1.8a3(2018-10-01)

弃用功能

  • fiona.drivers() 上下文管理器已正式弃用。所有用户应切换到 fiona.Env(),它以可逆方式注册格式驱动程序并管理 GDAL 配置。

错误修复

  • Collection 类现在将跳过的字段日志消息过滤到每个字段最多一个警告消息(#627)。

  • 仅在需要时导入 boto3 模块(#507、#629)。

  • 实现了与 Click 7.0 的兼容性(#633)。

  • 在 debug() 调用中使用 %r 而不是 %s 防止 UnicodeDecodeErrors(#620)。

1.8a2(2018-07-24)

新功能

  • 64 位整数现在是 int 类型字段的默认值(#562、#564)。

  • 现在支持数据集的 URI 方案“http”、“s3”、“zip+http”和“zip+s3”(#425、#426)。

  • 已添加支持格式化内存中要素集合的 MemoryFile 类(#501)。

  • 添加了对 GDAL 2.x 布尔字段子类型的支持(#531)。

  • 新的 fio rm 命令可以干净地删除多文件数据集(#538)。

  • 要素集合中的几何类型更灵活。现在不仅可以指定单个几何类型,还可以指定允许的类型序列,或“Any”以允许任何几何类型(#539)。

  • 添加了对 GDAL 2.2+ 空字段的支持(#554)。

  • 我们内部 API 中的新 gdal_open_vector() 函数提供了改进的错误处理(#557)。

错误修复

  • 修复了涉及 Python 2.7 中 OrderedDict 导入的 bug(#533)。

  • 当 fio-cat 的 --bbox 选项与多个输入文件一起使用时引发 AttributeError 的 bug 已被修复(#543、#544)。

  • 已删除过时的 fiona.tool 模块。

  • 撤销了在 0a2bc7c 中删除集合模式报告时的几何类型 Z 的更改(#541)。

  • 需要 six 版本 1.7 或更高版本(#550)。

  • 与“zip+s3” URI 相关的回归问题已修复。

  • 现在默认搜索 Debian 的 GDAL 数据位置 (#583)。

1.8a1 (2017-11-06)

新功能

  • 每次调用 writerecords() 都涉及一个或多个事务,每个事务包含多达 20,000 个特征。这提高了写入 GeoPackage 文件时的性能,因为之前的事务大小仅为 200 个特征 (#476, #491)。

打包

  • Fiona 的 Cython 源文件已被重构,因此不再有针对 GDAL 1.x 和 GDAL 2.x 的单独扩展模块。取而代之的是,有一个基于 GDAL 2.x 的基本扩展模块和用于使用 GDAL 1.x 的适配模块。

1.7.11.post1 (2018-01-08)

  • 本发布后增加了对包含的 GDAL 库(版本仍为 2.2.2)中缺失的 expat(以及因此 GPX 格式)的支持。

1.7.11 (2017-12-14)

  • fiona.open()encoding 关键字参数原本旨在允许调用者覆盖数据源自身的可能错误的编码,但并未正常工作 (#510, #512)。问题在于我们打开数据源之前并没有始终设置 GDAL 打开或配置选项。这个错误通过 maint-1.7 分支的多个提交得到解决,修复在 tests/test_encoding.py 测试中得到了演示。

  • 为 fio-load 添加了 --encoding 选项,以启用创建带伴随 .cpg 文件的编码形状文件 (#499, #517)。

1.7.10.post1 (2017-10-30)

  • 为了修复上传到 PyPI 的 macosx 轮子的问题,已发布一个发布后版本。

1.7.10 (2017-10-26)

错误修复

  • 已从 rio cat --layers 验证器中移除多余的打印行 (#478)。

打包

  • 本发布的官方 OS X 和 Manylinux1 轮子(在 PyPI 上)将与 Shapely 1.6.2 和 Rasterio 1.0a10 轮子兼容。

1.7.9.post1 (2017-08-21)

本发布没有对 Fiona 包进行任何更改。在发布的 Python 包索引中,它将 GDAL 从 2.2.0 升级到 2.2.1。

1.7.9 (2017-08-17)

错误修复

  • 获取 GDAL 错误回调函数的 GIL 以防止在用户代码释放 GIL 时发生崩溃。

  • 即使在特征数量不是确切已知的情况下,也同步和刷新层 (#467)。

1.7.8 (2017-06-20)

错误修复

  • 提供 CPLError 基异常所需的所有参数 (#456)。

1.7.7 (2017-06-05)

错误修复

  • 将日志记录器 warn()(已弃用)调用更改为 warning()

  • 将 Cython 模块中的所有相对导入和 cimport 替换为绝对导入 (#450)。

  • 避免将 PROJ_LIB 设置为不存在目录 (#439)。

1.7.6 (2017-04-26)

错误修复

  • 对于 PROJ_LIB 使用 share/proj 作为后备 (#440)。

  • 将每个对 OSRDestroySpatialReference() 的调用替换为 OSRRelease(),修复了在 #441 中报告的 GPKG 驱动程序崩溃 (#443)。

  • 添加一个从 IOError 派生的 DriverIOError,用于处理特定于驱动程序的错误,例如 GeoJSON 驱动程序拒绝覆盖现有文件。我们还确保当 fiona.open() 引发此错误时,任何创建的读取或写入会话都会被删除,这消除了在拆解损坏的 Collection 对象时的假异常 (#437, #444)。

1.7.5 (2017-03-20)

错误修复

  • 使用 driverdrivers 关键字参数(用于指定某些格式驱动程序)通过 fiona.open() 以只读(默认)模式打开数据文件时,由于字符串列表未正确终止,有时会导致 Windows 上崩溃 (#428)。修复方法:Fiona 的有问题的 string_list() 已被 GDAL 的 CSLAddString() 替换。

1.7.4 (2017-02-20)

错误修复

  • 当在 BytesCollection 中传递给 EsriJSON 检测的数据的前 6000 个字节中未找到某些键时,OGR 的 EsriJSON 检测失败 (#422)。现在,当提供 driver=’GeoJSON’ 关键字参数时,现在将显式地给 BytesCollection 后面的内存文件添加 .json 文件扩展名 (#423)。

1.7.3 (2017-02-14)

玫瑰是红色的。坦是只狗。软件回归是最尴尬的错误。

错误修复

  • 在 Windows 上使用 __stdcall 为 GDAL 错误处理回调,类似于 Rasterio。

  • 在 rio-cat 和 rio-info 中打开对 zip:// URL 的潜在支持 (#421)。

  • 1.7.2 版本的发布破坏了对具有绝对路径的 zip 文件的支持 (#418)。这个回归已经通过测试得到修复。

1.7.2 (2017-01-27)

未来弃用

  • Collection.__next__() 存在问题,当与 Collection.filter()Collection.__iter__() 结合使用时可能会导致特征重复。它将在 Fiona 2.0 中被移除。请通过运行测试或程序并使用 PYTHONWARNINGS=”always:::fiona”-W”always:::fiona” 来检查此已弃用的功能的用法,并将 next(collection) 切换到 next(iter(collection)) (#301)。

错误修复

  • 字节流可以通过 BytesCollection 访问 (#318)。

1.7.1.post1 (2016-12-23)

1.7.1 (2016-11-16)

错误修复

  • 防止 Fiona 在遇到 GDAL 2.1 中引入的 'Z'、'M' 和 'ZM' 几何类型时出错 (#384)。Fiona 1.7.1 不对这些类型提供显式支持,它们被强制转换为几何类型 1-7('Point'、'LineString' 等)

  • 当在新的集合模式或其他地方遇到无效或不支持的几何类型时,抛出 UnsupportedGeometryTypeError (#340)。

  • 为 fio-cat 启用 –precision 0 (#370)。

  • 通过产生 None 防止 datetime 异常无必要地停止集合迭代 (#385)

  • 将 log.warn 调用替换为 log.warning 调用 (#379)。

  • 如果运行 setup.py 时 neither gdal-config nor –gdalversion 指示 GDAL C API 版本,则打印错误消息 (#364)。

  • 让类似于字典的子类通过 CRS 类型检查 (#367)。

1.7.0post2 (2016-06-15)

包装:为 'clean' 和 'config' 目标定义扩展模块 (#363)。

1.7.0post1 (2016-06-15)

包装:对于 'clean' 设置目标不复制任何文件 (#361, #362)。

1.7.0 (2016-06-14)

此库中的 C 扩展模块现在可以使用 GDAL 库的 1.x 或 2.x 版本进行构建和使用。感谢 René Buffat 领导这项工作。

重构

  • ogrext1.pyxogrext2.pyx 文件现在使用在 ogrext1.pxdogrex2.pxd 中定义的独立的 C API。其他扩展模块已经被重构,因此它们不依赖于这些模块,并使用与 GDAL 1.x 和 2.x 兼容的 GDAL/OGR API 的子集 (#359)。

打包

  • 源分发现在包含 ogrext 扩展模块的两个不同来源。将使用 ogrext1.c 文件与 GDAL 1.x 一起使用,将使用 ogrext2.c 文件与 GDAL 2.x 一起使用。

1.7b2 (2016-06-13)

  • 新功能:增强 fio-cat 和 fio-dump 的 –layer 选项,允许选择一个或多个多层输入文件的不同层 (#349)。

1.7b1 (2016-06-10)

  • 新功能:支持 GDAL 版本 2+ (#259)。

  • 新功能:新的 fio-calc CLI 命令 (#273)。

  • 新功能:fio-info (#316) 和 fio-load (#299) 的 –layer 选项。

  • 新功能:fio-collect 的 –no-parse 选项允许小心用户避免额外的 JSON 序列化和反序列化 (#306)。

  • 错误修复:在将 CRS 从 WKT 序列化为 PROJ.4 字典时,现在保留 +wktext (#352)。

  • 错误修复:已修复打开集合时的微小内存泄漏 (#337)。

  • 错误修复:内部 Unicode 错误现在会导致日志消息和 UnicodeError 异常,而不是 TypeError (#356)。

1.6.4 (2016-05-06)

  • 如果活动的 GDAL 库版本 >= 2.0,则抛出 ImportError 而不是不可预测地失败 (#338, #341)。Fiona 1.7 将提供对 GDAL >= 2.0 的支持。

1.6.3.post1 (2016-03-27)

  • 发布版中库没有变更,但在 PyPI 的发行上有一个重大变化:为了帮助 Fiona 在 OS X 上与 Shapely 更好兼容,macosx(仅)二进制 wheels 中包含的 GDAL 共享库现在静态链接了 GEOS 库。请参见 https://github.com/sgillies/frs-wheel-builds/issues/5

1.6.3 (2015-12-22)

  • 北半球的白天正在减少,但现在又开始增加,这是正常的。

  • 在某些情况下,非 UTF 字符串被传递到 OGR 函数中,在 Windows 上有时会导致 Python 进程崩溃(#303)。现在,当字段名或字段值无法编码时,Fiona 会引发来自 UnicodeError 的错误。

1.6.2 (2015-09-22)

  • 仅在数据集的元属性中提供 PROJ4 表示,当使用 fiona.open(…, **src.meta) as dst 模式时会导致 CRS 信息丢失(#265)。通过向 `meta` 属性添加 `crs_wkt` 项并扩展 `fiona.open()` 和集合构造函数以查找和优先考虑此关键字参数来解决这个问题。

1.6.1 (2015-08-12)

  • 错误修复:Fiona 现在反序列化由 OGR GeoJSON 驱动程序提供的 JSON 编码的字符串属性(#244、#245、#246)。

  • 错误修复:由于笔误,proj4 数据在二进制发行版中未正确复制(#254)。

特别感谢 WFMU DJ Liz Berg 为我的发布冲刺提供的精彩播放列表。请在 https://wfmu.org/playlists/shows/62083 上查看。Love Coffin 你不可能再忘记。

1.6.0 (2015-07-21)

  • 将 Cython 的要求升级到 0.22(#214)。

  • 新增加 BytesCollection 类(#215)。

  • 将 GDAL 的 OpenFileGDB 驱动程序添加到已注册的驱动程序(#221)。

  • 将 CLI 命令作为插件实现(#228)。

  • 使用 click.abort 而不是调用 sys.exit,防止意外退出(#236)。

1.5.1 (2015-03-19)

  • 通过修复 MANIFEST.in 恢复测试数据到 sdists(#216)。

1.5.0 (2015-02-02)

  • 最终确定 GeoJSON 特征序列选项(#174)。

  • 修复了不支持特征计数的数据集的读取问题(#190)。

  • 新测试数据集(#188)。

  • 修复了编码错误(#191)。

  • 删除了令人困惑的警告(#195)。

  • 为二进制 wheels 添加数据文件(#196)。

  • 添加对读取数据集时启用驱动程序的控制(#203)。

  • 在 CLI 选项中使用 cligj 来涉及 GeoJSON(#204)。

  • 修复 fio-info –bounds 帮助(#206)。

1.4.8 (2014-11-02)

  • 添加与 Rasterio 相同的 crs_wkt 属性(#182)。

1.4.7 (2014-10-28)

  • 修复从 EPSG 代码设置 CRS 的问题(#149)。

1.4.6 (2014-10-21)

  • 处理 bounds() 中的 3D 坐标(#178)。

1.4.5 (2014-10-18)

  • 将 –bbox 选项添加到 fio-cat(#163)。

  • 如果从 sdists 运行则跳过 geopackage 测试(#167)。

  • 添加 fio-bounds 和 fio-distrib。

  • 恢复 fio-dump 的正常工作。

1.4.4 (2014-10-13)

  • 修复 1.4.3 中引入的意外 GDAL 1.11 依赖项(#164)。

1.4.3 (2014-10-10)

  • 添加对 geopackage 格式的支持(#160)。

  • 在 CLI 中为 –driver 添加 -f 和 –format 别名(#162)。

  • 在 CLI 中添加 –version 选项和 env 命令。

1.4.2 (2014-10-03)

  • 为 fio cat 和 fio collect 添加 –dst-crs 和 –src-crs 选项(#159)。

1.4.1 (2014-09-30)

  • 修复集合的 __getitem__ 中的编码错误(#153)。

1.4.0 (2014-09-22)

  • 添加 fio cat 和 fio collect 命令(#150)。

  • Python 2.6 兼容性回归(#148)。

  • 改进 CRS 支持(#149)。

1.3.0 (2014-09-17)

  • 向 fio inf 添加单个元数据项目访问器(#142)。

  • 将 fio 移到 setuptools 入口点(#142)。

  • 添加 fio dump 和 load 命令(#143)。

  • 删除 fio translate 命令。

1.2.0 (2014-09-02)

  • 在模式中始终显示属性宽度和精度(#123)。

  • 写入特征的 datetime 属性(#125)。

  • 重置 filter() 中的空间过滤(#129)。

  • 接受 datetime.date 对象作为特征属性(#130)。

  • 向集合迭代器添加切片(#132)。

  • 向集合迭代器添加几何对象掩码(#136)。

  • 将源布局更改为与 Shapely 和 Rasterio 匹配(#138)。

1.1.6 (2014-07-23)

  • 实现 Collection __getitem__(#112)。

  • 将 GDAL 最终化留给 DLL 的析构函数(#113)。

  • 添加 Collection keys()、values()、items() 和 __contains__(#114)。

  • CRS 错误修复(#116)。

  • 添加 fio CLI 程序。

1.1.5 (2014-05-21)

  • 添加 cpl_errs 上下文管理器(#108)。

  • 使用 '==' 测试而不是 'is' 检查 NULL(#109)。

  • 在Python 3设置中打开编码为‘utf-8’的辅助文件(#110)。

1.1.4 (2014-04-03)

  • 将模式中的‘long’转换为‘int’(#101)。

  • 仔细映射Python模式到可能被篡改的内部模式(#105)。

  • 允许写入具有None几何特征的特征(#71)。

1.1.3 (2014-03-23)

  • 进入DriverManager上下文时始终注册所有GDAL和OGR驱动程序(#80, #92)。

  • 跳过不支持的字段类型并显示警告(#91)。

  • 允许将OGR配置选项传递给fiona.drivers()(#90, #93)。

  • 添加bounds()函数(#100)。

  • 启用GPX驱动程序。

1.1.2 (2014-02-14)

  • 从dumpgj中删除留下的collection切片(#88)。

1.1.1 (2014-02-02)

  • 添加一个类似于rasterio中的交互式文件检查器。

  • 修复CRS_to_string错误(#83)。

1.1 (2014-01-22)

  • 使用上下文管理器管理驱动程序(#78),这是一个向后兼容但很大的变化。现在Fiona与rasterio兼容,并与osgeo包更好地协作。

1.0.3 (2014-01-21)

  • 修复+init投影的序列化(#69)。

1.0.2 (2013-09-09)

  • 更智能、更好的测试设置(#65, #66, #67)。

  • 将type=’Feature’添加到从集合读取的记录中(#68)。

  • 使用GeoJSON驱动程序时跳过几何验证(#61)。

  • Dumpgj文件描述报告记录属性为一个列表(如dict.items()),而不是字典。

1.0.1 (2013-08-16)

  • 允许写入字段的排序以及在读取时保持字段顺序(#57)。

1.0 (2013-07-30)

  • 添加prop_type()函数。

  • 允许Python 2中使用UTF-8编码的路径(#51)。对于Python 3,路径必须是str,而不是bytes。

  • 从collection.meta中删除编码,它仅是文件创建选项。

  • 支持链接GDAL框架(#54)。

0.16.1 (2013-07-02)

  • 将listlayers、open、prop_width添加到__init__.py:__all__。

  • 每次请求集合迭代器时重置读取OGR层(#49)。

0.16 (2013-06-24)

  • 添加将层写入多图层文件的支持。

  • 添加测试以实现100%的Python代码覆盖率。

0.15 (2013-06-06)

  • 获取和设置数值字段宽度(#42)。

  • 添加对多图层数据源的支持(#17)。

  • 添加对zip和tar虚拟文件系统的支持(#45)。

  • 添加listlayers()函数。

  • 将GeoJSON添加到支持的格式列表中(#47)。

  • 允许通过索引或名称选择层。

0.14 (2013-05-04)

  • 在dumpgj程序中添加添加JSON-LD的选项。

  • 在Collection构造函数中将值与six.string_types进行比较。

  • 将编码添加到Collection.meta。

  • 在README中记录dumpgj。

0.13 (2013-04-30)

  • 单个包中的Python 2/3兼容性。现在支持Python 2.6、2.7和3.3。

0.12.1 (2013-04-16)

  • 修复sdist中README的损坏链接(#39)。

0.12 (2013-04-15)

  • 修复扩展模块损坏安装(#35)。

  • 在相应的Python日志级别记录CPL错误。

  • 在OGR中使用大写字母编码名称,在Python中使用小写字母。

0.11 (2013-04-14)

  • 将.pyx文件Cython化(#34)。

  • 与OGR内部记录数据的重编码一起工作或绕过(#35)。

  • 修复int/float PROJ.4参数序列化中的错误(#35)。

0.10 (2013-03-23)

  • 添加获取str类型属性宽度的函数。

  • 处理3D几何类型的验证和模式表示(#29)。

  • 在NULL几何的情况下返回{‘geometry’: None}(#31)。

0.9.1 (2013-03-07)

  • 在ogrext.so中静音记录器(可覆盖)。

  • 允许用户指定记录字段编码(如Natural Earth shapefiles中的‘Windows-1252’),以帮助OGR无法检测到时。

0.9 (2013-03-06)

  • 在未检查的关闭文件上访问文件元数据(crs、schema、bounds)时,返回None而不抛出异常。

  • 添加一个包含支持的驱动程序及其支持模式的字典。

  • 对于不支持的驱动程序和模式引发ValueError。

  • 从ogrext.pyx中删除断言。

  • 向集合添加validate_record方法。

  • 向fiona.crs添加有用的坐标系函数。

  • 提升fiona.open的使用,而不是fiona.collection。

  • 处理Shapefile的LineString/Polygon混合和多边形(#18)。

  • 允许用户指定shapefile文本字段的宽度(#20)。

0.8 (2012-02-21)

  • 将 .opened 属性替换为 .closed(collection() 的产品始终是打开的)。同时添加一个 __del__ 方法,用于关闭 Collection,但仍然不建议依赖。

  • 添加了 writerecords 方法。

  • 添加了记录缓冲区和改进的 Collection 中的记录计数。

  • 每个 Collection/Session 管理一个迭代器。

  • 添加了只读的界限属性。

0.7 (2012-01-29)

  • 初始的时区无关支持针对日期、时间和 datetime 字段。如果可能,请勿使用这些字段类型。字符串字段中的 RFC 3339 datetime 要好得多。

0.6.2 (2012-01-10)

  • 诊断并设置读模式下 Collection 的驱动程序属性。

  • 如果 Collection 路径不是文件,则失败。多 Collection 工作空间可能是一个 TODO。

0.6.1 (2012-01-06)

  • 处理磁盘 Collection 的未定义 crs 的情况。

0.6 (2012-01-05)

  • 支持基于 Proj4 的 Collection 坐标参考系统。

  • 将 OGR 警告和错误重定向到 Fiona 日志。

  • 在使用 ograpi 函数返回的指针之前断言它们不是 NULL。

0.5 (2011-12-19)

  • 支持读取和写入任何几何类型的 Collection。

  • 用映射(dicts)替换了 Feature 和 Geometry 类。

  • 删除了 Workspace 类。

0.2 (2011-09-16)

  • 将 WorldMill 重命名为 Fiona。

0.1.1 (2008-12-04)

  • 支持没有几何的 Feature。

致谢

Fiona 由以下人员编写

GeoPandas项目(Joris Van den Bossche等人)是1.8.0版本新功能的主要推动者。

没有Frank Warmerdam和其他GDAL/OGR开发者的出色工作,Fiona项目将无法实现。

本工作的部分内容得到了美国国家人文基金会(https://www.neh.gov)提供的(Pleiades)项目的资助。

项目详情


发布历史 发布通知 | RSS订阅

下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

fiona-1.10.1.tar.gz (444.6 kB 查看哈希值)

上传时间

构建分发

fiona-1.10.1-cp313-cp313-win_amd64.whl (24.5 MB 查看哈希值)

上传时间 CPython 3.13 Windows x86-64

fiona-1.10.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.2 MB 查看哈希值)

上传时间 CPython 3.13 manylinux: glibc 2.17+ x86-64

fiona-1.10.1-cp313-cp313-macosx_11_0_arm64.whl (14.7 MB 查看哈希值)

上传时间 CPython 3.13 macOS 11.0+ ARM64

fiona-1.10.1-cp313-cp313-macosx_10_15_x86_64.whl (16.1 MB 查看哈希值)

上传时间 CPython 3.13 macOS 10.15+ x86-64

fiona-1.10.1-cp312-cp312-win_amd64.whl (24.5 MB 查看哈希值)

上传时间 CPython 3.12 Windows x86-64

fiona-1.10.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.2 MB 查看哈希值)

上传时间 CPython 3.12 manylinux: glibc 2.17+ x86-64

fiona-1.10.1-cp312-cp312-macosx_11_0_arm64.whl (14.8 MB 查看哈希值)

上传时间 CPython 3.12 macOS 11.0+ ARM64

fiona-1.10.1-cp312-cp312-macosx_10_15_x86_64.whl (16.1 MB 查看哈希值)

上传时间 CPython 3.12 macOS 10.15+ x86-64

fiona-1.10.1-cp311-cp311-win_amd64.whl (24.5 MB 查看哈希值)

上传时间 CPython 3.11 Windows x86-64

fiona-1.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.3 MB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.17+ x86-64

fiona-1.10.1-cp311-cp311-macosx_11_0_arm64.whl (14.8 MB 查看哈希值)

上传时间 CPython 3.11 macOS 11.0+ ARM64

fiona-1.10.1-cp311-cp311-macosx_10_15_x86_64.whl (16.1 MB 查看哈希值)

上传时间 CPython 3.11 macOS 10.15+ x86-64

fiona-1.10.1-cp310-cp310-win_amd64.whl (24.5 MB 查看哈希值)

上传时间 CPython 3.10 Windows x86-64

fiona-1.10.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.3 MB 查看哈希值)

上传时间 CPython 3.10 manylinux: glibc 2.17+ x86-64

fiona-1.10.1-cp310-cp310-macosx_11_0_arm64.whl (14.8 MB 查看哈希值)

上传时间 CPython 3.10 macOS 11.0+ ARM64

fiona-1.10.1-cp310-cp310-macosx_10_15_x86_64.whl (16.1 MB 查看哈希值)

上传时间 CPython 3.10 macOS 10.15+ x86-64

fiona-1.10.1-cp39-cp39-win_amd64.whl (24.5 MB 查看哈希值)

上传时间 CPython 3.9 Windows x86-64

fiona-1.10.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.3 MB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.17+ x86-64

fiona-1.10.1-cp39-cp39-macosx_11_0_arm64.whl (14.8 MB 查看哈希值)

上传于 CPython 3.9 macOS 11.0+ ARM64

fiona-1.10.1-cp39-cp39-macosx_10_15_x86_64.whl (16.1 MB 查看哈希值)

上传于 CPython 3.9 macOS 10.15+ x86-64

fiona-1.10.1-cp38-cp38-win_amd64.whl (24.5 MB 查看哈希值)

上传于 CPython 3.8 Windows x86-64

fiona-1.10.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.3 MB 查看哈希值)

上传于 CPython 3.8 manylinux: glibc 2.17+ x86-64

fiona-1.10.1-cp38-cp38-macosx_11_0_arm64.whl (14.7 MB 查看哈希值)

上传于 CPython 3.8 macOS 11.0+ ARM64

fiona-1.10.1-cp38-cp38-macosx_10_15_x86_64.whl (16.1 MB 查看哈希值)

上传于 CPython 3.8 macOS 10.15+ x86-64