Skip to content

Conversation

@julioest
Copy link

@julioest julioest commented Feb 28, 2025

  • create Docker image v4 based on Ubuntu Noble (24.04)
  • add highlight.js 9.18.3 via npm
  • update image name to cppalliance/boost_superproject_build:24.04-v4

CC @sdarwin

@julioest julioest marked this pull request as ready for review February 28, 2025 04:56
@sdarwin
Copy link
Contributor

sdarwin commented Feb 28, 2025

cppalliance/boost_superproject_build:24.04-v4 uploaded to Docker Hub. The image exists and may be used in testing.

It raises a question though: does asciidoctor need a (local) copy of the node package highlight.js to process files? Will it use the local highlight.js?

Maybe this docker image will turn out to be unnecessary. If so, we can stay on 24.04-v3.

@julioest
Copy link
Author

Not sure if this answers your question, but it seems that we can decide on whether we need it locally vs CDN (default).

https://docs.asciidoctor.org/asciidoctor/latest/syntax-highlighting/highlightjs/#activate-highlight-js

By default, Asciidoctor will link to the highlight.js library and stylesheet hosted on cdnjs. The version of the highlight.js library Asciidoctor loads from the CDN only includes support for languages in the common language bundle (apache, bash, coffeescript, cpp, cs, css, diff, http, ini, java, javascript, json, makefile, markdown, nginx, objectivec, perl, php, properties, python, ruby, shell, sql, xml, and yaml).

If we wanted to use a personal copy of a custom highlight.js build:
https://docs.asciidoctor.org/asciidoctor/latest/syntax-highlighting/highlightjs/#use-a-custom-highlight-js-library

@sdarwin
Copy link
Contributor

sdarwin commented Feb 28, 2025

There are distinct topics:

  1. building the docs (that happens in release-tools)

  2. Consuming the docs (after they have already been uploaded to boost.io, and now visitors see them)

Perhaps "personal copy of a custom highlight.js build" is focused more on the second point, which is about viewing the docs.

In terms of the first part (building the docs), this is the question: if anything is needed at all? Maybe asciidoctor has built-in support for generating highlights so npm packages aren't needed.

If that's uncertain we can test with 24.04-v4 and then go back to 24.04-v3, comparing them.

@julioest
Copy link
Author

julioest commented Mar 17, 2025

if anything is needed at all? Maybe asciidoctor has built-in support for generating highlights so npm packages aren't needed.

I believe it has built-in support. Because, in my experience working with asciidoctor (just building it on boostlook) I don't have to do anything in regards to npm packages.

In this case, does it make this PR irrelevant?

Oh, also, how could I compare the images? Locally?

@sdarwin
Copy link
Contributor

sdarwin commented Mar 18, 2025

how could I compare the images? Locally?

a simple test would be to run the new image cppalliance/boost_superproject_build:24.04-v4, with a mounted docker volume, build the docs inside the container, copy the docs out to the local machine via the volume, and compare the results to another set of docs. Inspect the asciidoctor pages. Are they correct?

does it make this PR irrelevant?

It may be this PR is irrelevant. In which case, it can be closed. No rush though. Ultimately the published tag 24.04-v4 can even be overwritten later. But it was useful to demonstrate "how to add packages to the release builds", which might be needed sometimes.

@sdarwin sdarwin force-pushed the develop branch 2 times, most recently from 2193c73 to 4b5a25e Compare July 3, 2025 10:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants