xcube-gedidb
The xcube-gedidb Python package provides an
xcube data store
that enables access to datasets hosted by the
Global Ecosystem Dynamics Investigation (GEDI).
The data store is called "gedidb" and implemented as
an xcube plugin.
It uses the gedidb package as a dependency, which is licensed under the European Union Public License v1.2.
Setup
Installing the xcube-gedidb plugin from the repository
To install xcube-gedidb directly from the git repository, clone the repository,
cd into xcube-gedidb as follows and follow the steps below:
git clone https://github.com/xcube-dev/xcube-gedidb.git
cd xcube-gedidb
conda env create -f environment.yml
conda activate xcube-gedidb
pip install .
This sets up a new conda environment, installs all the dependencies required
for xcube-gedidb, and then installs xcube-gedidb directly from the repository
into the environment.
Installing the xcube-gedidb plugin from the PyPi
This method assumes that you have an existing environment created from the
environment.yml,
and you want to install xcube-gedidb into it.
With the existing environment activated, execute this command:
pip install xcube-gedi
If xcube and any other necessary dependencies are not already installed, they will be installed automatically.
Testing
To run the unit test suite:
pytest
Some notes on the strategy of unit-testing for some tests
The unit test suite
uses pytest-recording to mock
https requests via the Python
library requests for some of the unit tests. During development an actual HTTP
request is performed and the
responses are saved in cassettes/*.yaml files. During testing, only the
cassettes/*.yaml files are used without an actual HTTP request. During
development, to save the responses to cassettes/*.yaml, run:
pytest -v -s --record-mode new_episodes
Note that --record-mode new_episodes overwrites all cassettes. If one only wants to write cassettes which are not saved already, --record-mode once can be used. pytest-recording supports all records modes given by [VCR.py](https://vcrpy.readthedocs.io/en/latest/usage.html#record-modes. After recording the cassettes, testing can be then performed as usual.
Citation:
This project uses the gediDB API (Besnard et al., 2025) as a dependency.
Besnard, S., Dombrowski, F., & Holcomb, A. (2025). gediDB (2025.2.0). Zenodo. https://doi.org/10.5281/zenodo.13885229
Release files for xcube-gedidb 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| xcube_gedidb-0.1.1.tar.gz | 10.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| xcube_gedidb-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 23.5 kB
Release files / xcube_gedidb-0.1.1.tar.gz
| Download URL | xcube_gedidb-0.1.1.tar.gz |
|---|---|
| Size | 10.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
10bf85e2bd6aa5b55f11e4a90287b1aedf1fda28eff9d6cb7f678e7f1aaae597
|
|
BLAKE2b-256 checksum How to use checksums |
8ac539562b7add07f27c36de62c775bef3e5a844d9e80628ff01e04a8f365b60
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.9.23
|
Release files / xcube_gedidb-0.1.1-py3-none-any.whl
| Download URL | xcube_gedidb-0.1.1-py3-none-any.whl |
|---|---|
| Size | 12.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7862de8f93bb95b6d94ed78433946c8ad1198fdd89f01cf90b348cbcd0832445
|
|
BLAKE2b-256 checksum How to use checksums |
400b34f9fd36ab090c9629ceda53a04146a0321b68c5d88790567242c3055ebe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.9.23
|