Skip to content

Releases: ia-toki/tcframe

v1.8.0

14 Dec 12:52
Compare
Choose a tag to compare

Enhancements

  • Improved tcframe version output by adding hashes to the closest tag.

New features

v1.7.0

24 Nov 14:27
Compare
Choose a tag to compare

Bugfixes

  • Fixed a bug where RAW_LINES() accumulates size over sample test cases.

Enhancements

  • Use C++17 by default for tcframe build.

New features

  • Allow scorer/communicator to output percentage of full points (OK\nP%).

v1.6.0

17 Sep 05:32
Compare
Choose a tag to compare

Bugfixes

  • Fixed a bug where tcframe crashed when grading spec with multiple test cases mode, which has no sample test cases.
  • Fixed a bug where a LINE() with only jagged vector contained an extra leading space.
  • Fixed a bug where a LINES() with empty vectors contained extra spaces.

Enhancements

  • Disallow specifying SIZE() after LINE() and RAW_LINE() instead of silently ignoring it.

v1.5.0

16 Jul 08:42
Compare
Choose a tag to compare

Bugfixes

  • Fixed a bug where the spec file cannot be compiled when its absolute path contains spaces.

New features

  • It is now possible to specify additional compilation flags, by setting the $TCFRAME_CXX_FLAGS environment variable.

v1.4.0

29 May 09:57
Compare
Choose a tag to compare

New features

  • Interactive problems are now supported.
  • It is now possible for scorers to specify partial points, by outputting OK\n<points>\n.
  • It is now possible to assign points to subtasks.
  • It is now possible to specify more than one output formats.
  • Local grading now supports additional --brief argument to make the output concise.

v1.3.0

10 Feb 07:56
Compare
Choose a tag to compare

New features

  • Subtask IDs specified by Subtasks() in TestCases() or TestGroupX() are now validated. It is an error now if you specify non-existing subtasks.
  • BeforeOutputFormat() can be used to set the value of output variables that depend on input variables.

v1.2.1

29 Jan 15:59
Compare
Choose a tag to compare

Bugfixes

  • Fixed a regression when I/O format segments do not pick up correct sizes if the sizes contain expressions that contain I/O variables. The value of the variables were evaluated the first time they were read.

    For example, if you declare SIZE(N - 1), it would always evaluate to SIZE(-1) (N = 0), which is incorrect. It is now fixed.

    Note that if the expression contains only a single variable (e.g. SIZE(N)), it is not affected and has always been correct.

v1.2.0

16 Dec 11:28
Compare
Choose a tag to compare

Bugfixes

  • Fixed a regression when the final verdict of local grading of problems without subtasks is always AC.

New features

  • It is now possible to write a custom program that checks whether the contestant's output is correct (instead of just comparing it with the official output). This is called custom scorer program.
  • It is now possible not to generate test case output (.out) files.

v1.1.0

04 Dec 11:26
Compare
Choose a tag to compare

New features

  • It is now possible to omit SIZE() for a LINES() segment, as long as it is the last segment in an I/O format.
  • Brand new segments: RAW_LINE() and RAW_LINES(), which accept strings containing whitespaces.

Enhancements

  • I/O format errors after a vector/matrix now have the last indices reported in the error message. For example,

    Before:

    Expected: <newline> after 'D'
    

    Now:

    Expected: <newline> after 'D[1]'
    

v1.0.1

28 Nov 01:42
Compare
Choose a tag to compare

Bugfixes

  • Fixed a regression when I/O format segments do not pick up correct sizes taken from I/O variables.
  • Fixed a regression when std::string cannot be used as variable type.