Skip to main content

Module identity

Module identity 

Source
Expand description

Per-conversion identity banner — executable name, version, git revision and exact start time, logged once at the head of every conversion so any log names the precise binary and moment that produced it.

Faithful to Perl LaTeXML, which logs Note("$LaTeXML::IDENTITY processing $source") at each conversion start (bin/latexml L83). $IDENTITY is "$FindBin::Script ($LaTeXML::FULLVERSION)" (LaTeXML.pm L40) — the invoked script’s basename plus "LaTeXML version <v>; revision <sha>", the revision filled into Version.pm by make. We mirror that (revision embedded by build.rs instead of make) and additionally stamp the exact wall-clock start time, which Perl only emits under --verbose (processing started …).

Generic across every front-end: Converter::convert emits it for latexml_oxide and cortex_worker, and latexmlmath_oxide (a separate digest path) emits it directly. The executable name is read from argv[0] at runtime, so each binary self-identifies without per-binary wiring.

Constants§

GIT_REVISION
Short git revision of the source that built this binary, embedded by build.rs ("unknown" off a checkout with no .git and no LATEXML_GIT_SHA override). Perl’s $LaTeXML::Version::REVISION.
VERSION
This crate’s version (latexml_oxide) — the emulated engine’s own version, NOT the Perl LaTeXML version it targets. Full CARGO_PKG_VERSION, keeping any -rc pre-release suffix (a log should reveal an rc); the bare-X.Y.Z form for BookML’s version gate is crate::core_interface::LATEXML_VERSION.

Functions§

executable_name
Basename of the invoked executable — Perl’s $FindBin::Script (latexml_oxide, cortex_worker, latexmlmath_oxide, …). Read from argv[0] so each binary self-identifies; "latexml-oxide" when argv is empty or unreadable (e.g. an embedder driving Converter directly).
identity_banner
The one-line identity banner, e.g. latexml_oxide (latexml-oxide 0.9.0; revision a1b2c3d) started 2026-08-21 14:32:05 -0400.