tree: ce9a2b8a6ce587cb8c76dc1c6a973f3c614fad55 [path history] [tgz]
  1. golden/
  2. src/
  3. test_data/
  4. 3p_rust_library.json
  5. banjo_library.json
  6. bind_library.json
  7. BUILD.gn
  8. cc_prebuilt_library.json
  9. cc_source_library.json
  10. common.json
  11. companion_host_tool.json
  12. dart_library.json
  13. data.json
  14. documentation.json
  15. emu_manifest.json
  16. experimental_python_e2e_test.json
  17. ffx_tool.json
  18. fhcp_tests.json
  19. fidl_library.json
  20. hardware-f6f47515.json
  21. host_tool.json
  22. loadable_module.json
  23. manifest.json
  24. package.json
  25. README.md
  26. sysroot.json
  27. version.gni
  28. version_history-22rnd667.json
  29. virtual_device-93A41932.json
build/sdk/meta/README.md

SDK metadata schemas

This directory contains JSON schemas for metadata files added to SDKs. These schemas are included in SDKs under //meta/schemas.

New schemas may only be added if given express permission from sdk-dev@fuchsia.dev. New schemas must be added to the schema list in BUILD.gn to ensure future compatibility. Thus, a corresponding golden file for each new schema needs to be created under /golden.

Versioning

In order to help consumers of the SDK adjust to metadata changes, each SDK embeds an opaque version number for its metadata schema. This version number is specified in version.gni and can be found in SDKs in //meta/manifest.json.

Changes to schemas that require some consumer action should be accompanied by an increment of this version number. Such changes include:

  • adding a new property;
  • changing a property from required to optional;
  • renaming a property;
  • changing a property's type;
  • adding a schema for a new SDK element type.

Testing

Run unit tests with:

fx test host_x64/sdk_metadata_lib_test