- βοΈ doc updates
- π when fixing a bug
- π when making general improvements
- β when adding tests
- β¬οΈ when upgrading dependencies
- π when adding new features
- π Retain Non-TAK Server Flow Tags
- π Add the ability to reset flow tags
- π Add MVP for MissionChat builder
- β¬οΈ Update Core Deps
- β Add test for XML Escaped Characters
- π If a
LineStringfeature is provided that happens to have the same first and end coordinate, TAK will treat it as a polygon as the U-D type doesn't differentiate Set fillOpacity: 0 for LineString features to ensure they at least look correct. When it is parsed back into GeoJSON it will "become" a polygon which will need to be handled by downstream users if they want to maintain the original geometry type
- π Add bi-directional parsing of
marti_archivetag indestsection of CoT messages
- π Add support for Marti.archive= which in TAK server 5.7 will disable archiving in the
cot_routertable
- π Make Geofence Types Boolean where possible
- π Update to_geojson conversion of missionChanges
- π Set
toolas optional property in MissionChange contentResource
- π Set
filenameas optional property in MissionChange contentResource
- π Update CoT and GeoJSON schemas to support the contentResource type on MissionChange objects
- π Ensure Fill Color attribute is on all Polygon types
- π Fix color issue surfaced by KML Parsing fixes in 14.23
- π Fix transparency parsing and writing of KML Alpha values
- π Fix test input for isFederatedChange
- π Change isFederatedChange from
StringtoBooleanto match API Definition
- π Include more properties from MOBAC Basemap.xml
- π Permissive changes to UID Schema
- π Update MissionChange Types
- β¬οΈ Update Core Deps
- π Fixing GH Actions Trusted Publishing
- π Ensure normalize step never produces center with > 3 coordinates
- π Update GitHub Actions release step
- β¬οΈ Update Protobuf@8
- π Fix Build
- π Add Build Step
- π Update Release Process
- π Support passing through non-URL Links
- π Bi-Directional MilIcon Support
- π Add Mission Link Field
- π Add BiDirectional support for Spotted Map Items
- π Allow setting rotation on Features
- π Allow setting display minzoom/maxzoom on Features
- π Ensure Direct Chat messages have a
Destflag
- π Fix version conflict on NPM
- π Expand type definitions and tests to allow parsing DataPackages that include an AOI file from ATAK
- π Ensure additional coordinates are removed properly in normalize step
- π Relax Creator parsing to allow undefined
time
- π Relax Mission Change parsing to allow empty
details
- π Relax Mission Change parsing to allow empty
creatorUid
- π Improve COT Type Parsing
- π Support Circle KML Style Properties
- π Support Circle KML Style Properties
- π Loosen support for Route Prefix
- π Loosen support for Route NavCues
- β¬οΈ Update UUID to latest version
- π https://jdstaerk.substack.com/p/we-just-found-malicious-code-in-the - Revert Deps
- π Migrate single point 2525D symbols to
__milicon
- π Support TAK Aware's Pathless Iconset Property
- π MilSym Battle Dimension is now case-insensitive
- π MilSym Augmentation should never error out parsing
- π Export CoTOptions objects from CoT for downstream users
- π Introduce 2525 Augmentation Feature
- β¬οΈ Update Core Deps
- β¬οΈ Update Core Deps
- π Include types in package exports field
- π Add TAK Request/Response type defs
- π Postfix Icon with .png if it isn't present
- π Include ACKRequested in FileRequest Builder
- π Support WebIcon style icon paths
- π Include
InputFeatureCollectionandFeatureCollectionin types
- π Fix TS error
- π Prepend
#to color values in normalized features to ensure they are valid hex colors
- π Use
Type.Literalfortype: Feature
- π Include .d.ts files in output
- π Ensure
archived: trueis set on normalized features as these will result inu-dtype CoTs
- π Replace AJV with TypeBox for schema validation in
from_geojson - π Breaking All parser functions now return
Promise
- π Include KML Styling
- π Update Schema to support additional symbol properties
- π Add support for new circle type
u-r-b-c-c - π Add support for Circle Style properties
- π Add support for
labels_on
- π Add
Emergencysection to schema - π Infer
emergencysection infrom_geojsonif an Emergency CoT type is matched
- π Direct import of CoT Library
- π Web Compatible UUID generation
- π Support parsing to Route format if type is set during
from_geojson
- π The base CoT object is now seperate from the Parser
- π Migrate to/from calls to use
CoTParserclass
- π First pass at mapping MilSym
- π
archived(archived?: boolean): booleanHelper Function - β Add basic helper function tests
- π
stalevalue is now calculated based on current time
- π Add to/from parsing of R&B to geojson utilities
- π Ensure units are in Km for Turf Conversion
- π Initial support for Range & Bearing geometry generation
- β¬οΈ Update Core Deps
- β¬οΈ Update Core Deps
- π Expose 2525 via index
- π Remove Main
- π Add 2525 Export
- π Augment COT Types with 2525B
- π Add CoT Type <=> SIDC
- β¬οΈ Update Core Deps
- π Bi-Directional
creatorsupport - π COT core MilSym support
- π Avoid constant
detailcheck with new helper fn
- π Add
COT.type()helper fn
- π Update StrokeWidth to allow Numeric Values
- π Add
is_stalefn
- π Allow specifying a working path when creating a DataPackage
- π Add support for
Marti => Dest => Group
- π Fix paths when running on windows
- β¬οΈ Update all base deps
- π Ensure DataPackage zip reader is closed when using
DataPackage.parse - π Automatically remove provided zip container given to
DataPackage.parseunlessopts.cleanup = false
- β¬οΈ Update core deps
- π Add support for identifying DataPackages that are Mission Archive Exports
- π Add types present in MissionArchive Exports
- π Include unknown properties in
unknownobject of DataPackage
- π Make Callsign Optional
- π Ensure entire attribute type is reflected in GeoJSON
- π Add
strict: falsemode to DataPackage parsing that will turn a zip file into a DataPackage if it is not valid
- β¬οΈ Update all core deps
- β¬οΈ Update all core deps
- π Fix bug where calling
to_prototwice would fail
- π Fix type complaint on CoT being converted to XML when it could be a
Buffer<ArrayBufferLike>
- π Add limited Sensor GeoJSON Parsing - NOTE: it does not respect that sensors are in a 3D space reprojected into 2D so the sensor geojson isn't entirely correct
- π Add internally stored
pathvalue
- π Allow
Feature.Path: stringon GeoJSON Features
- π Add support for Mission GUID dest tagging
- π Add full bidirectional support for
ConnectionEntryfields
- π Allow
stringandbufferinDataPackage.addFiledefinition
- π Add a ton of new Sensor Attribute keys that were surfaced in CoT mining
- :data: Add Video Configuration object type
- π MissionChange can have no text in
creatorUidTag
- π Add
.to_jsoncall for Basemap XML
- π Remove
exportsfrom package.json for now Ref: #47
- π Add
DataPackage.files()Fn for getting non-attachment files
- π Allow 0 length polylines to allow for removal from ATAK
- π Resolver was having trouble with export path
- π Group parsing wasn't adding
__prefix from proto => CoT
- π Add Types Export
- π Use Numerics for Sensor Attributes
- π Use internal XMLDocument class as base for Iconset/Basemap
- π Add initial Iconset Types
- π Support parsing CoTs with empty/non-populated video tag
- π Add support for parsing Basemap XML Documents
- π Add preliminary support for TAK Routes => GeoJSON LineStrings
- π Add
objecttype support to COT Constructor definition - π Removal of
Type.Indexoneventin JSONCOT type definition to fix AJV Coerce Types - π Removal surfaced
archiveinconsistencies - π Removal surfaced
__forcedeleteinconsistencies
- π Add basic typed support for Range & Bearing Values
- π Tasking messages don't have location field in MissionChange entry
- π Require the top level TAKMessage Protobuf in
from_protoFn
- π MissionSync required uid to be the same for
t-x-d-d
- β Add validation tests to ensure validation takes place
- :data: Add
ForceDeletehelper class
- β Fixing type test
- π Fix deploy on branch
- π Fix default export in COTTypes
- β¬οΈ Update batch-error
- π Seperate out Geometry type into unique type def
- π Enforce
import typevsimport
- π Fix polyline parsing error
- π Swap path and UID
- π Extend the
DataPackage.addFilemethod to allow specifying the file is an attachment
- π Expose a tmp dir aware version of the hash code
- π Hash should be
sha256sumand not UID in MANIFEST
- π Fix bug in DataPackage attachment hash calculation
- π Fix bug in DataPackage attachment hash calculation
- π Initial release of the CotTypes manager/parser
- π Fix an instance of
a-f-gcot type toa-f-G
- π Merge attachments defined in DataPackage manifest with those defined via CoT
attachment_listproperty
- π Add
MissionChangeparsing
- π Add
DataPackage.hashfn
- π Add
addFilegetFileEndpoints
- π Move
FeatureandTypesout of root for cleaner docs - π Add
attachmentssuppport for GeoJSON - π Add
attachment_listsuppport for CoTs
- π Support QuickPic File Relations
- π Fix type in DataPackage Error
- π Add additional
<link\>attrs
- π Surface
ackrequestin GeoJSON
- π Hoise Polyline Styles to top level geojson style
- π support closing polylines and point polylines
- π Add truncation to Ellipse outputs (including circle)
- π Add support for Circles
- π Add support for Targeting
- π Add support for
geofenceproperty
- β Add missionLayer test
- π Add
DEBUG_COTSdebug output
- π Add support for
mission&missionLayerTags
- π Use opacity values between
0-1instead of TAK style values0-255for better interop with external data
- β¬οΈ Update Core Deps
- π Use Simple Style Spec where possible
color=>marker-colorandopacity=>marker-opacity
- π Fix colour encoding to XML
- β Add Reversal Tests for Color
- π Add
colordetail properties in encoding/decoding and types
- π Add Schema support for
pathandafterwhen using<dest/>with Mission Sync API Ref: https://wiki.tak.gov/display/VBM/Mission+Layers
- β Add tests for ensuring newlines are retained in remarks
- π Add ability to set Ephemeral or Permanent package type
- π Include
@openaddresses/batch-error
- π BREAKING Full Bi-Directional Parsing of DataPackages
- π Relax speed/course/slope to allow floats
- π Ensure Proto Directory is copied to dist/lib/proto
- π Ensure Proto Directory is copied to dist
- π Preliminary support for V1 Protobuf encoded CoT messages
- β Round trip to/from proto tests mirring the to/from geojson tests
- β¬οΈ Update to latest deps
- π Distribute ATAK CoT Proto files with node-cot
- π Ensure
Featureis accessible outside of library by using named
- π Use more strictly defined Feature types
- π
Track._attributesis now optional
- π β¬οΈ Add basic support for UAS generated CoTs
- π Add
videoparsing - π Add
sensorparsing
- π Only pass in _attributes in GeoJSONified Links
- π Add BiDirectional parsing of Feature Links
- π Add support for URL Links
- π Add schema support for
ackrequest
- π Allow type coercion as all XML attrs are in strings by default
- π Add ability to ignore
destsection in diff
- π Add ability to ignore
flowsection in diff
- β Update GH Release action
- β Update GH Release action
- β Update iTAK CoT tests
- β Add basic unit tests for diff mode
- π Explicit array check to keep tsc happy
- π Cleaner
addDestTS code
- β¬οΈ Switch to ESLint Flat Config
- π Add reversal of
metadataproperty into_geojson()
- π Add
metadatasection in GeoJSON feature for custom props - π Add
addDestfunction for easily adding dest to an existing COT - π Add
isDifffunction for comparing two COTs - :data: Add DataPackage builder
- π Add missing file
- π Build FileShare helper class
- π Add support for
fileshareCOT
- π Add TAK Server Version Attributes
- π Migrate to TypeBox based schema for stricter types and to avoid JSONSchema compilation step
- π Include suppport for
archivedtag - β¬οΈ Update Core Deps
- β¬οΈ Update Core Deps
- π Add full reversal support for Marti/Dest tags
- π Add basic support for Marti/Dest tags in schema
- π Make Chat vars optional
- π Add
chatproperty to GeoJSON output
- π Detail is optional in Tak/Pongs
- π Object Defs
- π Optional
_flow-tags_._attributes
- π
remarks._textis optional
- π
remarks._attributesis optional
- π Add
package.jsonindist/
- π
schema.jsonis now automatically generated from Type Defs - π Add Chat interface for easily creating Direct Messages
- π Add Flow Tag when parsed by NodeCoT
- β¬οΈ Update Typescript
- β Add Chat & Flow tests
- π Decode
__groupto.properties.group
- π Fix contact parser in
from_geojson
- π Support
centerproperty and calculate if not present - π Support
flowproperty from_flow-tags_; - π Support
groupproperty from__group; - π Support
takvproperty fromtakv; - π Support
statusproperty fromstatus; - π Support
Droidproperty fromuid._attributes.Droid; - π Support
contactproperty fromcontact; - π Support
precisionlocationproperty fromprecisionlocation;
- π Close
u-d-rPolygons
- π
u-d-rtype can also be a polygon
- π Support
Polygon&LineStringto_geojson() - π Fix previously unused Packed colour => opacity
- π Fix Opacity default to a non-zero value
- π Close coordinates in
u-d-ftype
- π Fix the polygon type from a Rectangle CoT type to a Polygon
- βοΈ Update Git Repo Location
- β¬οΈ Update Core Deps
- π Fix parsing of
remarksfield infrom_geojson - π Support for
courseinto_geojson - π Support for
speedinto_geojson - π Support for
iconinto_geojson - π Support for
remarksinto_geojson - π Support for HAE in
to_geojson
- π Rename
XMLCoTtoCoTand make it the default export - π Add
.is_fns for testing CoT type - β
Add
cot.is_*unit tests
- π Ensure
to_geojsonFN returns proper coordinate order - β¬οΈ Update Deps
- π Ensure
to_geojsonFN returns numeric coordinates
- β¬οΈ Update Deps
- β¬οΈ Update Deps
- π Add support for the
remarksfield
- β¬οΈ
TypeScript@5
- π Fix location of track data
- π Fix location of track data
- π Add
speed&courseparsing
- π Add Height Extraction from GeoJSON from
zcoordinate
- π Add support for icon property parsing in GeoJSON
- π Include schema.json in dist output
- π Expand use of known vs generic raw attributes
- π Rewrite in TypeScript
- π Fix typo in error message
- π Significant improvements to start/time/stale parsing
- β Add tests for date parsing
- π Support parsing
Datetypes - β¬οΈ General Dep Update
- π Automatically perform basic schema validation on CoT Creation
- π
from_geojson(Feature.LineString)Support
- π
from_geojson(Feature.Polygon)Support
- π
event.display=>event.detail
- π Bugfixes in default values
- π Ensure
to_geojsonis a function call that doesn't modify underlying message
- π Continue squashing a ton of small expectation issues to get an MVP of a point on TAK
- π Parse GeoJSON Point coords into COT
- π Parse GeoJSON Point coords into COT
- π Allow setting
type&howfrom GeoJSON
- π Class based XML CoT approach
- π Add GeoJSON to/from parsing (experimental)
- β
Update tests to use
tape - βοΈ Update docs to Class approach
- βοΈ Add a CHANGELOG