Skip to content

Commit

Permalink
Merge branch 'develop'
Browse files Browse the repository at this point in the history
  • Loading branch information
sbrunato committed Nov 6, 2024
2 parents ba64c65 + 80547b5 commit 4e70430
Show file tree
Hide file tree
Showing 101 changed files with 3,817 additions and 2,772 deletions.
21 changes: 9 additions & 12 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,15 @@ jobs:
with:
# Get history and tags for SCM versioning to work
fetch-depth: 0
- name: Set up Python 3.8
uses: actions/setup-python@v5
- name: Install the latest version of uv with cache enabled
uses: astral-sh/setup-uv@v3
with:
python-version: "3.8"

version: "latest"
enable-cache: true
cache-dependency-glob: ""
- name: Check that the current version isn't already on PyPi
run: |
if [ "$(./get_pypi_latest_version.sh)" != "$(python setup.py --version)" ]
if [ "$(./get_pypi_latest_version.sh)" != "$(git describe --tags)" ]
then
echo "Current version is not on PyPI, proceed with bulding"
else
Expand All @@ -33,15 +34,11 @@ jobs:
fi
- name: Check long description is OK for PyPI with tox
run: |
python -m pip install --upgrade pip
python -m pip install tox sphinx
tox -e pypi
run: uvx --with tox-uv --with sphinx tox -e pypi

- name: Build a binary wheel and a source tarball
run: |
python -m pip install build
python -m build --sdist --wheel
run: uvx --from build pyproject-build --sdist --wheel

- name: Publish distribution to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
Expand Down
35 changes: 14 additions & 21 deletions .github/workflows/fetch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,30 +17,23 @@ jobs:
with:
# Get history and tags for SCM versioning to work
fetch-depth: 0
- name: Set up Python 3.8
uses: actions/setup-python@v5
- name: Install the latest version of uv with cache enabled
uses: astral-sh/setup-uv@v3
with:
python-version: "3.8"
- name: Update pip
run: python -m pip install --upgrade pip
- name: Get pip cache dir
id: pip-cache
shell: bash
run: echo "DIR=$(pip cache dir)" >> $GITHUB_OUTPUT
- name: Get current week number
id: get-week
shell: bash
run: echo "WEEK=$(date +'%V')" >> $GITHUB_OUTPUT
- name: Pip cache
uses: actions/cache@v4
with:
path: ${{ steps.pip-cache.outputs.DIR }}
key: ${{ runner.os }}-pip-${{ steps.get-week.outputs.WEEK }}-${{ hashFiles('setup.cfg') }}
- name: Install eodag
version: "latest"
enable-cache: true
cache-dependency-glob: ""
- name: Install eodag in venv
run: |
python -m pip install ".[all-providers]"
uv venv
source .venv/bin/activate
uv pip install ".[all-providers]"
- name: Fetch and update external product types reference
env:
EODAG__WEKEO_MAIN__AUTH__CREDENTIALS__USERNAME: ${{ secrets.EODAG__WEKEO_MAIN__AUTH__CREDENTIALS__USERNAME }}
EODAG__WEKEO_MAIN__AUTH__CREDENTIALS__PASSWORD: ${{ secrets.EODAG__WEKEO_MAIN__AUTH__CREDENTIALS__PASSWORD }}
run: |
source .venv/bin/activate
export JSON_OUTPUT_FILE="eodag/resources/ext_product_types.json"
export JSON_REF_FILE=$(python -c "import eodag; print(eodag.config.EXT_PRODUCT_TYPES_CONF_URI)")
eodag -vvv discover --storage ${JSON_OUTPUT_FILE}
Expand All @@ -58,7 +51,7 @@ jobs:
echo "commit [${COMMIT_SHA}](${COMMIT_URL})" >> $GITHUB_STEP_SUMMARY
echo '```diff' >> $GITHUB_STEP_SUMMARY
git show --name-only --format=tformat: >> $GITHUB_STEP_SUMMARY
(diff <(curl ${JSON_REF_FILE}) <(cat ${JSON_OUTPUT_FILE}) || true) >> $GITHUB_STEP_SUMMARY
(diff <(curl ${JSON_REF_FILE} | jq) <(cat ${JSON_OUTPUT_FILE} | jq) || true) >> $GITHUB_STEP_SUMMARY
echo '```' >> $GITHUB_STEP_SUMMARY
# truncated PR body (too long causes error)
full_update_summary=$(cat $GITHUB_STEP_SUMMARY)
Expand Down
120 changes: 29 additions & 91 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,66 +19,36 @@ jobs:
with:
# Get history and tags for SCM versioning to work
fetch-depth: 0
- name: Set up Python 3.8
uses: actions/setup-python@v5
- name: Install the latest version of uv with cache enabled
uses: astral-sh/setup-uv@v3
with:
python-version: "3.8"
- name: Update pip
run: python -m pip install --upgrade pip
- name: Get pip cache dir
id: pip-cache
shell: bash
run: echo "DIR=$(pip cache dir)" >> $GITHUB_OUTPUT
- name: Get current week number
id: get-week
shell: bash
run: echo "WEEK=$(date +'%V')" >> $GITHUB_OUTPUT
- name: Pip cache
uses: actions/cache@v4
with:
path: ${{ steps.pip-cache.outputs.DIR }}
key: ${{ runner.os }}-pip-${{ steps.get-week.outputs.WEEK }}-${{ hashFiles('setup.cfg') }}
- name: Install tox
run: python -m pip install tox
version: "latest"
enable-cache: true
cache-dependency-glob: ""
- name: Run linters with tox
run: python -m tox -e linters
run: uvx --python 3.9 --with tox-uv tox -e linters

