Skip to content

Fix output & push image to docker hub - #12

Merged
pongee merged 16 commits into
mainfrom
output
Jul 28, 2026
Merged

Fix output & push image to docker hub#12
pongee merged 16 commits into
mainfrom
output

Conversation

@pongee

@pongee pongee commented Jul 28, 2026

Copy link
Copy Markdown
Owner

No description provided.

pongee and others added 16 commits July 28, 2026 17:02
Render the <<table>> stereotype in the PlantUML output (stop hiding
stereotypes) so tables are labelled, and shift the Markdown template
down one heading level (## Tables, ### table, #### sections) so the
output embeds cleanly under a document title.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Regenerate the .puml and .md outputs for sakila and airportdb from the
updated PlantUML and Markdown templates, and align the Markdown template
test fixtures with the new heading levels.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Replace the [\t]/[\n] sentinel markers and the post-render whitespace
regex/strtr in the Plantuml exporter with native Twig whitespace control
(auto-stripped newlines after block tags plus {%- -%} trims) and literal
tabs/blank lines in the template. The rendered output is byte-identical
for both example schemas, so the exporter no longer needs any
post-processing.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Replace the !ifndef/!define guard blocks with the modern preprocessor
!$var ?= "..." conditional-assignment operator and reference the colors
through their $ variables. Users can still override the colors by
defining $table_border_color / $table_background_color beforehand.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Align the $connection_one_to_one / $connection_one_to_many procedure
bodies with the other procedures by tab-indenting them, and regenerate
the example .puml outputs.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Generate example/output/<db>/<db>.json via mysql:json so every bundled
output format (json, plantuml, markdown) has a rendered example.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The Markdown template already emits flush-left, single-blank-line output
with a trailing newline, so the leading-whitespace strip, blank-line
collapse and trailing-newline normalization were dead for the bundled
template (and the whitespace strip would corrupt intentional indentation
in a custom template). Export now returns the rendered output directly,
matching the PlantUML exporter. Align the export test with the raw render
(no injected trailing newline).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Feed the PlantUML source to the jar on stdin and read the rendered image
from stdout via proc_open and the PlantUML -pipe mode, instead of writing
a temporary .puml source file, shelling out with a -output folder and
reading back a temporary image file. This drops the temp-file round trip
and the whole output-folder dependency (ImageGenerator no longer takes an
output folder; ImageCommand no longer passes a tmp dir).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Re-render the sakila and airportdb PNG/SVG outputs so they reflect the
current template: the <<table>> stereotype label and the ?= default
table colors. Generated through the local Docker image (which bundles the
Java runtime) via the -pipe image path.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Switch the PlantUML invocation to the verbose flags --pipe and
--format <type> (from -pipe / -t<type>) and assemble the command as a
one-argument-per-line array so each parameter is spelled out and easy to
read. The rendered output is byte-identical to the short-flag form.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Accept the ImageType enum in the ImageGenerator constructor instead of a
bare string and read ->value only where the CLI flag is built, so the
type is validated at the boundary. ImageCommand::getImageType now returns
the enum directly.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…changes

Record the Markdown heading-level shift, the PlantUML table stereotype,
the ?= color variables, the -pipe image rendering and the Markdown
exporter cleanup made on top of the released 5.0.0.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Release the template and image-rendering changes made on top of 5.0.0 as
5.1.0: the Markdown heading-level shift, the PlantUML table stereotype,
the ?= color variables, the --pipe image rendering and the Markdown
exporter cleanup.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Point the build workflow's image at pongeepublic/database-schema-visualization
and log in to Docker Hub (default registry) with the pongeepublic user and
the GITHUB_DATABASE_SCHEMA_VISUALIZATION secret as the password/token,
dropping the ghcr.io registry, the github.actor/GITHUB_TOKEN login and the
now-unneeded packages: write permission. Update the README pull/run
commands and the registry note accordingly.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Take the Docker Hub username from the DOCKER_HUB_USERNAME_FOR_GITHUB_DATABASE_SCHEMA_VISUALIZATION
variable and the token from the DOCKER_HUB_PASSWORD_FOR_GITHUB_DATABASE_SCHEMA_VISUALIZATION
secret, instead of hardcoding the user and using a GITHUB_-prefixed secret
name (which GitHub Actions does not allow).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Drop the removed output-folder argument from the ImageGenerator example
and pass ImageType::Png instead of the raw 'png' string (the constructor
now takes the ImageType enum and no longer writes temp files), and rename
the per-export parser variables to a single $parser.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@pongee
pongee merged commit d5dced6 into main Jul 28, 2026
2 checks passed
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.

1 participant