Skip to content

Releases: Kattis/problemtools

v1.20251128

28 Nov 13:15
c490856

Choose a tag to compare

Release summary

We use a new rendering engine (lualatex instead of pdflatex) for problem2pdf. This means we now support problem statements with greek and cyrillic characters, as well as emojis. Layout does end up a bit different, and uses a bit more space. If someone is aware of tweaks to make lualatex output closer to the old pdflatex output, patches are very welcome.

Initial support for multipass problem has been added.

We've added some minor i18n - the strings we insert for samples in problem statements are now translated for Icelandic and Swedish statements. Patches for further translations are very welcome.

default_validator has been updated to not emit exteremly long messages if the answer and output differs in a long token (e.g., the submission forgot to print spaces).

There's now a --version flag in our command line tools.

... plus a lot more:

What's Changed

Full Changelog: v1.20250606...v1.20251128

v1.20250606

06 Jun 19:37
babb11d

Choose a tag to compare

A quick bugfix release. In the release yesterday, problem2{html,pdf} had a bug where sample data was not included.

What's Changed

  • Fix sample missing from rendered problem statements by @gkreitz in #339

Full Changelog: v1.20250605...v1.20250606

v1.20250605

05 Jun 10:18
da34401

Choose a tag to compare

Release summary

It's been almost two years since the last release, so this is a large one. A few highlights:

  • Work has begun to support the 2023-07-draft version of the problem package format. This is far from complete, but we can now:
    • Parse and check problem.yaml
    • Deal with moved directories (e.g., problem_statement moving to statement)
    • Render markdown statements
  • There's now a -j flag for multi-threaded validation
  • Warnings and errors from verifyproblem now have color
  • Releases are now uploaded to PyPi

If someone (outside of Kattis) is using problemtools as a python library, note that this release contains several breaking changes. The most important is that verifyproblem.Problem.config.get() is now replaced by verifyproblem.Problem.metadata. If there are users, please let us know. We're currently working on the assumption that this is mostly used as a command line tool outside of Kattis.

What's Changed

New Contributors

Full Changelog: v1.20231016...v1.20250605