docster/docster.cabal
Willem van den Ende bf6f82abe5 Replace makePDF with direct XeLaTeX processing to eliminate API mismatch
- Remove Text.Pandoc.PDF dependency and dummy Pandoc document
- Add direct xelatex invocation with temporary file handling
- Improve error reporting with LaTeX log file parsing
- Add temporary package dependency for proper temp file cleanup
- Maintain same external API while cleaning internal architecture
- Eliminate architectural mismatch between our pipeline and Pandoc's expectations

The previous code used makePDF in a way that fought against its intended usage,
requiring a dummy Pandoc document. Now we directly call xelatex after our
custom LaTeX template processing, creating a cleaner separation of concerns.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-29 23:22:40 +02:00

61 lines
2.0 KiB
Plaintext

cabal-version: 3.0
name: docster
version: 0.1.0.0
synopsis: A self-contained CLI tool that converts Markdown with Mermaid diagrams to PDF/HTML
description: Docster converts Markdown documents containing Mermaid diagrams into PDF or HTML files
using Pandoc and Mermaid CLI. It automatically renders Mermaid code blocks to SVG
and embeds them in the output.
homepage: https://github.com/yourusername/docster
license: BSD-3-Clause
license-file: LICENSE
author: Your Name
maintainer: your.email@example.com
category: Text
build-type: Simple
extra-doc-files: README.md
common warnings
ghc-options: -Wall
-Wcompat
-Widentities
-Wincomplete-record-updates
-Wincomplete-uni-patterns
-Wmissing-export-lists
-Wmissing-home-modules
-Wpartial-fields
-Wredundant-constraints
library
import: warnings
exposed-modules: Docster.Types
Docster.Mermaid
Docster.Transform
Docster.LaTeX
Docster.Compiler
hs-source-dirs: src
build-depends:
base >=4.21 && <5,
text >=2.0 && <2.2,
filepath >=1.4 && <1.6,
directory >=1.3 && <1.4,
process >=1.6 && <1.7,
hashable >=1.4 && <1.6,
pandoc >=3.0 && <3.2,
pandoc-types >=1.23 && <1.25,
bytestring >=0.11 && <0.13,
temporary >=1.3 && <1.4
default-language: Haskell2010
executable docster
import: warnings
main-is: Main.hs
hs-source-dirs: app
build-depends:
base >=4.21 && <5,
text >=2.0 && <2.2,
docster
default-language: Haskell2010
ghc-options: -threaded
-rtsopts
-with-rtsopts=-N