# tectonic_engine_xetex 0.4.4 (2024-02-05) - Support aarch64-unknown-linux-musl as a cross-buildable architecture (#1089, @pkgw). This includes one of the gnarliest build hacks I've ever had to perpetrate, as documented in `xetex/xetex-engine-interface.c`. # tectonic_engine_xetex 0.4.3 (2023-06-12) - Address a C compiler warning (#1050, @pkgw). # tectonic_engine_xetex 0.4.2 (2023-05-18) - Remove the automatic insertion of paragraph tags in HTML mode (#1016, @pkgw). It turns out that in TeX's internals, the starts and ends of "paragraphs" occur much more frequently than is apparent in the document source. And TeXLive 2022 introduces new LaTeX-level hooks for paragraph starts and ends that align much better with linguistic paragraphs. (This is not a coincidence, since the LaTeX core team is being funded to add support for creating properly semantically tagged PDFs.) So, for HTML output going forward, we'll use those hooks, and then there's no need for paragraph tagging support to be built into the engine here. # tectonic_engine_xetex 0.4.1 (2022-10-04) - When emitting in HTML mode, express paragraphs with `
` (#941, @pkgw). This might seem wrong, but matches TeX's semantics better to the HTML specification, which is quite explicit that the `
` element does not have any special semantic meaning, and in fact recommends grouping semantic paragraphs with `
`, for instance, which does not align with TeX's view of things. # tectonic_engine_xetex 0.4.0 (2022-10-03) - Synchronize with TeXLive 2022.0 (#936, @pkgw)! Not many changes: - Update the internal TECKit to 2.5.11, corresponding to Unicode 14.0.0. - Update the engine format version to 33, which removes unused MLTeX `char_sub` parameters and expands the primitives table because we've passed 500 of them. - Update the XeTeX revision code to `.999994`. - Remove some vestigial MLTeX code related to the above. - Fix cleanup of TECKit in a few places - Other upstream changes are not relevant to Tectonic. - Remove C's `time_t` from internal FFI APIs to avoid portability issues. This should avoid issues with Linux Musl builds. # tectonic_engine_xetex 0.3.0 (2022-04-26) Update the XeTeX engine for TeXLive 2021 (#882, @pkgw). - Present as XeTeX revision 0.999993 - Update the XeTeX format specification to the new version 32 - Import [\Ucharcat update from 2018][ucc] that I seem to have missed before - Fixes for [TeX bugs][tex82] 430-440 - 430: not relevant to Tectonic (interactive features) - 431: not relevant to Tectonic (interactive features) - 432: skipped (date/time in system variables; no discernable impact on Tectonic) - 433: "After nine parameters, delete both # and the token that follows" — breaking change! - 434: Don't accept an implicit left brace after # in macro head - 435: Keep garbage out of the buffer if a |\read| end unexpectedly - 436: Zero out nonexistent chars, to prevent rogue TFM files - 437: Don't classify fraction noads as inner noads - 438: Properly identify tabskip glue when tracing repeated templates - 439: not relevant to Tectonic - 440: Normalize newlinechar when printing the final stats - Significant rework/improvement of OpenType math kerning and super/sub-scripting - Honor `PRIM_SIZE` correctly now that we have to change it! - Implement `\tracingstacklevels` - Guard against expansion depth overflow - When reporting "lost characters", provide hex/UCS codes - TECkit updated to TL21: version 2.5.10, upgrading from 2.5.9 - This updates Unicode character names and normalization data to 13.0.0 [ucc]: https://github.com/TeX-Live/xetex/commit/0b12b29abb4748a9a85cc3e195ad388eba0d674e [tex82]: https://ctan.math.utah.edu/ctan/tex-archive/systems/knuth/dist/errata/tex82.bug Also: - Allow `\openin` of `\openout` files to succeed (addresses #862, @pkgw). # tectonic_engine_xetex 0.2.0 (2022-02-28) - Use the new `tectonic_xetex_format` crate as part of the build process (#851, #848, @pkgw). This crate defines all of the metadata about the XeTeX engine internals, with versioning, and generates the necessary header files and macros. It also contains code for decoding XeTeX/Tectonic format files, so that we'll be able to introspect engine data structures such as macro definitions. - Plumb in some specials that will be used by the prototype HTML output mode (#865, @pkgw) - Tidy up some of the auto-generated C code - Fix an internal transcription error: `pre_display_direction`, not `pre_display_correction` - Fix a long-standing test issue with PNG image dimensions occasionally leading to not-quite-reproducible output (#847, @pkgw) # tectonic_engine_xetex 0.1.4 (2021-07-04) - Avoid misplaced newlines in warning output ([#803], [@ralismark]) - Fix new warnings reported by Clippy 1.53.0 [#803]: https://github.com/tectonic-typesetting/tectonic/pull/803 [@ralismark]: https://github.com/ralismark # tectonic_engine_xetex 0.1.3 (2021-06-17) - Switch from running [cbindgen] at build time to having the developer run it manually. This really ought to fix the crate builds on docs.rs ([#788]), and should speed builds too. [cbindgen]: https://github.com/eqrion/cbindgen [#788]: https://github.com/tectonic-typesetting/tectonic/issues/788 # tectonic_engine_xetex 0.1.2 (2021-06-17) - Attempt to fix crate builds on docs.rs — see [#788]. This works around an issue in Tectonic’s usage of [cbindgen] by configuring Cargo to operate in offline mode when building on docs.rs, which builds crates with network access turned off. [#788]: https://github.com/tectonic-typesetting/tectonic/issues/788 [cbindgen]: https://github.com/eqrion/cbindgen # tectonic_engine_xetex 0.1.1 (2021-06-15) - Fix SyncTeX output (@hulloanson, @pkgw, #720, #744). We needed to include absolute paths and properly deal with file renames, etc. The only way to really do this right is to have the I/O backend provide filesystem paths when it has them, so we've extended the lower-level crates to make this possible. - Fix the implementation of some special XeTeX commands, reported by @burrbull (@pkgw, #714, #783). This requires a bump in the format file serial number. We believe that this fix includes a fix to an upstream XeTeX bug, which has been reported. # tectonic_engine_xetex 0.1.0 (2021-06-03) This crate introduces the XeTeX engine as a standalone crate, building on the new "core bridge" functionality. Compared to the implementation previously provided in the main `tectonic` crate, it also adds shell-escape functionality and iterates the Rust API somewhat.