Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dev -> master merge for 1.0.0-beta.2 #153

Merged
merged 82 commits into from
Jun 8, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
f04cb28
Fix links
m-mohr Jan 2, 2021
f3ebca3
Merge pull request #98 from radiantearth/fix-links
cholmes Feb 5, 2021
ed62708
Merge remote-tracking branch 'origin/master' into dev
m-mohr Mar 4, 2021
a77a0ff
make explicit that / returns a Catalog; add 'type' field to Catalog d…
philvarner Mar 17, 2021
4173b78
update changelog
philvarner Mar 17, 2021
088d637
fix openapi
philvarner Mar 17, 2021
4f78524
x
philvarner Mar 17, 2021
7007eff
Clarification on multiple bounding boxes in an extent.
m-mohr Apr 14, 2021
85ff067
Updated to latest version of OGC API - Features PR.
m-mohr Apr 15, 2021
4204a48
Fix CI
m-mohr Apr 15, 2021
4b60da6
Fix CI
m-mohr Apr 15, 2021
1c4d331
Merge pull request #118 from radiantearth/fix-ci
cholmes Apr 16, 2021
8ba4b61
Merge pull request #117 from radiantearth/extent-clarification
cholmes Apr 16, 2021
7472474
Remove stac-spec git submodule
duckontheweb Apr 20, 2021
b1d985e
Add [email protected] as subtree
duckontheweb Apr 20, 2021
b544f2d
Squashed 'stac-spec/' content from commit ebd16753
duckontheweb Apr 20, 2021
65661d7
Remove CI step to init submodules
duckontheweb Apr 20, 2021
db61173
Add PR template check that core spec was not changed.
duckontheweb Apr 20, 2021
e1cc965
Fix extension links
duckontheweb May 4, 2021
2f81a04
Add CI check for changes to stac-spec directory
duckontheweb May 4, 2021
7484ac9
Don't deactivate other search parameters when filtering with ids (#125)
jisantuc May 5, 2021
6d51718
initial draft for Filter extension
philvarner May 10, 2021
3f51664
filter extension: update text with a few missing details
philvarner May 11, 2021
1d32f24
add more details around implementation requirements
philvarner May 11, 2021
6f75fcb
Merge branch 'dev' into tidy-up-catalog-references
philvarner May 11, 2021
4573b1a
add type for collections
philvarner May 11, 2021
eb48d43
update changelog
philvarner May 11, 2021
a692ddc
Merge pull request #119 from radiantearth/core-as-subtree
m-mohr May 11, 2021
d7b8ce1
add ToC to all readmes, add text about the purpose of extensions
philvarner May 11, 2021
ae9db54
draft openapi spec
philvarner May 11, 2021
83ba8f5
Merge pull request #130 from philvarner/readme-item-search-reorg
philvarner May 12, 2021
8a5ceea
Merge pull request #112 from philvarner/tidy-up-catalog-references
philvarner May 12, 2021
26d22ce
update examples, and implementation section
philvarner May 12, 2021
b898e7d
add cors recommendation
philvarner May 12, 2021
747d285
update changelog
philvarner May 12, 2021
facfd04
remove stray comma
philvarner May 12, 2021
e5031e8
wordsmith text
philvarner May 12, 2021
d22cda2
wordsmith text
philvarner May 12, 2021
c810d2c
wordsmith text
philvarner May 12, 2021
7edc330
improve openapi definition
philvarner May 12, 2021
eba4135
add text about synthetic queryables
philvarner May 13, 2021
84df423
add service-doc to core links table, add links diagram
philvarner May 14, 2021
fc7dcf7
remove duplicate core in conformsTo
philvarner May 14, 2021
81edfa5
refine CORS description
philvarner May 14, 2021
5451049
Merge pull request #131 from philvarner/cors
philvarner May 14, 2021
1d29ba2
link and make more consistent uses of Catalog, Item, and Collection (…
philvarner May 14, 2021
a9c0d00
Merge branch 'dev' into service-doc
philvarner May 14, 2021
7913862
Merge branch 'dev' into filter-extension
philvarner May 14, 2021
e8490d9
add better example, fix linting error in markdown and schemas
philvarner May 14, 2021
518184f
fix ref to cql yml
philvarner May 14, 2021
2bdf845
minor fixes for filter openapi
philvarner May 14, 2021
76b66bf
Merge pull request #133 from philvarner/service-doc
philvarner May 17, 2021
19b76fe
rework example landing page, link rel table, and conformsTo for confo…
philvarner May 17, 2021
8874984
fix typo
philvarner May 17, 2021
2fbab9c
add links to example landing page
philvarner May 19, 2021
14790ff
Merge pull request #135 from philvarner/service-doc
philvarner May 19, 2021
0b115eb
Merge branch 'dev' into filter-extension
philvarner May 19, 2021
e372618
clarification on queryables, line breaks, wordsmithing
philvarner May 19, 2021
9f9a3dd
fix formatting
philvarner May 19, 2021
7265eb8
redefine conformance classes
philvarner May 20, 2021
820a18e
change conformance class names back to item-search#
philvarner May 20, 2021
c201898
tweak language around proprietary extensions in queryables, add note …
philvarner May 20, 2021
96696c4
update list of conformance class uris in extension page
philvarner May 20, 2021
90c88da
add conformance class field to each extension
philvarner May 20, 2021
61a1f36
fix formatting of filter conformance classes
philvarner May 20, 2021
1fb71cb
fix formatting typo
philvarner May 20, 2021
9acf92d
clarify queryables
philvarner May 20, 2021
b9b7c83
add a getting started section
philvarner May 20, 2021
d45649d
typo; escaping * in MD; stac_version in ItemCollection; fixing reference
fredliporace May 20, 2021
8e08794
modify text based on comments from Rob
philvarner May 24, 2021
b8685ac
Removing stac_version from example
fredliporace May 25, 2021
0f5e1b0
Merge pull request #140 from fredliporace/dev
philvarner May 25, 2021
ed7f3f1
Merge pull request #128 from philvarner/filter-extension
philvarner May 26, 2021
f88fab8
update stac_version references to 1.0.0 and stac api references to 1.…
philvarner Jun 1, 2021
a0bbf8f
fix link in changelog
philvarner Jun 1, 2021
467afd7
fix changelog and fragments
philvarner Jun 2, 2021
e339ab7
Merge pull request #148 from philvarner/update-stac-version-1.0.0
philvarner Jun 2, 2021
3886215
Squashed 'stac-spec/' changes from ebd16753..789e90fb
philvarner Jun 4, 2021
1c5f5f6
Merge commit '38862153e6e88521f61be6585d2d4362fef68775' into dev
philvarner Jun 4, 2021
89c306e
Merge pull request #150 from philvarner/pull-stac-spec-1.0.0
philvarner Jun 4, 2021
eb130a4
allow html in markdown, fix problems with filter openapi spec
philvarner Jun 8, 2021
4527f64
Merge pull request #154 from philvarner/linting-fixes
philvarner Jun 8, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 16 additions & 3 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,6 @@ jobs:
- image: circleci/node:12
steps:
- checkout
- run:
name: init_submodules
command: git submodule update --init --recursive
- save_cache:
key: v0-repo-{{ .Branch }}-{{ .Revision }}
paths:
Expand Down Expand Up @@ -72,6 +69,16 @@ jobs:
command: |
ssh-keyscan github.com >> ~/.ssh/known_hosts
npm run publish-openapi -- $CIRCLE_TAG
check-core-changes:
working_directory: ~/stac
docker:
- image: circleci/node:12
steps:
- *restore_repo
- *restore_dependencies
- run:
name: check-core-changes
command: npm run check-stac-spec-changes --compare-to=<< pipeline.git.base_revision >>

workflows:
version: 2
Expand All @@ -87,6 +94,12 @@ workflows:
filters:
tags:
only: /^v.*/
- check-core-changes:
requires:
- validate
filters:
tags:
only: /^v.*/
- publish:
requires:
- build
Expand Down
11 changes: 4 additions & 7 deletions .circleci/rc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,13 @@ plugins:
# Apply some recommended defaults for consistency
- remark-preset-lint-consistent
- remark-preset-lint-recommended
# No HTML for security - can't activate yet due to STAC logo in README.md
# - lint-no-html
# - lint-no-html
# General formatting
- - remark-lint-emphasis-marker
- '*'
- remark-lint-hard-break-spaces
- remark-lint-blockquote-indentation
- remark-lint-no-consecutive-blank-lines
# Detect overly long lines - be liberal for now and don't restrict to 80 yet
- - remark-lint-maximum-line-length
- 150
# Code
Expand All @@ -23,13 +21,14 @@ plugins:
- 'fenced'
# Headings
- remark-lint-heading-increment
- remark-lint-no-duplicate-headings
- remark-lint-no-multiple-toplevel-headings
- remark-lint-no-heading-punctuation
- - remark-lint-maximum-heading-length
- 70
- - remark-lint-heading-style
- atx
- - remark-lint-no-shortcut-reference-link
- false
# Lists
- remark-lint-list-item-bullet-indent
- remark-lint-ordered-list-marker-style
Expand All @@ -41,6 +40,4 @@ plugins:
- space
# Tables
- remark-lint-table-pipes
# - remark-lint-table-pipe-alignment # Wait for https://github.com/remarkjs/remark-lint/issues/226
# Urls
- remark-lint-no-literal-urls
- remark-lint-no-literal-urls
1 change: 1 addition & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,5 @@

- [ ] This PR is made against the dev branch (all proposed changes except releases should be against dev, not master).
- [ ] This PR has **no** breaking changes.
- [ ] This PR does not make any changes to the core spec in the `stac-spec` directory (these are included as a subtree and should be updated directly in [radiantearth/stac-spec](https://github.com/radiantearth/stac-spec))
- [ ] I have added my changes to the [CHANGELOG](https://github.com/radiantearth/stac-api-spec/blob/dev/CHANGELOG.md) **or** a CHANGELOG entry is not required.
3 changes: 0 additions & 3 deletions .gitmodules

This file was deleted.

1 change: 1 addition & 0 deletions .remarkignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/CHANGELOG.md
35 changes: 33 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,39 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased][]
## [Unreleased]

## [v1.0.0-beta.1][] - 2020-12-10
### Added

### Changed

### Deprecated

### Removed

### Fixed

## [v1.0.0-beta.2] - 2020-06-01

### Added
- Added Filter extension to integrate OAFeat Part 3 CQL
- Catalog and Collection definitions now have required field "type"
- Added recommendation to enable CORS for public APIs

### Changed
- Updated all STAC versions to 1.0.0
- Passing the `ids` parameter to an item search does not deactivate other query parameters [#125](https://github.com/radiantearth/stac-api-spec/pull/125)
- The first extent in a Collection is always the overall extent, followed by more specific extents. [opengeospatial/ogcapi-features#520](https://github.com/opengeospatial/ogcapi-features/pull/520)

### Deprecated
- Query extension is now deprecated. Replaced by the Filter extension using OGC CQL.

### Removed

### Fixed
- Updated text description of root ('/') endpoint (also called landing page) that the return type is a Catalog

## [v1.0.0-beta.1] - 2020-12-10

### Added
- The landing page returns the conformance classes in a property `conformsTo`, which mirrors `GET /conformances` from OGC APIs.
Expand Down Expand Up @@ -42,3 +72,4 @@ for STAC API releases prior to or equal to version 0.9.0.

[Unreleased]: <https://github.com/radiantearth/stac-api-spec/compare/master...dev>
[v1.0.0-beta.1]: <https://github.com/radiantearth/stac-api-spec/tree/v1.0.0-beta.1>
[v1.0.0-beta.2]: <https://github.com/radiantearth/stac-api-spec/tree/v1.0.0-beta.2>
4 changes: 2 additions & 2 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ members of the project's leadership.
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at <https://www.contributor-covenant.org/version/1/4/code-of-conduct.html>

[homepage]: <https://www.contributor-covenant.org>

For answers to common questions about this code of conduct, see
<https://www.contributor-covenant.org/faq>

[homepage]: <https://www.contributor-covenant.org>
31 changes: 21 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,15 @@
<!--lint disable no-html-->
<img src="https://github.com/radiantearth/stac-site/raw/master/images/logo/stac-030-long.png" alt="stac-logo" width="700"/>

# STAC API

- [STAC API](#stac-api)
- [About](#about)
- [Stability Note](#stability-note)
- [Communication](#communication)
- [In this repository](#in-this-repository)
- [Contributing](#contributing)

## About

The SpatioTemporal Asset Catalog (STAC) specification aims to standardize the way geospatial assets are exposed online and queried.
Expand All @@ -11,26 +19,26 @@ time. The core STAC specification lives at [gitub.com/radiantearth/stac-spec](ht
A STAC API is the dynamic version of a SpatioTemporal Asset Catalog. It returns a STAC [Catalog](stac-spec/catalog-spec/catalog-spec.md),
[Collection](stac-spec/collection-spec/collection-spec.md), [Item](stac-spec/item-spec/item-spec.md),
or a STAC API [ItemCollection](fragments/itemcollection/README.md), depending on the endpoint.
Catalogs and Collections are JSON, while Items and ItemCollections are GeoJSON-compliant entities with foreign members.
Typically, a Feature is used when returning a single Item, and FeatureCollection when multiple Items (rather than a JSON array of Item entities).
Catalog and Collection objects are JSON, while Item and ItemCollection objects are GeoJSON-compliant entities with foreign members.
Typically, a Feature is used when returning a single Item object, and FeatureCollection when multiple Item objects (rather than a
JSON array of Item entities).

The API can be implemented in compliance with the *[OGC API - Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html)* standard
(we'll use OAFeat for shorthand). In this case STAC API can be thought of as a specialized Features API
to search STAC Catalogs, where the features returned are STAC [Items](stac-spec/item-spec/item-spec.md),
to search STAC catalogs, where the features returned are STAC [Item](stac-spec/item-spec/item-spec.md) objects,
that have common properties, links to their assets and geometries that represent the footprints of the geospatial assets.

The specification for STAC API is provided as files that follow the [OpenAPI](http://openapis.org/) 3.0 specification,
rendered online into HTML at <https://api.stacspec.org/v1.0.0-beta.1>, in addition to human-readable documentation.
rendered online into HTML at <https://api.stacspec.org/v1.0.0-beta.2>, in addition to human-readable documentation.

## Stability Note

This specification has evolved over the past couple years, and is used in production in a variety of deployments. It is
currently in a 'beta' state, with no major changes anticipated. For 1.0-beta we remain fully aligned with [OGC API -
Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) Version 1.0, and we are working to stay aligned
as the additional OGC API components mature. This may result in minor changes as things evolve. The STAC API specification

follows [Semantic Versioning](https://semver.org/), so once 1.0.0 is reached any breaking change will require the spec to
go to 2.0.0.
as the additional OGC API components mature. This may result in minor changes as things evolve. The STAC API
specification follows [Semantic Versioning](https://semver.org/), so once 1.0.0 is reached any breaking change
will require the spec to go to 2.0.0.

## Communication

Expand All @@ -45,11 +53,11 @@ The **[Overview](overview.md)** document describes all the various parts of the

**STAC API - Core Specification:**
The *[core](core/)* folder describes the core STAC API specification that enables browsing catalogs and
retrieving the API capabilities. This includes the OpenAPI schemas for STAC items, catalogs and collections.
retrieving the API capabilities. This includes the OpenAPI schemas for STAC Item, Catalog and Collection objects.

**STAC API - Item Search Specification:**
The *[item-search](item-search)* folder contains the Item Search specification, which enables
cross-collection search of STAC Items at a `search` endpoint, as well as a number of extensions.
cross-collection search of STAC Item objects at a `search` endpoint, as well as a number of extensions.

**STAC API - Features:**
The *[ogcapi-features](ogcapi-features)* folder describes how a STAC API can fully implement [OGC API -
Expand All @@ -73,6 +81,9 @@ Sub-modules aren't checked out by default, so to get the directory populated
either use `git submodule update --init --recursive` if you've already cloned it,
or clone from the start with `git clone --recursive [email protected]:radiantearth/stac-api-spec.git`.

**Implementation Recommendations:** Recommendations for implementing a STAC API may be found [here](implementation.md).
These are mostly concerns that apply to an entire API implementation and are not part of the specification itself.

## Contributing

Anyone building software that catalogs imagery or other geospatial assets is welcome to collaborate.
Expand Down
2 changes: 1 addition & 1 deletion build/swagger-config.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
openapi: 3.0.3
info:
title: STAC API - Complete
version: 1.0.0-beta.1
version: 1.0.0-beta.2
apis:
- url: 'build/core/openapi.yaml'
paths:
Expand Down
Loading