Skip to content

Commit a65899e

Browse files
authored
Release version 1.4.2, Merge pull request #672 from sentinel-hub/develop
Release version 1.4.2
2 parents 9e6cd92 + 7706787 commit a65899e

File tree

142 files changed

+2504
-2640
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

142 files changed

+2504
-2640
lines changed

.flake8

Lines changed: 0 additions & 10 deletions
This file was deleted.

.github/workflows/ci_action.yml

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,12 @@ on:
66
branches:
77
- "master"
88
- "develop"
9-
schedule:
10-
# Schedule events are triggered by whoever last changed the cron schedule
11-
- cron: "5 0 * * *"
9+
workflow_call:
10+
11+
concurrency:
12+
# This will cancel outdated runs on the same pull-request, but not runs for other triggers
13+
group: ${{ github.head_ref || github.run_id }}
14+
cancel-in-progress: true
1215

1316
env:
1417
# The only way to simulate if-else statement
@@ -19,46 +22,45 @@ jobs:
1922
runs-on: ubuntu-latest
2023
steps:
2124
- name: Checkout branch
22-
uses: actions/checkout@v2
25+
uses: actions/checkout@v3
2326
with:
2427
ref: ${{ env.CHECKOUT_BRANCH }}
2528

2629
- name: Setup Python
27-
uses: actions/setup-python@v2
30+
uses: actions/setup-python@v4
2831
with:
2932
python-version: "3.8"
30-
architecture: x64
31-
32-
- name: Prepare pre-commit validators
33-
run: |
34-
pip install pre-commit
3533

36-
- name: Check code compliance with pre-commit validators
37-
run: pre-commit run --all-files
34+
- uses: pre-commit/[email protected]
35+
with:
36+
extra_args: --all-files --verbose
3837

3938
check-code-pylint-and-mypy:
4039
runs-on: ubuntu-latest
4140
steps:
4241
- name: Checkout branch
43-
uses: actions/checkout@v2
42+
uses: actions/checkout@v3
4443
with:
4544
ref: ${{ env.CHECKOUT_BRANCH }}
4645

4746
- name: Setup Python
48-
uses: actions/setup-python@v2
47+
uses: actions/setup-python@v4
4948
with:
5049
python-version: "3.8"
51-
architecture: x64
50+
# cache: pip # uncomment when all requirements are in `pyproject.toml`
51+
# caching the entire environment is faster when cache exists but slower for cache creation
5252

5353
- name: Install packages
5454
run: |
55-
pip install -r requirements-dev.txt --upgrade
55+
pip install -r requirements-dev.txt --upgrade --upgrade-strategy eager
5656
python install_all.py
57+
pip install -r ml_tools/requirements-tdigest.txt
5758
5859
- name: Run pylint
5960
run: make pylint
6061

6162
- name: Run mypy
63+
if: success() || failure()
6264
run: |
6365
mypy \
6466
core/eolearn/core \
@@ -77,28 +79,27 @@ jobs:
7779
python-version:
7880
- "3.9"
7981
- "3.10"
82+
- "3.11"
8083
include:
8184
# A flag marks whether full or partial tests should be run
8285
# We don't run integration tests on pull requests from outside repos, because they don't have secrets
8386
- python-version: "3.8"
8487
full_test_suite: ${{ github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository }}
8588
steps:
8689
- name: Checkout branch
87-
uses: actions/checkout@v2
90+
uses: actions/checkout@v3
8891
with:
8992
ref: ${{ env.CHECKOUT_BRANCH }}
9093

9194
- name: Setup Python
92-
uses: actions/setup-python@v2
95+
uses: actions/setup-python@v4
9396
with:
9497
python-version: ${{ matrix.python-version }}
95-
architecture: x64
98+
# cache: pip # uncomment when all requirements are in `pyproject.toml`
9699

97100
- name: Install packages
98101
run: |
99-
sudo apt-get update
100-
sudo apt-get install -y build-essential libgdal-dev graphviz proj-bin gcc libproj-dev libspatialindex-dev
101-
pip install -r requirements-dev.txt --upgrade
102+
pip install -r requirements-dev.txt --upgrade --upgrade-strategy eager
102103
python install_all.py -e
103104
104105
- name: Run full tests and code coverage
@@ -111,8 +112,7 @@ jobs:
111112
112113
- name: Run reduced tests
113114
if: ${{ !matrix.full_test_suite }}
114-
run: |
115-
pytest -m "not sh_integration"
115+
run: pytest -m "not sh_integration"
116116

117117
- name: Upload code coverage
118118
if: ${{ matrix.full_test_suite && github.event_name == 'push' }}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
name: scheduled build caller
2+
3+
on:
4+
schedule:
5+
# Schedule events are triggered by whoever last changed the cron schedule
6+
- cron: "0 0 * * *"
7+
8+
jobs:
9+
call-workflow:
10+
uses: sentinel-hub/eo-learn/.github/workflows/ci_action.yml@develop
11+
secrets: inherit

.pre-commit-config.yaml

Lines changed: 6 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -13,41 +13,18 @@ repos:
1313
- id: debug-statements
1414

1515
- repo: https://github.com/psf/black
16-
rev: 23.1.0
16+
rev: 23.3.0
1717
hooks:
1818
- id: black
1919
language_version: python3
2020

