Skip to content

Releases: tectonic-typesetting/tectonic

tectonic_bridge_core 0.4.1

05 Feb 01:40
Compare
Choose a tag to compare

tectonic_bridge_core 0.4.1 (2024-02-05)

tectonic 0.15.0

05 Feb 01:40
Compare
Choose a tag to compare

tectonic 0.15.0 (2024-02-05)

This release contains a grab-bag of nice improvements:

  • The port of Tectonic’s BibTeX engine to a pure-Rust implementation has been
    completed by @CraftSpider (#1077, #1083, #1127, #1129)! It continues
    to be the case that this change should be invisible to users, but it shows
    that large chunks of Tectonic’s legacy C/C++ code can be migrated to cleaner,
    safer, more maintainable Rust over time.
  • The official Linux builds of Tectonic now link against OpenSSL 3.x, instead of
    the old 1.1 series (#1092, @pkgw). This should improve binary
    compatibility on mainstream platforms. If you need a build that uses the older
    series, you’ll have to compile it yourself.
  • The --web-bundle flag can now be used in more situations, specifically
    tectonic -X new and tectonic -X init (#1132, @bryango).
  • As part of the above work, you can now activate the "V2" interface with the
    -X flag in more places on the Tectonic command line.
  • The Tectonic.toml file used by the "V2" interface now supports a
    [metadata] section for arbitrary structured user metadata (#1120,
    @rm-dr). This is useful for custom tools that build on top of Tectonic,
    where you might want to have some custom pieces of information about each
    document in a group.
  • The "V2" interface also now supports external commands (#1103, @rm-dr). If
    you have a program named tectonic-blah in your search path, running
    tectonic -X blah will execute it.
  • Running tectonic -Z help (as opposed to tectonic -Zhelp) now actually
    works (#1064, #1084, @pkgw).

Build changes:

  • You can now cross-compile Tectonic to the aarch64-unknown-linux-musl target
    (#1089, @pkgw).
  • MIPS is no longer supported as a build target (#1076, @CraftSpider). It
    dropped to Tier 3 support by the Rust language, which makes it difficult to
    support in our continuous integration systems. Sorry, MIPS!

Documentation fixes:

tectonic_engine_bibtex 0.2.1

15 Jun 00:59
Compare
Choose a tag to compare

tectonic_engine_bibtex 0.2.1 (2023-06-15)

tectonic 0.14.1

15 Jun 00:59
Compare
Choose a tag to compare

tectonic 0.14.1 (2023-06-15)

This is a bugfix release:

  • @giammirove wins the prize for discovering the first bug in the Rust
    translation of the BibTeX engine (issue #1054) — no small feat since our
    test suite includes nearly 8000 ArXiv submissions! Correcting a line of code
    that resizes an internal buffer fixes the problem (#1055, @CraftSpider).
  • The updated “watch” implementation failed if the path to the Tectonic
    executable contained whitespace (issue #1003, reported by @m-haug).
    Proper quoting addresses the issue (#1053, @xinslu).

tectonic_xetex_layout 0.2.3

12 Jun 02:09
Compare
Choose a tag to compare

tectonic_xetex_layout 0.2.3 (2023-06-12)

tectonic_engine_xetex 0.4.3

12 Jun 02:09
Compare
Choose a tag to compare

tectonic_engine_xetex 0.4.3 (2023-06-12)

tectonic_engine_spx2html 0.3.1

12 Jun 02:09
Compare
Choose a tag to compare

tectonic_engine_spx2html 0.3.1 (2023-06-12)

  • Avoid emitting negative padding values, which are illegal (#1052, @pkgw)
  • Close automatic tags when starting certain automatic tags (#1052, @pkgw)

tectonic_engine_bibtex 0.2.0

12 Jun 02:09
Compare
Choose a tag to compare

tectonic_engine_bibtex 0.2.0 (2023-06-12)

This is a big release! This version of the BibTeX engine doesn’t change its
behavior or APIs, but major chunks of its internals have been translated into
Rust by @CraftSpider in #1032, with a bunch of new tests introduced in
#1037 and #1039. This translation replaces about 2,200 lines of C code with
clean, well-organized, (mostly) safe Rust. While there aren’t any major changes
planned for the behavior of the BibTeX engine, this work demonstrates how the
legacy C/C++ code in Tectonic can gradually be replaced with safer, more modern,
more maintainable code.

This effort benefited significantly from work by @Mrmaxmeier to revitalize the
tectonic-on-arXiv service, which runs Tectonic pull requests on a large corpus
of arxiv.org preprints and reports any changes in the outputs.

tectonic_bridge_core 0.4.0

12 Jun 02:09
Compare
Choose a tag to compare

tectonic_bridge_core 0.4.0 (2023-06-12)

  • Add new APIs, CoreBridgeLauncher::with_expose_absolute_paths and
    CoreBridgeLauncher::with_mtime_override (#1036, @Mrmaxmeier). These help
    enable the new -Z deterministic-mode mode.

tectonic 0.14.0

12 Jun 02:09
Compare
Choose a tag to compare

tectonic 0.14.0 (2023-06-12)

This release features a significant, but hopefully invisible, change: Tectonic’s
BibTeX engine has been partially translated from C to Rust (#1032, #1037,
#1039, @CraftSpider). The intention is that the engine’s behavior should be
completely unchanged, and there are not plans to make any significant
alterations in the near future, but this effort demonstrates how Tectonic’s
legacy C/C++ code can be migrated to cleaner, safer, more maintainable Rust over
time.

There are also a few new features:

  • Add a new --target option to tectonic -X build allowing you to
    specify which output to build (#1043, @xinslu).
  • Add a new unstable option, -Z deterministic-mode, that turns on some
    features that help create fully deterministic outputs (#1036, @Mrmaxmeier).
    These settings aren’t desirable for day-to-day use, but they help create
    byte-for-byte reproducible outputs for automated testing. This option
    is part of further work by @Mrmaxmeier to bring the valuable
    tectonic-on-arXiv testing service back into regular operation.

As well as some developer improvements and bugfixes:

  • Fix some corner-case bugs in the HTML output (#1052, @pkgw).
  • Update the vendored version of Harfbuzz to the latest upstream release,
    version 7.3.0 (#1042, @pkgw).

Thanks to our new contributor @xinslu and everyone else contributing to this
release!