Skip to content

Releases: tectonic-typesetting/tectonic

tectonic 0.3.1

02 Nov 23:05
Compare
Choose a tag to compare

tectonic 0.3.1 (2020-11-02)

  • Fix compilation on Windows/MSVC (sys/time.h is not available)
  • Don't print an empty error: line in the CLI (#665, #670)

tectonic 0.3.0

01 Nov 15:49
Compare
Choose a tag to compare

tectonic 0.3.0 (2020-11-01)

The 0.3 series updates the core Tectonic engines to align with the code in
TeXLive 2020.0. The default “bundle” of support files will soon be
updated to match TeXLive 2020.0 as well. Standard usages should work if you use
an older version of Tectonic with the new bundle, and vice versa, but we
recommend that you update your installations to the 0.3 promptly if you can.

This release introduces a straightforward but breaking change to the API of
the tectonic Rust crate, documented below.

For context, Tectonic’s core TeX implementation is forked from the XeTeX
engine. Accumulated changes to XeTeX are periodically reviewed and imported into
Tectonic, a process that must be done manually because Tectonic’s modernized
developer and user experiences demand a huge amount of customization. (The
scripts to support the first stage of this process may be found in the
tectonic-staging repository.) It has been a while since the last
synchronization, but this release incorporates the new changes introduced
between the last update and the release of TeXLive 2020.0.

The changes for TeXLive 2020.0 include:

  • New low-level primitives including \filemoddate, \filedump,
    \uniformvariate, \elapsedtime, and a few others.
  • Tweaks to how font design sizes are mapped to TeX values
  • New magic numbers used in PDF last x/y position accounting,
    instead of cur_[hv]_offset.
  • Don't print_raw_char in show_context with trick_buf
  • Back up cur_cs in scan_keyword and compare_strings.
  • Handle XETEX_MATH_GIVEN in scan_something_internal
  • If encountering an unexpandable primitive in scan_something_internal,
    try to deal with it. Ditto for scan_int.
  • Do something different with active characters in str_toks_cat
  • Rework how file names are scanned.
  • Defend against undefined eTeX registers in main_control
  • Some uc_hyph tweak deep in the linebreaking algorithm

There are also numerous changes in Tectonic’s included xdvipdfmx.

The implementation of the \filemoddate API required a breaking change to
the API of the tectonic Rust crate:

  • We needed to add more data to the data structures of the MemoryIo provider.
    Migration should be pretty easy: instead of files containing a bunch of
    Vec<u8>s, it now contains a bunch of MemoryFileInfo structs that contain a
    Vec<u8> field named data. So you just need to add some .data field
    accessors to existing code. This API clearly needs some polish to allow
    greater stability going forward.

Other changes:

  • Issue a warning if xdvipdfmx needs to translate a VF font to PK format,
    which is unimplemented in Tectonic (it relies on mktexpk) and so causes
    failures on certain documents that work with XeTeX.
  • The Windows vcpkg-based build is temporarily disabled, as vcpkg currently has
    a debilitating issue relating to SSL on Windows.
  • There is a new -Z continue-on-errors unstable option that tells the engine
    to emulate the classic TeX style of plunging on ahead even in the face of
    severe errors. This is a nice example of the possibilities unlocked by the new
    -Z infrastructure introduced in 0.2!

tectonic_xdv 0.1.10

21 Oct 02:53
Compare
Choose a tag to compare

tectonic_xdv 0.1.10 (2020-10-21)

  • No code changes; just issuing a new release to update deps and silence
    Cranko's change detection.

tectonic_cfg_support 0.1.1

21 Oct 02:53
Compare
Choose a tag to compare

tectonic_cfg_support 0.1.1 (2020-10-21)

  • No code changes; just issuing a new release to update deps and silence
    Cranko's change detection.

tectonic 0.2.0

21 Oct 02:53
Compare
Choose a tag to compare

tectonic 0.2.0 (2020-10-21)

The 0.2 series finally adds "unstable" -Z flags! These allow you to configure
engine options that are relatively low-level. The hope is to eventually set
these kinds of things in a Tectonic.toml file, so their use is mildly
discouraged, and long-term availability is not guaranteed. But there are plenty
of times when such flags can be helpful. The currently supported options are:

  • -Z min-crossrefs=<num> controls the -min-crossrefs option of standalone bibtex
  • -Z paper-size=<spec> lets you control the output paper size, rather than
    hardcoding it to be US Letter.

Enormous thanks to @ralismark for finally implementing this! (#657) Now that the
infrastructure is in place, suggestions for additional flags are more than
welcome.

tectonic 0.1.17

13 Oct 14:51
Compare
Choose a tag to compare

tectonic 0.1.17 (2020-10-13)

  • Fix source-based installation by updating to cbindgen 0.15, after later
    releases in the 0.14 series were yanked (@qtfkwk, #656)
  • Fix unreachable code in the CID/Type0 code (@burrbull, @pkgw, #639, #646)
  • Update the cargo vcpkg build process to use a newer version of vcpkg, fixing
    Windows builds when msys2.org is unreliable (@pkgw).

tectonic 0.1.16

02 Oct 02:39
Compare
Choose a tag to compare

tectonic 0.1.16 (2020-10-02)

  • Add a "plain" backend for reporting status, used when the program is not
    attached to a TTY. It will print out reports without colorization. (#636,
    @ralismark)
  • Start adding infrastructure to automate the creation of bindings from the
    C/C++ code to the Rust code, using cbindgen. (#643, @ralismark)
  • Update the code-coverage infrastructure to gather coverage information
    from invocations of the CLI executable inside the test suite (@pkgw)
  • Fully automated deployment should really actually totally work this time.

tectonic 0.1.15

10 Sep 03:25
Compare
Choose a tag to compare

tectonic 0.1.15 (2020-09-10)

  • Building on the work done in 0.1.13, we now capture and report diagnostics
    nearly everywhere! Great work contributed by @ralismark (#635).
  • Yet more revisions to the automated deployment system. Maybe this will be
    the time that it all works (@pkgw, #637).

tectonic 0.1.14

08 Sep 01:33
Compare
Choose a tag to compare

tectonic 0.1.14 (2020-09-08)

  • No code changes from 0.1.13. Just trying to iron out some of the automated
    deployment systems. Is this the time that the Arch Linux auto-deployment
    finally works??

tectonic_cfg_support 0.1.0

07 Sep 04:09
Compare
Choose a tag to compare

tectonic_cfg_support 0.1.0 (2020-09-07)

  • No code changes; new release to exercise Cranko release workflow and mollify
    Cargo versioning