Skip to main content

gdal-utils: An extension library for GDAL - Geospatial Data Abstraction Library

Project description

This gdal-utils Python package is a sub-set of the GDAL Osgeo Python package.

If you’ve installed the GDAL package you have these utils. However you may wish to get a newer version of the utilities without changing GDAL, that’s what this package is for.

For using and developing the utils please refer to the osgeo documentation and to the GDAL API Tutorial.

We don’t systematically test the utils against a different versions of gdal. Versioning of GDAL and gdal-utils are independent from each other, today’s gdal-utils v3.3 works with GDAL v3.4 but it might not with v3.2. We recommend upgrading to the latest versions of each as general practice. See ‘Packaging’ below for how to test compatibility.

Dependencies

  • gdal (the osgeo package)

  • numpy (1.0.0 or greater) and header files (numpy-devel) (not explicitly required, but many examples and utilities will not work without it)

Installation

gdal-utils can be installed from pypi.org:

$ python -m pip install gdal-utils

After install the utilities are in PYTHYONHOME\Scripts and can be invoked like regular programs, gdal_edit instead of gdal_edit.py or python path/to/gdal_edit.py for example.

Packaging

Starting March 2022 installing gdal-utils with pip will use Setuptools’ _console_scripts_, which turn the scripts into native platform executables that call the script using the appropriate platform interpreter. This means you no longer need to something similar as a post-install step. If this causes problems with your distribution please file an issue on Github.

Recipe for testing gdal-utils compatibility against your installed GDAL binaries:

# Get installed GDAL version
export _GDALVER=`gdal-config --version``

# verify python osgeo is present
python -c "from osgeo import gdal;print(f'Python Osgeo version: {gdal.__version__}')"

git clone https://github.com/OSGeo/gdal.git --depth=50
git remote set-branches origin "*"
git fetch -v --depth=50

# Install current version of gdal-utils
cd swig/python/gdal-utils
pip install .
# OR, to use published PyPi.org version:
# pip install gdal-utils

# set source code tree to match binary gdal version
git checkout v$_GDALVER

cd gdal/autotest
python install -r requirements.txt
pytest ./pyscripts

Coding best practices

Use existing scripts for style guidelines, generally newer ones are will be more pythonic than old.

Passes _flake8_ lint test.

When called without arguments script should return a message prefixed ‘Usage: ` and use return code 2.:

» gdal_edit
Usage: gdal_edit [--help-general] [-ro] [-a_srs <srs_def>]
    ...
    [-unsetmd] [-oo <NAME>=<VALUE>]... [-mo <META-TAG>=<VALUE>]... <datasetname>

Edit in place various information of an existing GDAL dataset.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

gdal_utils-3.8.3.0-py3-none-any.whl (337.9 kB view details)

Uploaded Python 3

File details

Details for the file gdal_utils-3.8.3.0-py3-none-any.whl.

File metadata

  • Download URL: gdal_utils-3.8.3.0-py3-none-any.whl
  • Upload date:
  • Size: 337.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.8.1 requests/2.25.1 setuptools/69.0.2 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10

File hashes

Hashes for gdal_utils-3.8.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9d40583614f6be705790147565080b33c90f8ac05b250e55059792f2d079037b
MD5 778185f1acb7d95606a5bed2a39de822
BLAKE2b-256 f52c043903cb8cbf2d671f13bdb4af35928573e39fe19799b4b08defbced81d8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page