Releases: ia-toki/tcframe
Releases · ia-toki/tcframe
v1.8.0
v1.7.0
v1.6.0
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()afterLINE()andRAW_LINE()instead of silently ignoring it.
v1.5.0
v1.4.0
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
--briefargument to make the output concise.
v1.3.0
v1.2.1
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 toSIZE(-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
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
New features
- It is now possible to omit
SIZE()for aLINES()segment, as long as it is the last segment in an I/O format. - Brand new segments:
RAW_LINE()andRAW_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]'