CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/pypi-fiona

Fiona reads and writes spatial data files

88

1.10x
Overview
Eval results
Files

environment.mddocs/

Environment Management

GDAL environment configuration, credential management for cloud storage access, and driver management for controlling which data formats are available.

Capabilities

Environment Context Manager

class Env:
    def __init__(
        self,
        session=None,
        aws_unsigned=False,
        profile_name=None,
        session_options=None,
        **options
    ):
        """
        Context manager for GDAL and AWS configuration.
        
        Parameters:
        - session: Session object for credential management
        - aws_unsigned: bool, use unsigned requests for public data
        - profile_name: str, AWS profile name
        - session_options: dict, session configuration options
        - options: dict, additional GDAL configuration options
        """
    
    @classmethod
    def from_defaults(cls, *args, **kwargs):
        """Create Env with default configuration options."""
    
    @classmethod
    def default_options(cls):
        """Return default configuration options."""
    
    def credentialize(self):
        """Configure GDAL with credentials."""
    
    def drivers(self):
        """Return mapping of registered drivers."""

Usage Examples

from fiona.env import Env
import fiona

# Basic environment context
with Env():
    with fiona.open('data.shp', 'r') as collection:
        for feature in collection:
            print(feature)

# AWS S3 access with credentials
with Env(aws_unsigned=False, profile_name='default'):
    with fiona.open('/vsis3/bucket/data.geojson', 'r') as collection:
        print(f"Features: {len(collection)}")

# Custom GDAL options
with Env(GDAL_DISABLE_READDIR_ON_OPEN='EMPTY_DIR'):
    with fiona.open('large_directory/data.shp', 'r') as collection:
        # Faster opening for directories with many files
        pass

Environment Decorators

def ensure_env(f):
    """Decorator ensuring GDAL environment exists."""

def ensure_env_with_credentials(f):
    """Decorator ensuring environment with credentials."""

Install with Tessl CLI

npx tessl i tessl/pypi-fiona

docs

cli.md

collection-management.md

crs.md

data-model.md

environment.md

file-io.md

index.md

schema.md

transforms.md

utilities.md

tile.json