Skip to content

Commit e918310

Browse files
authored
Merge pull request #235 from stac-utils/stac-v1.1.0
Update to stac v1.1.0, release stac-validator v3.4.0
2 parents 41afba7 + 2eeb6d8 commit e918310

File tree

11 files changed

+296
-79
lines changed

11 files changed

+296
-79
lines changed

.github/workflows/test-runner.yml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,17 +11,14 @@ on:
1111
- dev
1212

1313
jobs:
14-
1514
test:
16-
1715
name: Execute tests
1816
runs-on: ubuntu-latest
1917
strategy:
2018
matrix:
2119
python-version: ["3.8", "3.9", "3.10", "3.11"]
22-
23-
steps:
2420

21+
steps:
2522
- uses: actions/checkout@v2
2623
- name: Set up Python ${{ matrix.python-version }}
2724
uses: actions/setup-python@main
@@ -35,7 +32,7 @@ jobs:
3532
pytest --mypy stac_validator
3633
3734
- name: Run pre-commit
38-
if: matrix.python-version == 3.8
35+
if: matrix.python-version == 3.10
3936
run: |
4037
pre-commit install
4138
pre-commit autoupdate

.pre-commit-config.yaml

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,29 @@
11
repos:
2-
- repo: https://github.com/PyCQA/flake8
2+
- repo: https://github.com/PyCQA/flake8
33
rev: 7.0.0
44
hooks:
5-
- id: flake8
6-
- repo: https://github.com/timothycrosley/isort
5+
- id: flake8
6+
- repo: https://github.com/timothycrosley/isort
77
rev: 5.13.2
88
hooks:
9-
- id: isort
10-
args: ["--profile", "black"]
11-
- repo: https://github.com/psf/black
9+
- id: isort
10+
args: ["--profile", "black"]
11+
- repo: https://github.com/psf/black
1212
rev: 24.1.1
1313
hooks:
14-
- id: black
15-
language_version: python3.8
16-
- repo: https://github.com/pre-commit/mirrors-mypy
14+
- id: black
15+
language_version: python3.10
16+
- repo: https://github.com/pre-commit/mirrors-mypy
1717
rev: v1.8.0
1818
hooks:
1919
- id: mypy
2020
exclude: /tests/
2121
# --strict
22-
args: [
23-
--no-strict-optional,
24-
--ignore-missing-imports,
25-
--implicit-reexport,
26-
--explicit-package-bases,
27-
]
28-
additional_dependencies: [
29-
"types-attrs",
30-
"types-requests"
31-
]
22+
args:
23+
[
24+
--no-strict-optional,
25+
--ignore-missing-imports,
26+
--implicit-reexport,
27+
--explicit-package-bases,
28+
]
29+
additional_dependencies: ["types-attrs", "types-requests"]

CHANGELOG.md