21-
- repo: https://github.com/pycqa/isort
22-
rev: 5.12.0
21+
- repo: https://github.com/charliermarsh/ruff-pre-commit
22+
rev: "v0.0.269"
2323
hooks:
24-
- id: isort
25-
name: isort (python)
26-
27-
- repo: https://github.com/PyCQA/autoflake
28-
rev: v2.0.1
29-
hooks:
30-
- id: autoflake
31-
args:
32-
[
33-
--remove-all-unused-imports,
34-
--in-place,
35-
--ignore-init-module-imports,
36-
]
37-
38-
- repo: https://github.com/pycqa/flake8
39-
rev: 6.0.0
40-
hooks:
41-
- id: flake8
42-
additional_dependencies:
43-
- flake8-bugbear==23.2.13
44-
- flake8-comprehensions==3.10.1
45-
- flake8-simplify==0.19.3
46-
- flake8-typing-imports==1.14.0
24+
- id: ruff
4725

4826
- repo: https://github.com/nbQA-dev/nbQA
49-
rev: 1.6.3
27+
rev: 1.7.0
5028
hooks:
5129
- id: nbqa-black
52-
- id: nbqa-isort
53-
- id: nbqa-flake8
30+
- id: nbqa-ruff

.zenodo.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,7 @@
141141
},
142142
{
143143
"name": "Colin Moldenhauer",
144+
"affiliation": "Technical University of Munich",
144145
"type": "Other"
145146
},
146147
{

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,18 @@
1+
## [Version 1.4.2] - 2023-3-14
2+
3+
- Introduced support for Python 3.11.
4+
- Removed support for Python 3.7.
5+
- Added T-Digest `EOTask` in the scope of the Global Earth Monitor Project, contributed by @meengel.
6+
- Used evalscript generation utility from `sentinelhub-py` in SH related `EOTasks`.
7+
- Deprecated the `EOPatch.merge` method and extracted it as a function.
8+
- Deprecated the `OVERWRITE_PATCH` permission and enforcing the usage of explicit string permissions.
9+
- Encapsulated `FeatureDict` class as `Mapping`, removed inheritance from `dict`.
10+
- Switched to new-style typed annotations.
11+
- Introduced the `ruff` python linter, removed `flake8` and `isort` (covered by `ruff`).
12+
- Fixed issue with occasionally failing scheduled builds on the `master` branch.
13+
- Various refactoring efforts and dependency improvements.
14+
- Various improvements to tests and code.
15+
116
## [Version 1.4.1] - 2023-3-14
217

318
- The codebase is now fully annotated and type annotations are mandatory for all new code.

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ This section assumes you have installed all packages in `requirements-dev.txt`.
131131

132132
Most of the automated code-checking is packaged into [pre-commit hooks](https://pre-commit.com/). You can activate them by running `pre-commit install`. If you wish to check all code you can do so by running `pre-commit run --all-files`. This takes care of:
133133
- auto-formatting the code using `black`, `isort`, and `autoflake`
134-
- checking the code with `flake8`
134+
- checking the code with `ruff`
135135
- checking and formatting any Jupyter notebooks with `nbqa`
136136
- various other helpful things (correcting line-endings etc.)
137137

CREDITS.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,12 @@ page or mine the [commit history](https://github.com/sentinel-hub/eo-learn/commi
3737
## Other contributors
3838

3939
* Drew Bollinger (DevelopmentSeed)
40+
* Michael Engel (Technical University of Munich)
4041
* Peter Fogh
4142
* Hugo Fournier (Magellium)
4243
* Ben Huff
4344
* Filip Koprivec (Jožef Stefan Institute)
44-
* Colin Moldenhauer
45+
* Colin Moldenhauer (Technical University of Munich)
4546
* William Ouellette (TomTom)
4647
* Radoslav Pitoňák
4748
* Johannes Schmid (GeoVille)

MANIFEST.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
include requirements*.txt
22

33
include README.md
4+
include CREDITS.md
45
include LICENSE

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ At the moment there are the following subpackages:
5252

5353
### PyPi distribution
5454

55-
The package requires Python version **>=3.7** . It can be installed with:
55+
The package requires Python version **>=3.8** . It can be installed with:
5656

5757
```bash
5858
pip install eo-learn
@@ -92,7 +92,7 @@ Some subpackages contain extension modules under `extra` subfolder. Those module
9292

9393
### Conda Forge distribution
9494

95-
The package requires a Python environment **>=3.7**.
95+
The package requires a Python environment **>=3.8**.
9696

9797
Thanks to the maintainers of the conda forge feedstock (@benhuff, @dcunn, @mwilson8, @oblute, @rluria14), `eo-learn` can
9898
be installed using `conda-forge` as follows:
@@ -149,7 +149,7 @@ Examples and introductions to the package can be found [here](https://github.com
149149

150150
## Contributions
151151

152-
If you would like to contribute to `eo-learn`, check out our [contribution guidelines](./CONTRIBUTING.md).
152+
The list of all `eo-learn` contributors can be found [here](./CONTRIBUTING.md). If you would like to contribute to `eo-learn`, please check our [contribution guidelines](./CONTRIBUTING.md).
153153

154154
## Blog posts and papers
155155

0 commit comments

Comments
 (0)