Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Seeding the SARIF v2.2 workplace - separating source and deliverables #599

Merged

Conversation

sthagen
Copy link
Contributor

@sthagen sthagen commented Aug 5, 2023

Still not requesting a merge into the baseline, but mirroring the experimental branch of my fork in the main repo on a feature branch with the same name.
Rationale: Make the exploration more visible to encourage a wider feedback.

The user facing "GFM+gh_cosmetics" delivery item sarif-2.2/prose/sarif-v2.2-editor-draft.md (huge single file online rendition of markdown plus HTML work arounds) can be generated already as is from the source files below sarif-2.2/prose/edit/src/ with the binder definition in sarif-2.2/prose/edit/etc/bind.txt, and the proof of concept filter at sarif-2.2/prose/edit/bin/volatile.py.

As of commit 59af4650a this will render like so: https://github.com/sthagen/oasis-tcs-sarif-spec/blob/versioned-spec-folders/sarif-2.2/prose/share/sarif-v2.2-draft.md

@sthagen will update the above direct link to the rendered "elephant" any time the head moves i.e. this branch is updated.

The history of the refactoring can be best traced at (freshest change on top):

The list of commits below this description in the pull request is ordered as freshest change at the bottom ... but otherwise identical (only more scrolling needed to follow).

Update: I started to derive a next generation SARIF base schema from the errata version to implements #580 (cf. sarif-2.2/schema/sarif-2-2.schema.json) which will resolve as link after merge.

Another update: I will provide a markdown version of v2.1 (very similar to the current seed candidate for v2.2) in the sarif-2.1 tree (to support the TC per the markdown discussion in meeting no. 81 on 2023-NOV-09 and the corresponding action).

