# HG changeset patch # User František Kučera # Date 1569090891 -7200 # Node ID 413a00a9cde748518eaa966026376532516ca986 # Parent c5c8ebd81be8305eab34cef3554e5459cf38b104 merge two sections into Semantic versioning and upgrades + remove obvious requiremts/recommendations + rename the compatibility section diff -r c5c8ebd81be8 -r 413a00a9cde7 Makefile --- a/Makefile Sat Sep 21 19:52:04 2019 +0200 +++ b/Makefile Sat Sep 21 20:34:51 2019 +0200 @@ -37,7 +37,7 @@ # Prints a table with number of items in particular chapters: statistics: - cat ssm.en.xml \ + cat text/ssm.en.xml \ | relpipe-in-xmltable \ --namespace "m" "tag:globalcode.info,2019:sane-software/manifesto" \ --relation "chapter" \ diff -r c5c8ebd81be8 -r 413a00a9cde7 text/ssm.en.xml --- a/text/ssm.en.xml Sat Sep 21 19:52:04 2019 +0200 +++ b/text/ssm.en.xml Sat Sep 21 20:34:51 2019 +0200 @@ -93,7 +93,7 @@ - Semantic versioning + Semantic versioning and upgrades aa8bd952-842b-4391-aefe-d9b3750e432d a8beddfc-11e3-4012-9f88-f79dc88eee16 @@ -122,20 +122,6 @@ The released version e.g. 2.3.1 should be tagged as v2.3.1 and be placed in the v_2.3 branch. Where the v_2.3 branch was forked from the v_2 branch – from the v2.3 tag. - - - - - Compatible with itself - d626bb57-a20a-4182-a88a-446e901e9de4 - - a9852300-c59a-4bda-86a1-3a90d2ee1b74 - Focus on backward compatibility. Newer version should work as a drop-in replacement. - - - f9b07d6c-da34-4971-8a92-a50b3e9f80ff - Do not break things – rather postpone the release date than deliver a faulty product. - ae33d206-4988-44ec-b8e2-3120019fcf2f Do not remove features unless they are really obsolete, unused or unrepairably broken. @@ -146,7 +132,7 @@ ba8fecf0-5c02-4fdf-abdc-2650d428f82a - Incompatible changes must be planned and announced in advance. + Incompatible changes must be planned and announced in advance. f4826891-e732-45e8-b929-25d1182fa141 @@ -155,32 +141,28 @@ - - Compatible with others + Interfaces, formats and protocols d34ce339-197c-44ee-9e5c-6d7e212f8c10 be4c72d1-c494-4c44-aeb4-c5847f5a3524 - use open standards (protocols, formats) if they exist + Open standards (protocols, formats) should be used if they exist. b2202690-8a6c-467f-a2b1-b154f470aa77 - never extend nor modify existing open protocol/format in the way which effectively creates a proprietary protocol/format + Already existing open protocol/format must not be modified or extended in a way which effectively creates a proprietary protocol/format. dd206223-9525-4229-be2b-84b07c2b8244 - define and publish own open standards if needed - - f24d45b0-a07c-45d8-820e-63a3b95ba3f6 - also standards must be semantically versioned - - - d341b78e-15b9-4077-8b48-9e54c93391ac - should be written in machine readable format (WSDL, WADL, ASN.1, XSD, Diameter dictionary, D-Bus etc.) or at least formal language (Backus–Naur Form, EBNF etc.) - - - d61b3e31-bb9f-4333-87c8-9fb32f33a49d - also configuration should have machine readable description and should be testable by executing a command - + New open standards (specifications) should be defined and published if needed. + Such standards must be semantically versioned. + + + d341b78e-15b9-4077-8b48-9e54c93391ac + And they should be written in machine readable format (e.g. WSDL, WADL, ASN.1, XSD, Diameter dictionary, D-Bus) or at least formal language (Backus–Naur Form, EBNF etc.) + + + d61b3e31-bb9f-4333-87c8-9fb32f33a49d + Also configuration should have machine readable description and the user should be able to test it by executing a command (validator).