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

COCO superset for proper SemVer #1

Merged
merged 13 commits into from
Sep 12, 2023
Merged

COCO superset for proper SemVer #1

merged 13 commits into from
Sep 12, 2023

Conversation

jaspersiebring
Copy link
Owner

@jaspersiebring jaspersiebring commented Sep 7, 2023

Feature branch that adds automates SemVer changes to a COCO dataset based on input data (meaning users are no longer prompted to provide versions themselves). This is possible because we now keep track of the raster sources used to make the image subsets that contained annotations, technically making it a COCO superset (i.e. GeoCOCO datasets have all COCO-required keys plus others). It is still compatible with any COCO-accepting data applications though.

New COCO datasets are tagged as '1.0.0`, indicating that all initial annotations are made from the same raster source and stored in the same output directory.

  • PATCH: If this same dataset is used again to store (updated) annotations from the same raster source in the same output directory, we treat it as a patch and bump the SemVer version by 0.0.1.
  • MINOR: If this same dataset is used again to store annotations from a new raster source in the same output directory, we treat it as a minor release and bump the SemVer version by 0.1.0.
  • MAJOR: Lastly, if this same dataset is used again to store annotations from any raster source (new or existing) in a new output directory, we treat it as a major release and bump the SemVer version by 1.0.0. That is because it technically introduces breaking changes as you now have n+1 output directories to keep track of.

It is also the first branch released under the Github Actions based CI meaning that all (existing and new) code is tested and checked for formatting and sufficient test coverage (using mypy, pytest, pytest-cov, ruff).

@jaspersiebring jaspersiebring added the enhancement New feature or request label Sep 7, 2023
@jaspersiebring jaspersiebring self-assigned this Sep 7, 2023
@jaspersiebring jaspersiebring marked this pull request as ready for review September 12, 2023 16:15
@jaspersiebring jaspersiebring merged commit 77bf6c1 into main Sep 12, 2023
2 checks passed
@jaspersiebring jaspersiebring deleted the semver branch September 12, 2023 17:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant