You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 line
1.9KB

  1. {
  2. "type": "object",
  3. "description": "DDS Package Manifest",
  4. "additionalProperties": false,
  5. "patternProperties": {
  6. "^\\$": {}
  7. },
  8. "required": [
  9. "name",
  10. "version",
  11. "namespace"
  12. ],
  13. "properties": {
  14. "name": {
  15. "type": "string",
  16. "description": "The name of the package",
  17. "pattern": "^[a-z][a-z0-9_]*((\\.|-)[a-z0-9_]+)*$"
  18. },
  19. "version": {
  20. "type": "string",
  21. "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$",
  22. "description": "The version of the package. Must be a valid Semantic Version string.",
  23. "default": "0.1.0"
  24. },
  25. "namespace": {
  26. "type": "string",
  27. "description": "The package's namespace. Must be a valid string.",
  28. "pattern": "^[a-z][a-z0-9_]*((\\.|-)[a-z0-9_]+)*$"
  29. },
  30. "$schema": {
  31. "type": "string",
  32. "description": "JSON schema tag. Ignored by dds."
  33. },
  34. "depends": {
  35. "type": "object",
  36. "patternProperties": {
  37. "^[a-z][a-z0-9_]*((\\.|-)[a-z0-9_]+)*$": {
  38. "type": "string",
  39. "description": "The version of the dependency. Must be a valid Semantic Version string",
  40. "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$"
  41. }
  42. }
  43. },
  44. "test_driver": {
  45. "type": "string",
  46. "default": "Catch-Main",
  47. "enum": [
  48. "Catch-Main",
  49. "Catch"
  50. ]
  51. }
  52. }
  53. }