Awesome
stac4s
A scala project that provides types and basic functionality for working with SpatioTemporal Asset Catalogs. This library is the basis for projects like Franklin and others.
Usage
The following STAC types are covered by this library:
- 2d- and 3d- Bounding Boxes
- Collection
- Asset
- Catalog
- Temporal and Spatial Extents
- Item
- License
- Link & Link Types
- Relations
- Providers & Roles
- Media Types
On its own this library does not provide much functionality; however, it can form a strong foundation for building catalogs and applications, especially when paired with libraries like GeoTrellis Server and GeoTrellis.
Contributing
Contributions can be made via pull requests. You will need to fork the repository to your personal account, create a branch, update your fork, then make a pull request. Additionally, if you find a bug or have an idea for a feature/extension we would appreciate it if you opened an issue so we can work on a fix.
Deployments, Releases, and Maintenance
master
signals the current unreleased, actively developed codebase. Each release will have an associated git tag
is handled automatically via a CI job once a tag is pushed. Releases are handled automatically in CI. To produce a release:
- make sure
master
is up-to-date:git checkout master && git pull origin master
- rotate changelog entries into a section for the version you're releasing using
chan release X.Y.Z
- commit your changelog rotation:
git commit -am "Release X.Y.Z"
- make and push an annotated tag for your release and push
master
:
$ git tag -s -a vX.Y.Z -m "Release version <version>"
$ git push origin --tags
$ git push origin master
After you've pushed the tag, create a GitHub release using chan gh-release X.Y.Z
.
Active development and backports for a particular minor version of stac4s
will be tracked and maintained on a branch for that series (e.g. series/0.1.x
, series/0.2.x
, etc). Pull requests to backport a fix, feature, or other change should be made to that series' respective branch.
Care will be taken to try and maintain backwards binary compatibility for all minor and bugfix releases.