| 1 | //! Annotations following the [OCI Annotations Spec]. |
| 2 | //! |
| 3 | //! The fields of these annotations are encoded into custom sections of |
| 4 | //! component binaries, and are explicitly compatible with the OCI Annotations |
| 5 | //! Spec. That enables Compontents to be encoded to OCI and back without needing |
| 6 | //! to perform any additional parsing. This greatly simplifies adding metadata to |
| 7 | //! component registries, since language-native component toolchains can encode them |
| 8 | //! directly into components. Which in turn can be picked up by Component-to-OCI |
| 9 | //! tooling to take those annotations and display them in a way that registries can |
| 10 | //! understand. |
| 11 | //! |
| 12 | //! For the files in this submodule that means we want to be explicitly |
| 13 | //! compatible with the OCI Annotations specification. Any deviation in our |
| 14 | //! parsing rules from the spec should be considered a bug we have to fix. |
| 15 | //! |
| 16 | //! [OCI Annotations Spec]: https://specs.opencontainers.org/image-spec/annotations/ |
| 17 | |
| 18 | pub use author::Author; |
| 19 | pub use description::Description; |
| 20 | pub use homepage::Homepage; |
| 21 | pub use licenses::Licenses; |
| 22 | pub use revision::Revision; |
| 23 | pub use source::Source; |
| 24 | pub use version::Version; |
| 25 | |
| 26 | mod author; |
| 27 | mod description; |
| 28 | mod homepage; |
| 29 | mod licenses; |
| 30 | mod revision; |
| 31 | mod source; |
| 32 | mod version; |
| 33 | |