Skip to content

Commit

Permalink
Merge pull request #1486 from MVrachev/change-adr8
Browse files Browse the repository at this point in the history
ADR 8: change "Decision outcome"
  • Loading branch information
Jussi Kukkonen committed Sep 8, 2021
2 parents 02d4f42 + 1ba8125 commit 5714885
Showing 1 changed file with 9 additions and 2 deletions.
11 changes: 9 additions & 2 deletions docs/adr/0008-accept-unrecognised-fields.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,19 +33,26 @@ intermediate operations:

then, the checksum (the content) of the file must not be changed.
- Flexibility to add new fields in the spec without adding breaking changes.
- Don't store unrecognized fields when it is not allowed by the specification.

## Considered Options
- Ignore and drop unrecognized fields.
- Ignore, but store unrecognized fields as an additional attribute.
- Ignore, but store unrecognized fields as an additional attribute
except for a couple of places where it's not allowed by the specification.

## Decision Outcome

Chosen option: "Ignore, but store unrecognized fields as an additional
attribute."
Chosen option: "Ignore, but store unrecognized fields as an additional attribute
except for a couple of places where it's not allowed by the specification."
The motivation for this decision is that the TUF specification already implies
that we should accept unrecognized fields for backward compatibility and easier
future extensibility.

Additionally, it seems unacceptable to change a metadata file content just by
reading and writing it back.

There are exceptions however for places in the metadata format when it is not
allowed by specification: keys, roles, meta, hashes, and targets are
actual dictionaries (vs JSON objects that most structures in the format are)
where `unrecognized field` is not a meaningful concept.

0 comments on commit 5714885

Please sign in to comment.