Lines changed: 46 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,21 @@ The format is (loosely) based on [Keep a Changelog](http://keepachangelog.com/)
66

77
## [Unreleased]
88

9+
## [v3.4.0] - 2024-10-08
10+
911
### Added
1012

1113
- Added ability to validate response from a /collections endpoint [#220](https://github.com/stac-utils/stac-validator/issues/220)
1214
- Added mypy to pre-commit config ([#229](https://github.com/stac-utils/stac-validator/pull/224))
15+
- Support for stac spec version 1.1.0 [#235](https://github.com/stac-utils/stac-validator/pull/235)
1316

1417
## [v3.3.2] - 2023-11-17
1518

1619
### Added
1720

1821
- Docstrings ([#224](https://github.com/stac-utils/stac-validator/pull/224))
1922

20-
### Changed
23+
### Changed
2124

2225
- Development dependencies removed from runtime dependency list
2326
([#228](https://github.com/stac-utils/stac-check/pull/109))
@@ -38,13 +41,13 @@ The format is (loosely) based on [Keep a Changelog](http://keepachangelog.com/)
3841

3942
## [v3.2.0] - 2022-09-20
4043

41-
### Added
42-
44+
### Added
45+
4346
- Added ability to check local schemas in item extensions https://github.com/stac-utils/stac-validator/pull/215
4447
- Added an example on validating a dictionary https://github.com/stac-utils/stac-validator/pull/215
4548

4649
### Changed
47-
50+
4851
- Changed 'ValidationError' error type to 'JSONSchemaValidationError' https://github.com/stac-utils/stac-validator/pull/213
4952

5053
## [v3.1.0] - 2022-04-28
@@ -83,32 +86,38 @@ The format is (loosely) based on [Keep a Changelog](http://keepachangelog.com/)
8386
- References to Python 3.6
8487

8588
## [v2.5.0] - 2022-03-10
89+
8690
### Changed
8791

8892
- Split the `--recursive` option into a `--recursive` flag and a `--max-depth` option
8993
- Renamed the entry point from `stac_validator` to `stac-validator`
9094

9195
## [v2.4.3] - 2022-03-10
96+
9297
### Changed
9398

94-
- Add schema caching
99+
- Add schema caching
95100

96101
## [v2.4.2] - 2022-03-02
102+
97103
### Changed
98104

99-
- Loosen pystac version dependency
105+
- Loosen pystac version dependency
100106

101107
## [v2.4.1] - 2022-03-02
108+
102109
### Changed
103110

104-
- Loosen stac-check version dependency
111+
- Loosen stac-check version dependency
105112

106113
## [v2.4.0] - 2022-02-02
114+
107115
### Added
108116

109-
- Linting option in cli to display stac-check generated information
117+
- Linting option in cli to display stac-check generated information
110118

111119
## [v2.3.0] - 2021-08-31 - 2021-11-28
120+
112121
### Added
113122

114123
- Added --links option to validate links on format and a valid response
@@ -125,6 +134,7 @@ The format is (loosely) based on [Keep a Changelog](http://keepachangelog.com/)
125134
- Moved backend to validate.py
126135

127136
## [v2.2.0] - 2021-05-25
137+
128138
### Added
129139

130140
- Added Support for STAC 1.0.0
@@ -133,17 +143,18 @@ The format is (loosely) based on [Keep a Changelog](http://keepachangelog.com/)
133143

134144
### Changed
135145

136-
- Moved std out to cli so that it doesn't display in pure python applications
137-
- Added Pypi badges to readme
138-
146+
- Moved std out to cli so that it doesn't display in pure python applications
147+
- Added Pypi badges to readme
148+
139149
## [v2.1.0] - 2021-05-06
150+
140151
### Added
141152

142153
- Added more tests for STAC 1.0.0-rc.3
143154
- Added basic support for rc.4
144155
- Add system exit code to CLI. see #144
145156

146-
### Changed
157+
### Changed
147158

148159
- Modified how Lambda CDK is built
149160

@@ -160,7 +171,7 @@ The format is (loosely) based on [Keep a Changelog](http://keepachangelog.com/)
160171

161172
### Changed
162173

163-
- Pystac is now only being used to identify stac objects. Jsonschema is being used for all other validation.
174+
- Pystac is now only being used to identify stac objects. Jsonschema is being used for all other validation.
164175
- The cli library was changed from Docopt to Click.
165176
- Custom validation was updated to allow for local schemas.
166177

@@ -196,24 +207,25 @@ The format is (loosely) based on [Keep a Changelog](http://keepachangelog.com/)
196207
- With the newest version - 1.0.0-beta.2 - items will run through jsonchema validation before the PySTAC validation. The reason for this is that jsonschema will give more informative error messages. This should be addressed better in the future. This is not the case with the --recursive option as time can be a concern here with larger collections.
197208
- Logging. Various additions were made here depending on the options selected. This was done to help assist people to update their STAC collections.
198209

199-
[Unreleased]: <https://github.com/sparkgeo/stac-validator/compare/v3.3.2..main>
200-
[v3.3.2]: <https://github.com/sparkgeo/stac-validator/compare/v3.3.1..v3.3.2>
201-
[v3.3.1]: <https://github.com/sparkgeo/stac-validator/compare/v3.3.0..v3.3.1>
202-
[v3.3.0]: <https://github.com/sparkgeo/stac-validator/compare/v3.2.0..v3.3.0>
203-
[v3.2.0]: <https://github.com/sparkgeo/stac-validator/compare/v3.1.0..v3.2.0>
204-
[v3.1.0]: <https://github.com/sparkgeo/stac-validator/compare/v3.0.0..v3.1.0>
205-
[v3.0.0]: <https://github.com/sparkgeo/stac-validator/compare/v2.5.0..v3.0.0>
206-
[v2.5.0]: <https://github.com/sparkgeo/stac-validator/compare/v2.4.3..v2.5.0>
207-
[v2.4.3]: <https://github.com/sparkgeo/stac-validator/compare/v2.3.0..v2.4.0>
208-
[v2.4.2]: <https://github.com/sparkgeo/stac-validator/compare/v2.4.1..v2.4.2>
209-
[v2.4.1]: <https://github.com/sparkgeo/stac-validator/compare/v2.4.0..v2.4.1>
210-
[v2.4.0]: <https://github.com/sparkgeo/stac-validator/compare/v2.3.0..v2.4.0>
211-
[v2.3.0]: <https://github.com/sparkgeo/stac-validator/compare/v2.2.0..v2.3.0>
212-
[v2.2.0]: <https://github.com/sparkgeo/stac-validator/compare/v2.1.0..v2.2.0>
213-
[v2.1.0]: <https://github.com/sparkgeo/stac-validator/compare/v2.0.0..v2.1.0>
214-
[v2.0.0]: <https://github.com/sparkgeo/stac-validator/compare/v1.0.1..v2.0.0>
215-
[v1.0.1]: <https://github.com/sparkgeo/stac-validator/compare/v0.5.0..v1.0.1>
216-
[v0.5.0]: <https://github.com/sparkgeo/stac-validator/compare/v0.1.3..v0.5.0>
217-
[v0.1.3]: <https://github.com/sparkgeo/stac-validator/compare/v0.1.1..v0.1.3>
218-
[v0.1.1]: <https://github.com/sparkgeo/stac-validator/compare/v0.1.0..v0.1.1>
219-
[v0.1.0]: <https://github.com/sparkgeo/stac-validator/releases/tag/v0.1.0>
210+
[Unreleased]: https://github.com/sparkgeo/stac-validator/compare/v3.4.0..main
211+
[v3.4.0]: https://github.com/sparkgeo/stac-validator/compare/v3.3.2..v3.4.0
212+
[v3.3.2]: https://github.com/sparkgeo/stac-validator/compare/v3.3.1..v3.3.2
213+
[v3.3.1]: https://github.com/sparkgeo/stac-validator/compare/v3.3.0..v3.3.1
214+
[v3.3.0]: https://github.com/sparkgeo/stac-validator/compare/v3.2.0..v3.3.0
215+
[v3.2.0]: https://github.com/sparkgeo/stac-validator/compare/v3.1.0..v3.2.0
216+
[v3.1.0]: https://github.com/sparkgeo/stac-validator/compare/v3.0.0..v3.1.0
217+
[v3.0.0]: https://github.com/sparkgeo/stac-validator/compare/v2.5.0..v3.0.0
218+
[v2.5.0]: https://github.com/sparkgeo/stac-validator/compare/v2.4.3..v2.5.0
219+
[v2.4.3]: https://github.com/sparkgeo/stac-validator/compare/v2.3.0..v2.4.0
220+
[v2.4.2]: https://github.com/sparkgeo/stac-validator/compare/v2.4.1..v2.4.2
221+
[v2.4.1]: https://github.com/sparkgeo/stac-validator/compare/v2.4.0..v2.4.1
222+
[v2.4.0]: https://github.com/sparkgeo/stac-validator/compare/v2.3.0..v2.4.0
223+
[v2.3.0]: https://github.com/sparkgeo/stac-validator/compare/v2.2.0..v2.3.0
224+
[v2.2.0]: https://github.com/sparkgeo/stac-validator/compare/v2.1.0..v2.2.0
225+
[v2.1.0]: https://github.com/sparkgeo/stac-validator/compare/v2.0.0..v2.1.0
226+
[v2.0.0]: https://github.com/sparkgeo/stac-validator/compare/v1.0.1..v2.0.0
227+
[v1.0.1]: https://github.com/sparkgeo/stac-validator/compare/v0.5.0..v1.0.1
228+
[v0.5.0]: https://github.com/sparkgeo/stac-validator/compare/v0.1.3..v0.5.0
229+
[v0.1.3]: https://github.com/sparkgeo/stac-validator/compare/v0.1.1..v0.1.3
230+
[v0.1.1]: https://github.com/sparkgeo/stac-validator/compare/v0.1.0..v0.1.1
231+
[v0.1.0]: https://github.com/sparkgeo/stac-validator/releases/tag/v0.1.0

README.md

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,7 @@
44

55
[read the docs](https://stac-validator.readthedocs.io/en/latest/)
66

7-
8-
## Validate STAC json files against the [STAC spec](https://github.com/radiantearth/stac-spec).
9-
10-
7+
## Validate STAC json files against the [STAC spec](https://github.com/radiantearth/stac-spec).
118

129
```bash
1310
stac-validator https://raw.githubusercontent.com/radiantearth/stac-spec/master/examples/extended-item.json
@@ -60,7 +57,6 @@ or for local development
6057
pip install -e '.[dev]'
6158
```
6259

63-
6460
The [Makefile](./Makefile) has convenience commands if Make is installed.
6561

6662
```bash
@@ -81,7 +77,8 @@ make help
8177
| 1.0.0-rc.3 |
8278
| 1.0.0-rc.4 |
8379
| 1.0.0 |
84-
80+
| 1.1.0-beta.1 |
81+
| 1.1.0 |
8582

8683
---
8784

@@ -146,7 +143,9 @@ docker run stac-validator https://raw.githubusercontent.com/stac-extensions/proj
146143
```
147144
148145
## AWS (CDK)
146+
149147
An example [AWS CDK](https://aws.amazon.com/cdk/) deployment is available in [cdk-deployment](./cdk-deployment/README.md)
148+
150149
```bash
151150
cd cdk-deployment
152151
cdk diff
@@ -201,29 +200,29 @@ print(stac.message)
201200
```
202201
203202
**Dictionary**
204-
203+
205204
```python
206205
from stac_validator import stac_validator
207-
206+
208207
stac = stac_validator.StacValidate()
209208
stac.validate_dict(dictionary)
210209
print(stac.message)
211210
```
212211
213212
**Item Collection**
214-
213+
215214
```python
216215
from stac_validator import stac_validator
217-
216+
218217
stac = stac_validator.StacValidate()
219218
stac.validate_item_collection_dict(item_collection_dict)
220219
print(stac.message)
221220
```
221+
222222
---
223223
224224
# Testing
225225
226-
227226
```bash
228227
make test
229228
# or
@@ -233,6 +232,7 @@ pytest -v
233232
See the [tests](./tests/test_stac_validator.py) files for examples on different usages.
234233
235234
---
235+
236236
# Additional Examples
237237
238238
**--core**
@@ -292,7 +292,7 @@ stac-validator https://raw.githubusercontent.com/radiantearth/stac-spec/master/e
292292
}
293293
]
294294
```
295-
295+
296296
**--recursive**
297297
298298
```bash
@@ -324,8 +324,9 @@ stac-validator https://spot-canada-ortho.s3.amazonaws.com/catalog.json --recursi
324324
}
325325
]
326326
```
327+
327328
**--item-collection**
328329
329330
```bash
330331
stac-validator https://earth-search.aws.element84.com/v0/collections/sentinel-s2-l2a/items --item-collection --pages 2
331-
```
332+
```

setup.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
from setuptools import setup
44

5-
__version__ = "3.3.2"
5+
__version__ = "3.4.0"
66

77
with open("README.md", "r") as fh:
88
long_description = fh.read()
@@ -11,7 +11,7 @@
1111
name="stac_validator",
1212
version=__version__,
1313
author="James Banting, Jonathan Healy",
14-
author_email="jhealy@sparkgeo.com",
14+
author_email="jonathan.d.healy@gmail.com",
1515
description="A package to validate STAC files",
1616
license="Apache-2.0",
1717
classifiers=[

stac_validator/stac_validator.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@ def print_update_message(version: str) -> None:
1818
None
1919
"""
2020
click.secho()
21-
if version != "1.0.0":
21+
if version != "1.1.0":
2222
click.secho(
23-
f"Please upgrade from version {version} to version 1.0.0!", fg="red"
23+
f"Please upgrade from version {version} to version 1.1.0!", fg="red"
2424
)
2525
else:
26-
click.secho("Thanks for using STAC version 1.0.0!", fg="green")
26+
click.secho("Thanks for using STAC version 1.1.0!", fg="green")
2727
click.secho()
2828

2929

stac_validator/utilities.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@
1414
"1.0.0-rc.3",
1515
"1.0.0-rc.4",
1616
"1.0.0",
17+
"1.1.0-beta.1",
18+
"1.1.0",
1719
]
1820

1921

0 commit comments

Comments
 (0)