You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: stac-spec/.github/pull_request_template.md
+4-2
Original file line number
Diff line number
Diff line change
@@ -10,5 +10,7 @@
10
10
11
11
-[ ] This PR is made against the dev branch (all proposed changes except releases should be against dev, not master).
12
12
-[ ] This PR has **no** breaking changes.
13
-
-[ ] I have added my changes to the [CHANGELOG](https://github.com/radiantearth/stac-spec/blob/dev/CHANGELOG.md)**or** a CHANGELOG entry is not required.
14
-
-[ ] This PR affects the [STAC API spec](https://github.com/radiantearth/stac-api-spec), and I have opened issue/PR #XXX to track the change.
13
+
-[ ] I have added my changes to the [CHANGELOG](https://github.com/radiantearth/stac-spec/blob/dev/CHANGELOG.md)
14
+
**or** a CHANGELOG entry is not required.
15
+
-[ ] This PR affects the [STAC API spec](https://github.com/radiantearth/stac-api-spec),
16
+
and I have opened issue/PR #XXX to track the change.
Copy file name to clipboardExpand all lines: stac-spec/CONTRIBUTING.md
+8-6
Original file line number
Diff line number
Diff line change
@@ -24,28 +24,30 @@ require you to switch from the default of 'master', which we keep so it displays
24
24
Creating a Pull Request will show our PR template, which includes checkbox reminders for a number
25
25
of things.
26
26
27
-
* Adding an entry the [CHANGELOG](CHANGELOG.md). If the change is more editorial and minor then this
27
+
- Adding an entry the [CHANGELOG](CHANGELOG.md). If the change is more editorial and minor then this
28
28
is not required, but any change to the actual specification should definitely have one.
29
-
* Base the PR against dev, as mentioned above - even if the branch was made off of dev this reminds
29
+
- Base the PR against dev, as mentioned above - even if the branch was made off of dev this reminds
30
30
you to change the base in GitHub's PR creation page.
31
-
* Make a ticket in the STAC API repo if anything here affects there.
32
-
* Highlight if the PR makes breaking changes to the specification (in beta there can still be
31
+
- Make a ticket in the STAC API repo if anything here affects there.
32
+
- Highlight if the PR makes breaking changes to the specification (in beta there can still be
33
33
select breaking changes, but after 1.0 this will change)
34
34
35
35
All pull requests should submit clean markdown, which is checked by the continuous integration
36
36
system. Please use `npm run check` locally, as described in the [next section](#check-files),
37
37
to ensure that the checks on the pull request succeed. If it does not then you can look at the
38
38
mistakes online, which are the same as running `npm run check` locally would surface.
39
39
40
-
All pull requests that modify or create JSON schema files or examples should use [JSON formatter](https://jsonformatter.org/) to keep files consistent across the repo.
40
+
All pull requests that modify or create JSON schema files or examples should use
41
+
[JSON formatter](https://jsonformatter.org/) to keep files consistent across the repo.
41
42
42
43
All pull requests additionally require a review of two STAC core team members. Releases are cut
43
44
from dev to master (and require 3 approvals), see the [process](process.md) document for more details.
44
45
45
46
### Check files
46
47
47
48
The same check-markdown and check-examples programs that runs as a check on PR's is part of the repo and can be run locally.
48
-
To install you'll need npm, which is a standard part of any [node.js installation](https://nodejs.org/en/download/). Alternatively, you can also use [yarn](https://yarnpkg.com/) instead of npm. In this case replace all occurrences of `npm` with `yarn` below.
49
+
To install you'll need npm, which is a standard part of any [node.js installation](https://nodejs.org/en/download/).
50
+
Alternatively, you can also use [yarn](https://yarnpkg.com/) instead of npm. In this case replace all occurrences of `npm` with `yarn` below.
49
51
50
52
First you'll need to install everything with npm once. Just navigate to the root of the stac-spec repo and on
@@ -13,7 +14,9 @@ including sources such as aircraft and drone and data such as hyperspectral opti
13
14
synthetic aperture radar (SAR), video, point clouds, lidar, digital elevation
14
15
models (DEM), vector, machine learning labels, and composites like NDVI and
15
16
mosaics. STAC is intentionally designed with a minimal core and flexible
16
-
extension mechanism to support a broad set of use cases.
17
+
extension mechanism to support a broad set of use cases. This specification
18
+
has matured over the past several years, and is used in [numerous production
19
+
deployments](https://stacindex.org/catalogs).
17
20
18
21
This is advantageous to providers of geospatial data, as they can simply use a
19
22
well-designed, standard format and API without needing to design their own proprietary one.
@@ -42,22 +45,15 @@ with a well-defined set of additional attributes ("foreign members"). The **STAC
42
45
extends the **[OGC API - Features - Part 1: Core](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html)**
43
46
with additional web service endpoints and object attributes.
44
47
45
-
## Stability Note
46
-
47
-
This specification has matured over the past several years, and is used in
48
-
[numerous production deployments](https://stacindex.org/catalogs).
49
-
With the 1.0.0 release, implementors should expect that most definitions will remain
50
-
stable. Our goal
51
-
is to maintain backwards-compatiblity within the core for a long time.
52
-
The STAC specification follows [Semantic Versioning](https://semver.org/), so once
53
-
1.0.0 is reached, any breaking change will require the spec to go to 2.0.0.
54
-
55
48
## Current version and branches
56
49
57
50
The [master branch](https://github.com/radiantearth/stac-spec/tree/master) is the 'stable'
58
-
version of the spec. It is currently version **1.0.0** of the specification. The
59
-
[dev](https://github.com/radiantearth/stac-spec/tree/dev) branch is where active development takes place,
60
-
and may have inconsistent examples. Whenever dev stabilizes, a release is cut and we
51
+
version of the spec. It is currently version **1.0.0** of the specification. The STAC specification
52
+
follows [Semantic Versioning](https://semver.org/), so any breaking change will require the spec to
53
+
go to 2.0.0.
54
+
55
+
The [dev](https://github.com/radiantearth/stac-spec/tree/dev) branch is where active development
56
+
takes place, and may have inconsistent examples. Whenever dev stabilizes, a release is cut and we
61
57
merge `dev` in to `master`. So `master` should be stable at any given time.
62
58
More information on how the STAC development process works can be found in
63
59
[process.md](process.md).
@@ -83,23 +79,24 @@ that enable clients to search for Item objects that match their filtering criter
83
79
The **Item**, **Catalog**, **Collection**, and **STAC API** specifications are intended to be
84
80
used together, but are designed so each piece is small, self-contained, and reusable in other contexts.
85
81
86
-
***[Overview](overview.md)** describes the three core object type specifications and how they relate to one another.
87
-
***[Item Specification](item-spec/)** defines a STAC **Item**, which is a [GeoJSON](http://geojson.org)**Feature**
88
-
with additional fields ("foreign members") for attributes like time and links to related entities and assets
89
-
(including thumbnails). This is the core entity that describes the data to be discovered.
90
-
***[Catalog Specification](catalog-spec/)** specifies a structure to link various STAC Items together to be crawled or browsed. It is a
91
-
simple, flexible JSON file of links to Items, Catalogs or Collections that can be used in a variety of ways.
92
-
***[Collection Specification](collection-spec/)** provides additional information about a spatio-temporal collection of data.
93
-
In the context of STAC it is most likely a related group of STAC Items that is made available by a data provider.
94
-
It includes things like the spatial and temporal extent of the data, the license, keywords, etc.
95
-
It enables discovery at a higher level than individual Item objects, providing a simple way to describe sets of data.
96
-
***[Examples](examples/):** The *[examples/](examples/)* folder contains examples for all three specifications, linked together to form two
97
-
complete examples. Each spec and extension links in to highlight particular files that demonstrate key concepts.
98
-
***[Extensions](extensions/README.md)** describe how STAC can use extensions that extend the functionality of the core spec or
99
-
add fields for specific domains. Extensions can be published anywhere, although the preferred location for public extensions is in the [GitHub `stac-extensions` organization](https://github.com/stac-extensions).
100
-
***Additional documents:** The supporting documents include a complementary [best practices](best-practices.md)
101
-
document, and information on contributing (links in the next section). We also maintain a [changelog](CHANGELOG.md) of
102
-
what was modified in each version.
82
+
-**[Overview](overview.md)** describes the three core object type specifications and how they relate to one another.
83
+
-**[Item Specification](item-spec/)** defines a STAC **Item**, which is a [GeoJSON](http://geojson.org)**Feature**
84
+
with additional fields ("foreign members") for attributes like time and links to related entities and assets
85
+
(including thumbnails). This is the core entity that describes the data to be discovered.
86
+
-**[Catalog Specification](catalog-spec/)** specifies a structure to link various STAC Items together to be crawled or browsed. It is a
87
+
simple, flexible JSON file of links to Items, Catalogs or Collections that can be used in a variety of ways.
88
+
-**[Collection Specification](collection-spec/)** provides additional information about a spatio-temporal collection of data.
89
+
In the context of STAC it is most likely a related group of STAC Items that is made available by a data provider.
90
+
It includes things like the spatial and temporal extent of the data, the license, keywords, etc.
91
+
It enables discovery at a higher level than individual Item objects, providing a simple way to describe sets of data.
92
+
-**[Examples](examples/):** The *[examples/](examples/)* folder contains examples for all three specifications, linked together to form two
93
+
complete examples. Each spec and extension links in to highlight particular files that demonstrate key concepts.
94
+
-**[Extensions](extensions/README.md)** describe how STAC can use extensions that extend the functionality of the core spec or
95
+
add fields for specific domains. Extensions can be published anywhere,
96
+
although the preferred location for public extensions is in the [GitHub `stac-extensions` organization](https://github.com/stac-extensions).
97
+
-**Additional documents:** The supporting documents include a complementary [best practices](best-practices.md)
98
+
document, and information on contributing (links in the next section). We also maintain a [changelog](CHANGELOG.md) of
0 commit comments