Skip to main content

Geobane

PyPI version Python versions License Downloads

See CHANGELOG.md for release history.

Adversarial test-data generator for geospatial systems.

Geobane generates the specific edge cases that silently break geospatial code, not just random coordinates, but the exact failure patterns that cause real bugs: coordinate order confusion, antimeridian crossings, degenerate geometry, CRS mismatches, and floating-point precision issues.

Install

pip install geobane

Why

Most geospatial bugs don't crash, they silently produce wrong results. A swapped lat/lng pair still looks like a valid coordinate. A polygon crossing the date line still parses fine, right up until a bounding-box calculation treats it as spanning the entire globe. Geobane exists to throw these known failure patterns at your code before production does.

Usage

from geobane import coordinate_order, antimeridian, degenerate
from geobane import crs_mismatch, precision

# The single most common real-world geospatial bug
result = coordinate_order.swapped_pair(lat=51.5, lng=-0.12)
print(result["swapped"])  # (-0.12, 51.5) - fed to a system expecting (lat, lng)

# A polygon crossing the antimeridian - breaks naive bounding-box math
tricky_polygon = antimeridian.crossing_polygon()

# A self-intersecting "bowtie" polygon
bad_shape = degenerate.self_intersecting_bowtie()

# Web Mercator coordinates mislabeled as WGS84
wrong_crs = crs_mismatch.mercator_fed_as_wgs84()

# NaN/Infinity injected into a coordinate
broken = precision.nan_infinity_injection()

Every generator returns an explanation field describing the real-world bug it simulates, useful for understanding why the edge case matters, not just reproducing it.

Categories

Module Covers
coordinate_order lat/lng axis swap bugs
antimeridian date-line crossing polygons, linestrings, bboxes
degenerate zero-area, self-intersecting, unclosed geometry
crs_mismatch WGS84/Web Mercator confusion, missing CRS metadata
precision float32 boundaries, NaN/Infinity, over-precision

See TAXONOMY.md for the full edge-case reference, including planned categories for future versions.

Contributing

Found a geospatial bug pattern that isn't covered? Open an issue or PR, the taxonomy doc is the place to propose new categories.

License

MIT

Release files for geobane 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for geobane 0.1.4
File Size Uploaded
geobane-0.1.4.tar.gz 12.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for geobane 0.1.4
File Interpreter ABI Platform
geobane-0.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 25.1 kB

Release files / geobane-0.1.4.tar.gz

Download URL geobane-0.1.4.tar.gz
Size 12.8 kB
Tags Source
SHA-256 checksum
How to use checksums
8acceefc4bd76f05622514b5b410baa987f7361cdd0816297ee625e1a500ba2b
BLAKE2b-256 checksum
How to use checksums
d1565c79e610139b7ed8bc2c58b4ed415c8a92eb3fb66f013554835afb144701
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.6

Release files / geobane-0.1.4-py3-none-any.whl

Download URL geobane-0.1.4-py3-none-any.whl
Size 12.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
509d5d3767009c4c95281b976cd3a898e14178afad4f348b9ce473101fa363ef
BLAKE2b-256 checksum
How to use checksums
b9f8937d4b480479d62284b61bd7b9deb61ca9d0964e55fe60276f0d1abbb22e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.6

Release history Release notifications | RSS feed

This release

0.1.4 This release

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page