Skip to content

debt: Addressed proto/v1 evaluation findings; breaking changes to several messages - #30

Merged
mprimeaux merged 1 commit into
mainfrom
debt/cleanup
Sep 29, 2026
Merged

mprimeaux merged 1 commit into
mainfrom
debt/cleanup

Conversation

@mprimeaux

Copy link
Copy Markdown
Contributor

debt: Addressed proto/v1 evaluation findings; breaking changes to several messages

  • feature: Added path field (7) to Uri.
  • feature: Added Space message and AngleUnit enum to geometry.proto; every shape carries one Space.
  • feature: Added LineSegment and Polyline messages to geometry.proto.
  • feature: Added archived_at field (11) to EntityMetadata.
  • feature: Added ValidateTags and MaxTagLength Go helpers for EntityMetadata.tags.
  • feature: ValidateUUID now requires an RFC 9562-compliant value (Nil, Max, or the RFC 9562 variant with version 1-8). Breaking.
  • debt: Renumbered Uri.user_info from 7 to 6. Breaking (wire).
  • debt: Changed Uri.port from int32 to uint32; 0 means no port was given. Breaking (API).
  • debt: Removed authority field from Uri. Breaking.
  • debt: Removed Url message; use Uri. Breaking.
  • debt: Changed GeometryType and CoordinateSystem from free-form string messages to enums. Breaking.
  • debt: Changed Coordinate to carry only values; Point and Polygon now carry a Space and Coordinates; Polygon is always closed. Breaking.
  • debt: Removed Line and Polygon.is_closed from geometry.proto. Breaking.
  • debt: Renamed Language.bcp47_tag to bcp47_tags and Geofence.polygon to polygons. Breaking (JSON and API).
  • debt: Changed csharp_namespace from SixAfter.Types.V1.WellKnownTypes to SixAfter.Types.V1. Breaking (C# API).
  • debt: Removed option cc_enable_arenas from all .proto files.
  • debt: Removed the google.api.field_info UUID4 annotation from UUID.value and the googleapis and genproto dependencies.
  • debt: Applied buf format to geospatial_location.proto.
  • defect: Changed MapPoint.x and MapPoint.y from float to double. Breaking (wire).
  • defect: Reshaped TimeZone to name, abbreviation, utc_offset (google.protobuf.Duration), daylight_saving, and central_coordinate; removed utc_offset_std, utc_offset_dst, and TimeZone.TimeOffset. Breaking (wire).
  • defect: UUID.MarshalJSON now returns an error for a non-empty value that is not 16 bytes.
  • defect: Updated Uri to cite RFC 3986 and UUID to cite RFC 9562.
  • defect: Documented negative CompassHeading.true_heading, heading_accuracy, GeospatialLocation.course, and speed as invalid or unknown.
  • defect: Documented that unset message fields mean unknown.
  • defect: Corrected documentation for EntityMetadata.attributes, tags, and version, TimeZone.central_coordinate, CompassHeading, GeospatialLocation, Version, Country.numeric_code, and EmailAddress.
  • defect: Updated UUID helper doc comments to cite RFC 9562 and the Go standard library uuid package.
  • defect: Fixed make proto-format to run from the module root and added CHECK=true.
  • defect: Fixed make proto-docs to find buf.gen.docs.yaml; generated docs are ignored by git.

…eral messages

- feature: Added path field (7) to Uri.
- feature: Added Space message and AngleUnit enum to geometry.proto; every shape carries one Space.
- feature: Added LineSegment and Polyline messages to geometry.proto.
- feature: Added archived_at field (11) to EntityMetadata.
- feature: Added ValidateTags and MaxTagLength Go helpers for EntityMetadata.tags.
- feature: ValidateUUID now requires an RFC 9562-compliant value (Nil, Max, or the RFC 9562 variant with version 1-8). Breaking.
- debt: Renumbered Uri.user_info from 7 to 6. Breaking (wire).
- debt: Changed Uri.port from int32 to uint32; 0 means no port was given. Breaking (API).
- debt: Removed authority field from Uri. Breaking.
- debt: Removed Url message; use Uri. Breaking.
- debt: Changed GeometryType and CoordinateSystem from free-form string messages to enums. Breaking.
- debt: Changed Coordinate to carry only values; Point and Polygon now carry a Space and Coordinates; Polygon is always closed. Breaking.
- debt: Removed Line and Polygon.is_closed from geometry.proto. Breaking.
- debt: Renamed Language.bcp47_tag to bcp47_tags and Geofence.polygon to polygons. Breaking (JSON and API).
- debt: Changed csharp_namespace from SixAfter.Types.V1.WellKnownTypes to SixAfter.Types.V1. Breaking (C# API).
- debt: Removed option cc_enable_arenas from all .proto files.
- debt: Removed the google.api.field_info UUID4 annotation from UUID.value and the googleapis and genproto dependencies.
- debt: Applied buf format to geospatial_location.proto.
- defect: Changed MapPoint.x and MapPoint.y from float to double. Breaking (wire).
- defect: Reshaped TimeZone to name, abbreviation, utc_offset (google.protobuf.Duration), daylight_saving, and central_coordinate; removed utc_offset_std, utc_offset_dst, and TimeZone.TimeOffset. Breaking (wire).
- defect: UUID.MarshalJSON now returns an error for a non-empty value that is not 16 bytes.
- defect: Updated Uri to cite RFC 3986 and UUID to cite RFC 9562.
- defect: Documented negative CompassHeading.true_heading, heading_accuracy, GeospatialLocation.course, and speed as invalid or unknown.
- defect: Documented that unset message fields mean unknown.
- defect: Corrected documentation for EntityMetadata.attributes, tags, and version, TimeZone.central_coordinate, CompassHeading, GeospatialLocation, Version, Country.numeric_code, and EmailAddress.
- defect: Updated UUID helper doc comments to cite RFC 9562 and the Go standard library uuid package.
- defect: Fixed make proto-format to run from the module root and added CHECK=true.
- defect: Fixed make proto-docs to find buf.gen.docs.yaml; generated docs are ignored by git.
@mprimeaux mprimeaux self-assigned this Sep 29, 2026
@mprimeaux mprimeaux added kind: debt Accumulated impediments that slow our ability to evolve. priority: high labels Sep 29, 2026
@mprimeaux
mprimeaux merged commit b5a2b4f into main Sep 29, 2026
1 check passed
@mprimeaux
mprimeaux deleted the debt/cleanup branch September 29, 2026 23:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

kind: debt Accumulated impediments that slow our ability to evolve. priority: high

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant