Version 0.1.2 behavior is documented here. Thesupport record separates local verification frompublished MoonX behavior; moonx examples use registry releases.
Compare two regular files, using - for stdin. Normal output identifiesinserted, deleted and changed lines; -u/-U selects unified output and-c/-C selects context output, with three context lines by default.
moonx cli/diff old.txt new.txt
moonx cli/diff -u --label old --label new old.txt new.txt
-q/--brief reports differences without a patch. -s/--report-identical-filesreports equal files. -a/--text treats NUL-containing inputs as text, preservingNUL and malformed UTF-8 bytes. Repeated --label options set the displayedleft and right names, including brief, identical and binary reports.
Exit status is 0 for identical files, 1 for a difference, and 2 for an inputor option error. Directory recursion, whitespace transformations, and localecollation are outside this release. Timestamp headers honor TZ, TZDIR,64-bit TZif transitions and explicit POSIX DST rules, including dates after2038. With no TZ, the host's /etc/localtime is used. Missing timezonedata is an error. Unified output uses ISO timestamps and context output uses thetraditional weekday/month/day format. Use --label for stdin or hosts withouta timezone database. --help and --version are available.Both files are buffered. Edit-trace storage grows with the number of changes;this first version is intended for modest text files, not large unrelatedinputs. Different equally short edit scripts can select different hunk boundaries.
Standalone --version prints exactly diff 0.1.2 followed by onenewline. Standalone --help starts with Usage: diff, lists bothmetadata options, and ends with a newline. Both write to stdout, leave stdinunread, and exit with status 0. Exact-version publication and verificationremain recorded separately in the support record.