From 9f91e5447c3fb1b06e6730ca1068274f4117a9fb Mon Sep 17 00:00:00 2001 From: Ralf Handl Date: Tue, 4 Mar 2025 11:58:38 +0100 Subject: [PATCH 1/2] Google Tag Manager - move script as far up as possible - remove GTM stuff added by respec build --- scripts/md2html/build.sh | 13 ++++++++----- scripts/md2html/md2html.js | 11 ++++++----- tests/md2html/fixtures/basic-new.html | 9 +++++++-- tests/md2html/fixtures/basic-old.html | 9 +++++++-- 4 files changed, 28 insertions(+), 14 deletions(-) diff --git a/scripts/md2html/build.sh b/scripts/md2html/build.sh index b40a1a12e2..68bedf9bc6 100755 --- a/scripts/md2html/build.sh +++ b/scripts/md2html/build.sh @@ -52,12 +52,16 @@ for specification in $specifications; do minorVersion=${version:0:3} tempfile="$deploydir/temp/$version.html" + tempfile2="$deploydir/temp/$version-2.html" echo === Building $version to $destination node scripts/md2html/md2html.js --maintainers $maintainers $specification "$allVersions" > $tempfile - npx respec --no-sandbox --use-local --src $tempfile --out $destination - rm $tempfile + npx respec --no-sandbox --use-local --src $tempfile --out $tempfile2 + # remove unwanted Google Tag Manager and Google Analytics scripts + sed -e 's/'; - preface += ``; - preface += fs.readFileSync(path.resolve(__dirname,'./analytics/google.html'),'utf8'); - preface += ''; + preface += `\n`; + preface += '\n'; preface += '

OpenAPI Specification v30.0.1

What is the OpenAPI Specification?

The OpenAPI Specification (OAS) defines a standard, programming language-agnostic interface description for HTTP APIs, which allows both humans and computers to discover and understand the capabilities of a service without requiring access to source code, additional documentation, or inspection of network traffic. When properly defined via OpenAPI, a consumer can understand and interact with the remote service with a minimal amount of implementation logic. Similar to what interface descriptions have done for lower-level programming, the OpenAPI Specification removes guesswork in calling a service.

Status of This Document

The source-of-truth for this specification is the HTML file referenced above as This version.
+ +OpenAPI Specification v30.0.1 | Introduction, Definitions, & More + + +

OpenAPI Specification v30.0.1

What is the OpenAPI Specification?

The OpenAPI Specification (OAS) defines a standard, programming language-agnostic interface description for HTTP APIs, which allows both humans and computers to discover and understand the capabilities of a service without requiring access to source code, additional documentation, or inspection of network traffic. When properly defined via OpenAPI, a consumer can understand and interact with the remote service with a minimal amount of implementation logic. Similar to what interface descriptions have done for lower-level programming, the OpenAPI Specification removes guesswork in calling a service.

Status of This Document

The source-of-truth for this specification is the HTML file referenced above as This version.

Heading 1

Text for first chapter

Version 30.0.1

diff --git a/tests/md2html/fixtures/basic-old.html b/tests/md2html/fixtures/basic-old.html index dbf39375bd..c0beda2755 100644 --- a/tests/md2html/fixtures/basic-old.html +++ b/tests/md2html/fixtures/basic-old.html @@ -1,4 +1,5 @@ -OpenAPI Specification v30.0.1 | Introduction, Definitions, & More + + -

OpenAPI Specification v30.0.1

What is the OpenAPI Specification?

The OpenAPI Specification (OAS) defines a standard, programming language-agnostic interface description for HTTP APIs, which allows both humans and computers to discover and understand the capabilities of a service without requiring access to source code, additional documentation, or inspection of network traffic. When properly defined via OpenAPI, a consumer can understand and interact with the remote service with a minimal amount of implementation logic. Similar to what interface descriptions have done for lower-level programming, the OpenAPI Specification removes guesswork in calling a service.

Status of This Document

The source-of-truth for this specification is the HTML file referenced above as This version.
+ +OpenAPI Specification v30.0.1 | Introduction, Definitions, & More + + +

OpenAPI Specification v30.0.1

What is the OpenAPI Specification?

The OpenAPI Specification (OAS) defines a standard, programming language-agnostic interface description for HTTP APIs, which allows both humans and computers to discover and understand the capabilities of a service without requiring access to source code, additional documentation, or inspection of network traffic. When properly defined via OpenAPI, a consumer can understand and interact with the remote service with a minimal amount of implementation logic. Similar to what interface descriptions have done for lower-level programming, the OpenAPI Specification removes guesswork in calling a service.

Status of This Document

The source-of-truth for this specification is the HTML file referenced above as This version.

Heading 1

Text for first chapter

Version 30.0.1

From 41b6657ae34bce7d3403044e1f234e5508b9f524 Mon Sep 17 00:00:00 2001 From: Ralf Handl Date: Thu, 13 Mar 2025 21:29:11 +0100 Subject: [PATCH 2/2] Update CONTRIBUTING.md --- CONTRIBUTING.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f7b8200a44..a206f945ba 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -163,6 +163,19 @@ This might apply to, for example, Markdown files, automation, and scripts. For all pull requests, if they should not be merged yet for any reason (they depend on something else, you would like feedback from a specific reviewer), mark them as draft and they will not be merged while in that state. Draft pull requests can still be reviewed while in draft state. +### Preview specification HTML locally + +The markdown source files are converted to HTML before publishing. +To do this locally, please + +1. Install [Node.js](https://nodejs.org/) +2. Check out this repo, go to the repo root, and switch to a development branch +3. Execute `npm install` (once, repeat after merging upstream changes) +4. Execute `npm run build-src` after changing `src/oas.md` (this first executes `npm run validate-markdown`, which can also be run separately) +5. Open output file `deploy-preview/oas.html` with a browser and check your changes + +Please make sure the markdown validates and builds using the above steps before creating a pull request or marking a draft pull request as ready for review. + ## Reviewers > [!NOTE]