From 8710ccf0efc32f7cb31e02bbab879b2d14652b23 Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Tue, 14 Jul 2026 17:08:41 +0200 Subject: [PATCH] Add CHANGELOG.md, linted with heylogs in CI Document the 0.1.0 surface in Keep a Changelog format and gate it with the same heylogs check latex-conv uses, so the changelog stays well-formed. Co-Authored-By: Claude Fable 5 --- .github/workflows/check.yml | 13 +++++++++++++ CHANGELOG.md | 22 ++++++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 CHANGELOG.md diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 68186a7..ac9f9e8 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -44,3 +44,16 @@ jobs: path: | build/reports/tests/test/ build/test-results/test/ + + # Lints CHANGELOG.md against the Keep a Changelog format + changelog: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v7 + with: + show-progress: 'false' + - name: Lint CHANGELOG.md + uses: jbangdev/jbang-action@v0.140.1 + with: + script: com.github.nbbrd.heylogs:heylogs-cli:0.19.1:bin + scriptargs: "check --rule dot-space-link-style:ERROR --format github-actions CHANGELOG.md" diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..5f8c8c1 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,22 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +## [0.1.0] - 2026-07-14 + +### Added + +- HTML-to-node rendering (`HtmlToNode.render`): renders the HTML subset produced by [JabRef](https://github.com/JabRef/jabref)'s entry preview — user-defined layouts, CSL output from [citeproc-java](https://github.com/michel-kraemer/citeproc-java), Markdown from [flexmark-java](https://github.com/vsch/flexmark-java), and `` search highlights — as plain JavaFX `TextFlow`, `Text`, and `ImageView` nodes with no dependency on `javafx.web` or `javafx.controls`. +- `HtmlView` (a `VBox`) and the intermediate block/inline model (`HtmlToNode.parse`) for consumers that want to inspect or post-process the parsed structure before rendering. +- `HtmlRenderOptions` for configuring rendering, including a base URI for resolving relative image and link URLs (and `withoutBaseUri()` to opt out). +- Mouse text selection across rendered blocks in the plain-node renderer. +- RichTextArea-based renderer (`RichHtmlView`, `HtmlRichTextArea`, `RichTextRenderer`) with inline images, link hovering (hand cursor), and content-height sizing. It requires the `jfx.incubator.richtext` and `jfx.incubator.input` incubator modules, declared as `requires static`. +- The module is null-marked with [JSpecify](https://jspecify.dev/) annotations. + +[Unreleased]: https://github.com/JabRef/html-to-node/compare/v0.1.0...HEAD +[0.1.0]: https://github.com/JabRef/html-to-node/releases/tag/v0.1.0