And ...: A self-contained single-file HTML version is now available as derived from the Markdown in the sarif-2.2/prose/share/ folder. One can download (e.g. from https://git.sr.ht/~sthagen/oasis-tcs-sarif-spec/blob/versioned-spec-folders/sarif-2.2/prose/share/sarif-v2.2-draft.html) and read the draft in the browser (locally).

sthagen and others added 30 commits February 21, 2020 21:21
Sync Fork from Upstream Repo
Sync Fork from Upstream Repo
Sync Fork from Upstream Repo
Update 'latest' schema to match version submitted in call for consent.
Sync Fork from Upstream Repo
Sync Fork from Upstream Repo
- created a '#/$defs/guid' type
- referenced that type instead of duplicating the definition in nine places
- made the description in the single type definition of guid more generic

Signed-off-by: Stefan hagen <stefan@hagen.link>
- Added https://docs.oasis-open.org/templates/css/markdown-styles-v1.7.3a.css as of 2023-12-09
- Planned target name for adding to scripts and documents is style.css

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- Added the OData style customization adding local fonts
- Amended documentation

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- Removed the a revision of the OASIS offered stylesheet
- Renamed the b revision of the OData TC modified stylesheet to base-style.css
- Updated revision history / documentation

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- Added the skin-style.css file derived from pandoc styles and OASIS published docs look-alike definitions
- Amended documentation

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- Moved style folder within share to ease referenceing in HTML documents
- Simplified the names of the two style layer files
- Updated documentation

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- Added spike of HTML format
- Fixed metadata on titl epage in markdown output
- Amended skin stylesheet to offer table of content, title page, and comments in code blocks readability

Signed-off-by: Stefan Hagen <stefan@hagen.link>
Signed-off-by: Stefan Hagen <stefan@hagen.link>
- widened the section reference detect pattern to allow numbers (the conformance sections ...)
- harmonized the text around the table of content
- ensured identity of sarif-v2.2-editor-draft.md and share/sarif-v2.2-draft.md
- note: the html output is currently a tiny bit out of sync
- added some definitions to the bin/volatile.y script to please a linter

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- Added code to create a toc minting JSON file that allows generating a toc in any format
- note: this derivation logic and data structure prepares the automatic HTML derivation

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- added prose/edit/bin/png-logo-to-data-url.sh to convert PNG files to data-url format
  The goal is to inline into the resulting HTML delivery item for self contained and local use
  without reliance on the availability of the docs.oasis-open.org website
- added the converted OASIS logo to the media folder

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- Preparing tool use of tidy-html5 (https://github.com/htacg/tidy-html5) for
  post-inject-proessing HTML formating (and linting)
- Added adapted tidy configuration (from -export-config)
- Changed wrap value from 68 to 345 (allow sax like inspection of file)
- Enabled indent (for now) to help spot erroneous nesting etc.

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- Added the notices style class as observed in the wild

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- Added caveats and processing step descriptions to the folder README
- Note: Some things do not yet work as documented.

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- Added stream editing call to filter unwanted cdata sectioning of styles
- Fixed global bad html element name leakage in yet to be pushed toccata tool

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- The config option requires a configuration path which has been inserted

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- Added first working prototype of toccata.py which generates the table of contents
  and injects styles into the pandoc generated HTML (it also patches two blocking
  errors that are caused by pandoc and by our hacked up pseudo-Markdown

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- Added HTML customer facing delivery item generated as per the prose/README.md

Signed-off-by: Stefan Hagen <stefan@hagen.link>
- Removed the prose/sarif-v2.2-editor-draft.md which is a duplicate of the prose/share/sarif-v2.2-draft.md
  file and already confused visitors as what to consider

Signed-off-by: Stefan Hagen <stefan@hagen.link>
Copy link
Contributor

@dmk42 dmk42 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for doing this!

The decision to organize this way belongs to the editors, and I am approving on that basis.

@sthagen sthagen merged commit 2bd2648 into oasis-tcs:versioned-spec-folders May 2, 2024
@sthagen sthagen deleted the versioned-spec-folders branch May 2, 2024 17:33
sthagen added a commit that referenced this pull request May 2, 2024
- merged pull request #599 content
- updated with content of main accumulated since branch-off of the
  feature branch

Signed-off-by: Stefan Hagen <stefan@hagen.link>
sthagen added a commit that referenced this pull request May 2, 2024
…#599) (#633)


- moved 2.1 artifacts into the new v2.1 tree
- created v2.2 tree
- transformed v2.1.0 errata 01 word document into markdown
- created edit folder to split edit and publish experience to support consistency and automated test of all workproducts of a SARIF version
- fixed format errors from transformation and splits
- identified and fixed syntax errors in examples
- transformed html tables to markdown for mime type to suffixes mapping
- made alignment of header and data cells consistent
- added git attributes file to ease end of line across platforms
- added git ignore file for local names, envs, and configs
- added editor config ensuring trailing spaces are left, indent is per space, etc.
- derived labels for the 60+ 'general' sections from path
- better semantics for the labels of non-unique sections by
  replacing the counter scheme with the parentsection--general derivation
- the trnsform of labels from the proprietary format to markdown
  left us with meaningless stem-counter form labels.
  Separating the problem of context dependent section titles from
  the form of labels a script detected all such labels, identified
  the counter less stem label too, and then replaced all such section labels
  as well as the matching refs in the text with context free and semantic
  parentsec--stem form labels (and refs).
- replaced typographical with ASCII doublequotes
  rendering backends can deal with typographical doublequotes very well.
  No need to risk selecting the wrong quote character out of three possible
  characters when the backends can handle that more consistently.
- separated main sections into dedicated files
- added special YAML metadata to appendix sections
- removed all explicit section numbering
- kept only the labels where these are amended to keep the unique
  This means all other section labels follow the usual kebab slugification
  of the section title text
- the references are mapped to a definition list and the 'creative' labels
  require single case analysis (no need to slugify dashes to underscores
  and the ISO citations varying always follow effective and onl a specific
  year edition (even if correct) need not be reflacted in labels.
- completed initial segmentation of editable source files
- added a binder file (bind.txt) for tooling to concat section files in order
- new source topology for editable files
- created bin, etc, src, and test folders
- moved sources to src, binder file to etc, made bin and etc dirs python packages
- updated the developer docs (README.md)
- added a spell check configuration (etc/vale.ini) to use as vale --config etc/vale.ini *.md
- fixed spelling errors found in developer docs
- more readable and structured developer docs (README.md) in sarif-2.2/prose/edit
- added build dir to git ignores as these shall be local only

Signed-off-by: Stefan hagen <stefan@hagen.link>
Signed-off-by: Stefan Hagen <stefan@hagen.link>
Co-authored-by: Craig Schlaman <v-crschlaman@microsoft.com>
Mikaciu pushed a commit to Mikaciu/checkov that referenced this pull request May 14, 2024
Mikaciu pushed a commit to Mikaciu/checkov that referenced this pull request May 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Provide a SARIF v2.2 Seed Prose by Transcribing the v2.1.0 Errata 01 Prose to Markdown
3 participants