From ae1c8cc9c9d8a8d742db9d217dcfebe1d4e86470 Mon Sep 17 00:00:00 2001 From: Steve Winslow Date: Tue, 23 Oct 2018 13:53:27 -0400 Subject: Move docs and testdata outside of v0 (#18) Signed-off-by: Steve Winslow --- docs/builder-assumptions.md | 6 ++++++ docs/idsearcher-assumptions.md | 13 ++++++++++++ docs/tvloader-assumptions.md | 47 ++++++++++++++++++++++++++++++++++++++++++ docs/tvsaver-assumptions.md | 14 +++++++++++++ 4 files changed, 80 insertions(+) create mode 100644 docs/builder-assumptions.md create mode 100644 docs/idsearcher-assumptions.md create mode 100644 docs/tvloader-assumptions.md create mode 100644 docs/tvsaver-assumptions.md (limited to 'docs') diff --git a/docs/builder-assumptions.md b/docs/builder-assumptions.md new file mode 100644 index 0000000..af08587 --- /dev/null +++ b/docs/builder-assumptions.md @@ -0,0 +1,6 @@ +SPDX-License-Identifier: CC-BY-4.0 + +The Document builder in `package builder` makes the following assumptions: + +- Symbolic links will be ignored and will not be included in the Document's Files (see + https://github.com/swinslow/spdx-go/issues/13). diff --git a/docs/idsearcher-assumptions.md b/docs/idsearcher-assumptions.md new file mode 100644 index 0000000..32b75e9 --- /dev/null +++ b/docs/idsearcher-assumptions.md @@ -0,0 +1,13 @@ +SPDX-License-Identifier: CC-BY-4.0 + +The short-form ID searcher in `package idsearcher` makes the following assumptions: + +- The searcher uses bufio.Scanner to scan the contents of each file, line by + line. If it encounters a line that is too large to fit within the buffer, it + will stop scanning that file. As a result, it will currently only pick up + short-form IDs that occur prior to such a line. + +- For PackageLicenseInfoFromFiles (in Package) and LicenseInfoInFile (in File), + an exception should be treated as a separate "license". For example, in the + expression `GPL-2.0-only WITH Classpath-exception-2.0`, each of `GPL-2.0-only` + and `Classpath-exception-2.0` will be listed separately. diff --git a/docs/tvloader-assumptions.md b/docs/tvloader-assumptions.md new file mode 100644 index 0000000..736e561 --- /dev/null +++ b/docs/tvloader-assumptions.md @@ -0,0 +1,47 @@ +SPDX-License-Identifier: CC-BY-4.0 + +The tag-value file loader in `package tvloader` makes the following assumptions: + +Document Creation Info +---------------------- +* The Document Creation Info section will always come first, and be completed + first. Although the spec may not make this explicit, it appears that this is + the intended format. Unless it comes first, the parser will not be able to + confirm what version of the SPDX spec is being used. And, "SPDXID:" tags are + used for not just the Document Creation Info section but also for others (e.g. + Packages, Files). + +Relationship +------------ +* Relationship sections will begin with the "Relationship" tag. + +Annotation +---------- +* Annotation sections will begin with the "Annotator" tag. + +Other License Info +------------------ +* Other License sections will begin with the "LicenseID" tag. + +* Any Other License section, if present, will come later than the Document + Creation Info section and after any Package, File and Snippet sections. + +* Additionally, any Other License section will not have Relationship or + Annotation sections. + +* An implication of the preceding two points is that the Other License sections + should be the final sections in a v2.1 tag-value document, unless it is + followed by a (deprecated as of v2.1) Review Information section. + +Review +------ +* Review sections will begin with the "Reviewer" tag. + +* Any Review section, if present, will come later than the Document Creation + Info section and after any Package, File, Snippet, and Other License sections. + +* Additionally, any Review section will not have Relationship or + Annotation sections. + +* An implication of the preceding two points is that the Review sections + should be the final sections in a v2.1 tag-value document. diff --git a/docs/tvsaver-assumptions.md b/docs/tvsaver-assumptions.md new file mode 100644 index 0000000..f210a8a --- /dev/null +++ b/docs/tvsaver-assumptions.md @@ -0,0 +1,14 @@ +SPDX-License-Identifier: CC-BY-4.0 + +The tag-value file saver in `package tvsaver` makes the following assumptions: + +Document Creation Info +---------------------- +* Mandatory fields will be treated the same way as optional fields; if they are + set to the empty string, they will be omitted. Thus, an invalid Creation Info + section (e.g. one that doesn't include a correct SPDXVersion field) will + result in outputting an invalid Creation Info section. + +Relationship +------------ +* Same comment as above re: optional fields, for RelationshipComment. -- cgit v1.2.3