# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).

## [Unreleased]

### Added

- Added optional primitives to squad schema

### Changed

- Refactor action schema to accept geojson.Points
- Use geojson Point for platform_status
- Add waypoint to platform_status
- Store remote schemas as committed local files
  This prevents the live runtime loading untested changes
- Updated header version to accept semver, branch or commit
- Store remote schemas as committed local files 
- Refactored planning_configuration message definition
  - Remove region_of_interest and exclusion_zones
  - Add primitives array of classified geojson Features
- Inject remote geojson schema definitions
- Use geojson Polygon instead of region_schema
- Upgraded openapi-spec-validator to latest release (0.7.1)
- Upgraded openapi-schema-validator to latest release (0.6.2)

## [v1.0.0] - 2024-08-28

### Changed

- Use discover to find all unit tests
- Run tests against current format definitions
- Test that formats match saved schema
- Run python and javascript tests in CI
- Refactor schema script to remove invalid definitions object automatically
- Refactor generate_schema_config script to output file on -f flag

### Fixed

- Add `--remove-orphans` to javascript CI test docker compose arguments

## [v0.2.0] - 2024-02-06

### Added

- New alert message definition
- Emergency flag in mission plan schemas
- Added additional battery and fuel fields to platform status for SPINE project

### Changed

- Updated README to run tests against JS dependencies

## [v0.1.0] - 2023-03-24

### Added

JSON schema definitions for the SoAR project
- outer wrapper MESSAGE definition
- header object
- payload object
  - acknowledgement
  - mission_plan (raw and encoded)
  - observation (raw and encoded)
  - platform_status (raw and encoded)
  - planning_configuration

Example messages matching the schema for each partner

[unreleased]: https://git.noc.ac.uk/communications-backbone-system/backbone-message-format/compare/v1.0.0...dev
[v1.0.0]: https://git.noc.ac.uk/communications-backbone-system/backbone-message-format/compare/v0.2.0...v1.0.0
[v0.2.0]: https://git.noc.ac.uk/communications-backbone-system/backbone-message-format/compare/v0.1.0...v0.2.0
[v0.1.0]: https://git.noc.ac.uk/communications-backbone-system/backbone-message-format/compare/9e6ce245...v0.1.0