tests:
name: Test it!
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: [3.8, "3.12"]
python-version: [3.9, "3.13"]
os: [ubuntu-latest, windows-latest]
steps:
- name: Checkout the repo
uses: actions/checkout@v4
with:
# Get history and tags for SCM versioning to work
fetch-depth: 0
- name: Set up Python ${{ matrix.python-version }} on ${{ matrix.os }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Update pip
run: python -m pip install --upgrade pip
- name: Get pip cache dir
id: pip-cache
shell: bash
run: echo "DIR=$(pip cache dir)" >> $GITHUB_OUTPUT
- name: Get current week number
id: get-week
shell: bash
run: echo "WEEK=$(date +'%V')" >> $GITHUB_OUTPUT
- name: Pip cache
uses: actions/cache@v4
- name: Install the latest version of uv with cache enabled
uses: astral-sh/setup-uv@v3
with:
path: ${{ steps.pip-cache.outputs.DIR }}
key: ${{ runner.os }}-pip-${{ matrix.python-version }}-${{ steps.get-week.outputs.WEEK }}-${{ hashFiles('setup.cfg') }}
- name: Install tox and tox-gh-actions
run: python -m pip install tox tox-gh-actions
version: "latest"
enable-cache: true
cache-dependency-glob: ""
- name: Test with tox
run: tox
run: uvx --python ${{ matrix.python-version }} --with tox-uv --with tox-gh-actions tox
- name: Upload Unit Test Results
if: always()
uses: actions/upload-artifact@v4
Expand Down Expand Up @@ -110,7 +80,7 @@ jobs:
uses: insightsengineering/coverage-action@v2
with:
# Path to the Cobertura XML report.
path: artifacts/unit-test-results-python3.12-ubuntu-latest/coverage.xml
path: artifacts/unit-test-results-python3.13-ubuntu-latest/coverage.xml
# Minimum total coverage, if you want to the
# workflow to enforce it as a standard.
# This has no effect if the `fail` arg is set to `false`.
Expand Down Expand Up @@ -140,7 +110,7 @@ jobs:
uses: insightsengineering/coverage-action@v2
with:
# Path to the Cobertura XML report.
path: artifacts/unit-test-results-python3.12-windows-latest/coverage.xml
path: artifacts/unit-test-results-python3.13-windows-latest/coverage.xml
# Minimum total coverage, if you want to the
# workflow to enforce it as a standard.
# This has no effect if the `fail` arg is set to `false`.
Expand Down Expand Up @@ -175,34 +145,18 @@ jobs:
with:
# Get history and tags for SCM versioning to work
fetch-depth: 0
- name: Set up Python 3.8
uses: actions/setup-python@v5
- name: Install the latest version of uv with cache enabled
uses: astral-sh/setup-uv@v3
with:
python-version: "3.8"
- name: Update pip
run: python -m pip install --upgrade pip
- name: Get pip cache dir
id: pip-cache
shell: bash
run: echo "DIR=$(pip cache dir)" >> $GITHUB_OUTPUT
- name: Get current week number
id: get-week
shell: bash
run: echo "WEEK=$(date +'%V')" >> $GITHUB_OUTPUT
- name: Pip cache
uses: actions/cache@v4
with:
path: ${{ steps.pip-cache.outputs.DIR }}
key: ${{ runner.os }}-pip-${{ steps.get-week.outputs.WEEK }}-${{ hashFiles('setup.cfg') }}
version: "latest"
enable-cache: true
cache-dependency-glob: ""
- name: Install pandoc
run: |
curl -s https://api.github.com/repos/jgm/pandoc/releases/latest | grep -o "https.*amd64.deb" | wget -O pandoc.deb -qi -
sudo dpkg -i pandoc.deb && rm pandoc.deb
- name: Install tox
run: |
python -m pip install tox
- name: Testing with tox
run: python -m tox -e docs
run: uvx --with tox-uv tox -e docs

check-pypi:
name: Long description check for PyPI
Expand All @@ -213,27 +167,11 @@ jobs:
with:
# Get history and tags for SCM versioning to work
fetch-depth: 0
- name: Set up Python 3.8
uses: actions/setup-python@v5
with:
python-version: "3.8"
- name: Update pip
run: python -m pip install --upgrade pip
- name: Get pip cache dir
id: pip-cache
shell: bash
run: echo "DIR=$(pip cache dir)" >> $GITHUB_OUTPUT
- name: Get current week number
id: get-week
shell: bash
run: echo "WEEK=$(date +'%V')" >> $GITHUB_OUTPUT
- name: Pip cache
uses: actions/cache@v4
with:
path: ${{ steps.pip-cache.outputs.DIR }}
key: ${{ runner.os }}-pip-${{ steps.get-week.outputs.WEEK }}-${{ hashFiles('setup.cfg') }}
- name: Install tox and sphinx (to have rst2html.py utility available)
run: |
python -m pip install tox sphinx
- name: Testing with tox
run: python -m tox -e pypi
- name: Install the latest version of uv with cache enabled
uses: astral-sh/setup-uv@v3
with:
version: "latest"
enable-cache: true
cache-dependency-glob: ""
- name: Testing with tox and sphinx (to have rst2html.py utility available)
run: uvx --with tox-uv --with sphinx tox -e pypi
42 changes: 40 additions & 2 deletions CHANGES.rst
Original file line number Diff line number Diff line change
@@ -1,8 +1,46 @@
Release history
===============

3.0.0 (2024-10-10)
------------------
v3.0.1 (2024-11-06)
-------------------

Providers and product types updates
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

* ``geodes`` as new provider (:pull:`1357`)(:pull:`1363`)
* ``cop_ewds`` as new provider (:pull:`1331`)
* Removed ``astraea_eod`` provider (:pull:`1383`)
* Fixed ``S2_MSI_L1C`` search-by-id for ``earth_search`` (:pull:`1053`)
* MSG product types added (:pull:`1348`)
* Fixed order for some ``dedl`` product-types (:pull:`1358`)

Plugins new features and fixes
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

* Authenticate only when needed in :class:`~eodag.plugins.download.http.HTTPDownload` (:pull:`1370`)
* Various fixes for ``cop_marine`` (:pull:`1336`)(:pull:`1364`)
* OpenID token expiration fix and ``oidc_config_url`` usage (:pull:`1346`)
* Concurrent requests for ``wekeo_cmems`` product-types fetch (:pull:`1374`)
* Error is raised when :class:`~eodag.plugins.download.http.HTTPDownload` order fails (:pull:`1338`)

Miscellaneous
^^^^^^^^^^^^^
* **[build]** Add ``python3.13`` and drop ``python3.8`` support (:pull:`1344`)
* **[docs]** `Plugins <https://eodag.readthedocs.io/en/latest/plugins.html>`_ and `utils\
<https://eodag.readthedocs.io/en/latest/api_reference/utils.html>`_ documention update (:pull:`1297`)
* **[docs]** `conda optional dependencies\
<https://eodag.readthedocs.io/en/latest/getting_started_guide/install.html#conda>`_ handling (:pull:`1343`)
* **[docs]** Fixed ``auxdata`` reference in tutorials (:pull:`1372`, thanks `@emmanuel-ferdman\
<https://github.com/emmanuel-ferdman>`_)
* **[ci]** Tests speedup using ``uv`` and ``tox-uv`` (:pull:`1347`)
* **[ci]** ``wekeo`` product types included in external product types reference (:pull:`1377`)
* Various minor fixes and improvements (:pull:`1298`)(:pull:`1335`)(:pull:`1340`)(:pull:`1341`)(:pull:`1351`)
(:pull:`1367`)(:pull:`1365`)(:pull:`1368`)(:pull:`1379`)
* External product types reference updates (:pull:`1342`)(:pull:`1356`)(:pull:`1359`)(:pull:`1360`)(:pull:`1362`)
(:pull:`1366`)(:pull:`1369`)(:pull:`1373`)(:pull:`1375`)(:pull:`1378`)(:pull:`1381`)(:pull:`1384`)

v3.0.0 (2024-10-10)
-------------------

|:warning:| Breaking changes since last stable (`v2.12.1 <changelog.rst#v2-12-1-2024-03-05>`_)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.rst
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ To run the entire tests (units, integration and end-to-end):
you, please `install <https://pandoc.org/installing.html>`_ pandoc and try
again.

* eodag is tested against python versions 3.8, 3.9, 3.10, 3.11 and 3.12. Ensure you have
* eodag is tested against python versions 3.9, 3.10, 3.11, 3.12 and 3.13. Ensure you have
these versions installed before you run tox. You can use
`pyenv <https://github.com/pyenv/pyenv>`_ to manage many different versions
of python
Expand Down
2 changes: 1 addition & 1 deletion README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,7 @@ An eodag instance can be exposed through a STAC compliant REST api from the comm

.. code-block:: bash
docker run -p 5000:5000 --rm csspace/eodag-server:3.0.0b3
docker run -p 5000:5000 --rm csspace/eodag-server:3.0.1
You can also browse over your STAC API server using `STAC Browser <https://github.com/radiantearth/stac-browser>`_.
Simply run:
Expand Down
4 changes: 2 additions & 2 deletions charts/eodag-server/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
apiVersion: v2
appVersion: 3.0.0b3
appVersion: 3.0.1
dependencies:
- name: common
repository: oci://registry-1.docker.io/bitnamicharts
Expand All @@ -15,4 +15,4 @@ name: eodag-server
sources:
- https://github.com/CS-SI/eodag
type: application
version: 3.0.0b3
version: 3.0.1
Loading

0 comments on commit 4e70430

Please sign in to comment.