Skip to content

ODC EP 06 Extract Geometry Utilities into a Separate Package

Rob Woodcock edited this page Oct 11, 2021 · 8 revisions

ODC-EP 06 - Extract Geometry Utilities into a Separate Package

Overview

Extract geometry-related utilities into a separate package under opendatacube organization.

Proposed By

Kirill Kouzoubov

State

  • Under Discussion
  • In Progress
  • Completed
  • Rejected
  • Deferred

Motivation

It would be useful to have access to .geobox property without needing to pull in all the database libraries needed by datacube. Packages like odc-algo and odc-stac currently depend on datacube primarily because they use Geometry classes and .geobox property. But these libraries can be useful in scenarios where there is no datacube database.

Additionally I believe this would allow for more rapid experimentation with data loading pipelines. Currently database querying and data loading are highly coupled via dc.load(..) interface. Collection management and metadata search is a separate concern from data loading, moving Geometry functionality into a separate package is a first step towards separating those concerns.

Proposal

  • Copy utils/geometry/* and related test/docs into a separate repo (name odc-geo?)
    • Use git-filter-repo to keep all the history and original authorship
    • Setup packaging for the new library, including conda-forge
    • Setup CI/CD
    • Setup documentation on readthedocs
  • Replace code in datacube-core with calls to odc-geo library
  • Provide backward compatibility shims in datacube core

Feedback

Voting

Approved: Paul Haesler, Imam Alam, Robert Woodcock

Enhancement Proposal Team

  • Kirill Kouzoubov
  • Alan D. Snow

Links

Clone this wiki locally