checkpoint rules version 29.00 2025-11-19.
This is a work in progress towards an improved rule set for **IOCCC29**. Links to rules elsewhere on the site were modified as needed.
This commit is contained in:
1 parent
1be0e93dbf
commit
ea37a9f559
17 files changed
+1068
-1722
No files matched your search
@@ -214,8 +214,8 @@ Jump to: [top](#)
|
||||
This toolkit is from the [mkiocccentry
|
||||
repo](https://github.com/ioccc-src/mkiocccentry) and it is **required** that you
|
||||
use it to package your submission. Not doing so puts you at a great risk of
|
||||
violating the [Rules](next/rules.html) and in particular [Rule
|
||||
17](next/rules.html#rule17).
|
||||
violating the [Rules](next/rules.html) and in particular
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
|
||||
|
||||
Jump to: [top](#)
|
||||
@@ -385,7 +385,8 @@ is not a directory that can be written to. In **this** directory your **submissi
|
||||
directory** will be created, with the name based on your IOCCC registration
|
||||
username, which is **in the form of a UUID**, and submission number along with
|
||||
the timestamp; see the [rules](next/rules.html) for more details on this, and in
|
||||
particular [Rule 17](next/rules.html#rule17).
|
||||
particular
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
|
||||
**IMPORTANT NOTE**: the tools that require other tools, `mkiocccentry(1)` and
|
||||
`txzchk(1)`, will, as of version `2.0.2 2025-03-11`, search under `$PATH`. If
|
||||
@@ -574,7 +575,8 @@ rounds; we look at the author name only if an entry wins. See the
|
||||
[guidelines](next/guidelines.html) **AND** [rules](next/rules.html) if this is not clear!
|
||||
- leaving the remark section empty (which would also indicate that you did not
|
||||
use `mkiocccentry(1)`, as it requires it to not be of size 0, though if you only
|
||||
include whitespace you would still be violating [Rule 17](next/rules.html#rule17)).
|
||||
include whitespace you would still be violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)).
|
||||
|
||||
|
||||
Jump to: [top](#)
|
||||
@@ -632,11 +634,13 @@ for more details.
|
||||
|
||||
See the
|
||||
FAQ on "[Rule 17](#rule17)"
|
||||
and [Rule 17](next/rules.html#rule17) itself.
|
||||
and
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)
|
||||
itself.
|
||||
|
||||
Do remember that if your submission requires different filenames, then you
|
||||
**MUST** make a **COPY** of them in your `Makefile`. See also [Rule
|
||||
11](next/rules.html#rule11).
|
||||
**MUST** make a **COPY** of them in your `Makefile`. See also
|
||||
[Rule 5 Purity](next/rules.html#rule-5-purity).
|
||||
|
||||
|
||||
Jump to: [top](#)
|
||||
@@ -848,12 +852,12 @@ itself is an extra file, meaning it counts **AS** an extra file.
|
||||
This file does **NOT** need to pass the `txzchk(1)` tests; only your submission
|
||||
tarball needs to pass these tests. However see below if you do do this.
|
||||
|
||||
Please pay careful attention to [Rule 17](next/rules.html#rule17) and in
|
||||
Please pay careful attention to [Rule 17 Packaging](next/rules.html#rule-17-packaging) and in
|
||||
particular the part about the maximum number of files per
|
||||
submission, which not only discusses the maximum
|
||||
number of files but also specific rules you must follow
|
||||
if you do include a tarball. Not following these points puts you at great risk
|
||||
of violating [Rule 17](next/rules.html#rule17)!
|
||||
of violating [Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
|
||||
Also, remember what the [guidelines](next/guidelines.html) say:
|
||||
|
||||
@@ -915,7 +919,7 @@ contains **IMPORTANT** tools and libraries such as:
|
||||
- `chksubmit(1)` (which uses `jparse(3)` and is a wrapper to `chkentry(1)`)
|
||||
|
||||
The above mentioned tools will help you verify that your submission
|
||||
conforms to [Rule 17](next/rules.html#rule17). Each of these tool has a `-h`
|
||||
conforms to [Rule 17 Packaging](next/rules.html#rule-17-packaging). Each of these tool has a `-h`
|
||||
option that provides command line help. For additional details of each tool, see
|
||||
its man page, and in some cases, the [IOCCC guidelines](next/guidelines.html).
|
||||
|
||||
@@ -977,7 +981,8 @@ for help.
|
||||
The `remarks.md` **MUST** be a **non**-empty file in markdown format
|
||||
(`mkiocccentry(1)` only checks the file size but if you do not have any text in
|
||||
it you still risk violating this rule). See also
|
||||
[Rule 18](next/rules.html#rule18) and our
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)
|
||||
and our
|
||||
FAQ on "[remarks.md](#remarks_md)",
|
||||
our
|
||||
FAQ on "[markdown](#markdown)"
|
||||
@@ -1083,7 +1088,8 @@ permissions and `mkiocccentry(1)` does this for you. In particular: directories
|
||||
**MUST** be `drwxr-xr-x` (i.e. `0755`); any file ending with `.sh` **MUST** be
|
||||
`-r-xr-xr-x` (i.e. `0555`); and all other files **MUST** be `-r--r--r--` (i.e.
|
||||
`0444`). If any file or directory does not have the correct permissions, your
|
||||
submission **WILL** be rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
submission **WILL** be rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule17)!
|
||||
|
||||
After `mkiocccentry(1)` creates the directories and copies the files with these
|
||||
modes, it also verifies them after the fact and if they are not correct it is an
|
||||
@@ -1091,7 +1097,10 @@ modes, it also verifies them after the fact and if they are not correct it is an
|
||||
|
||||
If you do need different permissions, then see the
|
||||
FAQ on "[file permissions](#file_perms)". Also keep in mind
|
||||
[Rule 4](next/rules.html#rule4), [Rule 5](next/rules.html#rule5) and [Rule 21](next/rules.html#rule21).
|
||||
[Rule 4 Files](next/rules.html#rule-4-files),
|
||||
[Rule 5 Purity](next/rules.html#rule-5-purity),
|
||||
and
|
||||
[Rule 16 Anonymous](next/rules.html#rule-16-anonymous).
|
||||
|
||||
The `txzchk(1)` tool will also verify file/directory permissions (and many other
|
||||
things) for you, and so will `chksubmit(1)` (along with other checks on files and
|
||||
@@ -1105,8 +1114,11 @@ page](https://github.com/ioccc-src/mkiocccentry/issues/new?assignees=&labels=bug
|
||||
The tarball filename **MUST** pass `fnamchk(1)`; the tool `txzchk(1)`
|
||||
will run `fnamchk(1)` as part of its algorithm. If you use `mkiocccentry(1)`
|
||||
there should be no problem but if you were to package things manually it is
|
||||
possible there could be a problem and this poses a big risk of violating [Rule
|
||||
17](next/rules.html#rule17).
|
||||
possible there could be a problem and this poses a big risk of violating
|
||||
[Rule 4 Files](next/rules.html#rule-4-files)
|
||||
or
|
||||
[Rule 17 Packaging](next/rules.html#rule17).
|
||||
|
||||
|
||||
The `fnamchk(1)`, which `txzchk(1)` executes, will verify that the
|
||||
filename is correct. But if you do package your tarball manually, and you have a
|
||||
@@ -1114,7 +1126,10 @@ mismatch in what is in the tarball and the name, `txzchk(1)` will flag the
|
||||
discrepancy as an error and exit with non-zero.
|
||||
|
||||
These checks **MUST PASS**. If they do not you stand a significant chance of
|
||||
having your submission rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
having your submission rejected for violating
|
||||
[Rule 4 Files](next/rules.html#rule-4-files)
|
||||
or
|
||||
[Rule 17 Packaging](next/rules.html#rule17).
|
||||
|
||||
<div id="max-files">
|
||||
#### Maximum number of files per submission
|
||||
@@ -1154,7 +1169,11 @@ The `mkiocccentry(1)` tool uses the v7 format. For instance you might try:
|
||||
|
||||
<hr style="width:50%;text-align:left;margin-left:0">
|
||||
|
||||
**IMPORTANT**: where [Rule 17](next/rules.html#rule17) and the tools from the latest
|
||||
**IMPORTANT**: where
|
||||
[Rule 4 Files](next/rules.html#rule-4-files),
|
||||
and
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
and the tools from the latest
|
||||
release of the [mkiocccentry repo](https://github.com/ioccc-src/mkiocccentry)
|
||||
conflict, the [IOCCC judges](judges.html) will use their best judgment which
|
||||
is likely to favor [mkiocccentry repo](https://github.com/ioccc-src/mkiocccentry) code.
|
||||
@@ -1193,8 +1212,11 @@ page](https://github.com/ioccc-src/mkiocccentry/issues/new?assignees=&labels=bug
|
||||
for help here and also read our
|
||||
FAQ on "[mkiocccentry repo bugs](#mkiocccentry_bugs)".
|
||||
|
||||
At the risk of stating the obvious: submissions that violate [Rule
|
||||
17](next/rules.html#rule17) **WILL BE REJECTED**, so **BE SURE** to use the latest release of the
|
||||
At the risk of stating the obvious: submissions that violate
|
||||
[Rule 4 Files](next/rules.html#rule-4-files),
|
||||
or
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)
|
||||
**WILL BE REJECTED**, so **BE SURE** to use the latest release of the
|
||||
[mkiocccentry repo](https://github.com/ioccc-src/mkiocccentry), to form and test
|
||||
your submission's xz compressed tarball. Do **NOT** assume you have the most
|
||||
recent release without pulling or downloading via GitHub and do **MAKE SURE** you
|
||||
@@ -1851,7 +1873,10 @@ two JSON files, `.auth.json` and `.info.json` as well as the `prog.c`,
|
||||
`Makefile` and `remarks.md` files along with all the other files listed in the
|
||||
`.info.json` manifest. (Okay there is an option to skip files but this is for
|
||||
the judges **ONLY**; use of this option to validate your submission puts you at
|
||||
a great risk of violating [Rule 17](next/rules.html#rule17)!).
|
||||
a great risk of violating
|
||||
[Rule 4 Files](next/rules.html#rule-4-files),
|
||||
or
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!).
|
||||
|
||||
As an example, if your submission directory is
|
||||
`00000000-0000-4000-0000-000000000000-3/` then you should run the following
|
||||
@@ -1877,7 +1902,11 @@ See the
|
||||
FAQ on "[.auth.json](#auth_json)"
|
||||
and the
|
||||
FAQ on "[.info.json](#info_json)"
|
||||
as well as [Rule 17](next/rules.html#rule17) for more information.
|
||||
as well as
|
||||
[Rule 4 Files](next/rules.html#rule-4-files),
|
||||
and
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)
|
||||
for more information.
|
||||
|
||||
**NOTE**: the `chksubmit(1)` tool invokes `chkentry(1)` but as a contestant you
|
||||
do not need to worry about those details. One should use `chksubmit(1)` instead
|
||||
@@ -1969,21 +1998,25 @@ In order of the file's contents we describe each required field, below:
|
||||
- `IOCCC_contest_id` (double quoted string)
|
||||
* The IOCCC contestant ID used as a username in the form of **in the form of
|
||||
a UUID** and submission number; see the [Rules](next/rules.html) for more details
|
||||
on this, and in particular [Rule 17](next/rules.html#rule17).
|
||||
on this, and in particular
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
|
||||
**NOTE:** if the contest ID is **NOT** in this format then `fnamchk` will
|
||||
report it as an **error** and your submission **WILL BE** rejected for
|
||||
violating [Rule 17](next/rules.html#rule17)!
|
||||
violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
|
||||
- `tarball` (double quoted string)
|
||||
* The xz compressed tarball filename.
|
||||
|
||||
**IMPORTANT:** this **MUST** match the actual tarball's **filename** in order for
|
||||
this to be valid. If there is a mismatch you stand a great risk of having
|
||||
your submission rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
your submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
Moreover, it is possible that `txzchk` will report a problem through
|
||||
`fnamchk(1)` which also puts you at great risk of violating [Rule
|
||||
17](next/rules.html#rule17). `txzchk` will use the output of `fnamchk` to
|
||||
`fnamchk(1)` which also puts you at great risk of violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging). The
|
||||
`txzchk(1)` tool will use the output of `fnamchk` to
|
||||
obtain the correct directory _name_ in the tarball; if `fnamchk` fails to
|
||||
validate your filename, or if you have the wrong directory name in the
|
||||
tarball, this will be flaggd.
|
||||
@@ -1996,7 +2029,8 @@ In order of the file's contents we describe each required field, below:
|
||||
[soup/limit_ioccc.h](https://github.com/ioccc-src/mkiocccentry/blob/master/soup/limit_ioccc.h)
|
||||
in the [mkiocccentry repo](https://github.com/ioccc-src/mkiocccentry/)). If
|
||||
this is not the case you stand a great risk of having your submission
|
||||
rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
|
||||
- `author_count` (number)
|
||||
* How many authors this submission has.
|
||||
@@ -2060,7 +2094,8 @@ author(s) of the submission:
|
||||
[soup/limit_ioccc.h](https://github.com/ioccc-src/mkiocccentry/blob/master/soup/limit_ioccc.h)
|
||||
in the [mkiocccentry repo](https://github.com/ioccc-src/mkiocccentry/)). If
|
||||
this is not the case you stand a great risk of having your submission
|
||||
rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
|
||||
**NOTE:** an **affiliation** does **NOT** have any affect on whether you will win or not.
|
||||
|
||||
@@ -2144,8 +2179,10 @@ will use it on the submission directory as part of the judging process.
|
||||
At the risk of stating the obvious, if your `.auth.json` file is invalid JSON or
|
||||
is reported invalid by `chksubmit(1)`, or if your submission directory is
|
||||
reported invalid by `chksubmit(1)`, your submission will almost certainly be
|
||||
rejected for violating the [Rules](next/rules.html) and in particular [Rule
|
||||
17](next/rules.html#rule17).
|
||||
rejected for violating the [Rules](next/rules.html) and in particular
|
||||
[Rule 4 Files](next/rules.html#rule-4-files),
|
||||
and
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
|
||||
An obvious example where `chksubmit(1)` would fail to validate `.auth.json` is if
|
||||
there is a mismatch of type in the JSON file with what is expected, for
|
||||
@@ -2154,7 +2191,11 @@ not a string or is the wrong string. Another obvious example is when things are
|
||||
out of range (see above for list). Two more examples would be if a field is
|
||||
missing or if an unknown filed is in the file. In these cases (and any others
|
||||
that must be established as valid by `chksubmit(1)`) your submission would be
|
||||
rejected for violating [Rule 17](next/rules.html#rule17) and in particular
|
||||
rejected for violating
|
||||
[Rule 4 Files](next/rules.html#rule-4-files),
|
||||
and
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)
|
||||
and in particular
|
||||
because `chksubmit(1)` would not validate the `.auth.json` file (and maybe other
|
||||
things too).
|
||||
|
||||
@@ -2276,7 +2317,8 @@ In order of the file's contents we describe each required field, below:
|
||||
- `IOCCC_contest_id` (double quoted string)
|
||||
* The IOCCC contestant ID used as a username in the form of **in the form of
|
||||
a UUID** and submission number; see the [rules](next/rules.html) for more details
|
||||
on this, and in particular [Rule 17](next/rules.html#rule17).
|
||||
on this, and in particular
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
|
||||
- `submit_slot` (number)
|
||||
* The submission number.
|
||||
@@ -2286,7 +2328,8 @@ In order of the file's contents we describe each required field, below:
|
||||
[soup/limit_ioccc.h](https://github.com/ioccc-src/mkiocccentry/blob/master/soup/limit_ioccc.h)
|
||||
in the [mkiocccentry repo](https://github.com/ioccc-src/mkiocccentry/)). If
|
||||
this is not the case you stand a great risk of having your submission
|
||||
rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
|
||||
- `title` (double quoted string)
|
||||
* A short name (length >= 1 **THROUGH** `MAX_TITLE_LEN`, defined in
|
||||
@@ -2295,7 +2338,8 @@ In order of the file's contents we describe each required field, below:
|
||||
matches the regexp `[a-z0-9][a-z0-9_+-]*`.
|
||||
|
||||
**IMPORTANT:** if this is **NOT** the case you stand a great risk of having your submission
|
||||
rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
|
||||
- `abstract` (double quoted string)
|
||||
* A one line summary of your submission, with a length of 1 **THROUGH**
|
||||
@@ -2306,33 +2350,37 @@ In order of the file's contents we describe each required field, below:
|
||||
The `abstract` may not contain a `;` (semicolon), nor `&` (ampersand), nor `,` (comma).
|
||||
|
||||
**IMPORTANT:** if your abstract is 0 in length or > the maximum abstract length you
|
||||
stand a great risk of having your submission rejected for violating [Rule
|
||||
17](next/rules.html#rule17)!
|
||||
stand a great risk of having your submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
|
||||
- `tarball` (double quoted string)
|
||||
* The xz compressed tarball filename.
|
||||
|
||||
**IMPORTANT:** this **MUST** match the actual tarball's **filename** in order for
|
||||
this to be valid. If there is a mismatch you stand a great risk of having
|
||||
your submission rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
your submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
Moreover, it is possible that `txzchk` will report a problem through
|
||||
`fnamchk(1)` which also puts you at great risk of violating [Rule
|
||||
17](next/rules.html#rule17). `txzchk` will use the output of `fnamchk` to
|
||||
`fnamchk(1)` which also puts you at great risk of violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
The `txzchk(1)` tool will use the output of `fnamchk` to
|
||||
obtain the correct directory _name_ in the tarball; if `fnamchk` fails to
|
||||
validate your filename, or if you have the wrong directory name in the
|
||||
tarball, this will be flaggd.
|
||||
|
||||
- `rule_2a_size` (number)
|
||||
* The size calculated of [Rule 2a](next/rules.html#rule2a).
|
||||
* The size calculated of [Rule 2a Gross Size](next/rules.html#rule-2a-gross-size).
|
||||
|
||||
**IMPORTANT:** if this violates [Rule 2a](next/rules.html#rule2a) you stand a great
|
||||
chance of having your submission rejected for violating the
|
||||
[Rules](next/rules.html)!
|
||||
|
||||
- `rule_2b_size` (number)
|
||||
* The size calculated of [Rule 2b](next/rules.html#rule2b).
|
||||
* The size calculated of [Rule 2b Next Size](next/rules.html#rule-2b-net-size).
|
||||
|
||||
**IMPORTANT:** if this violates [Rule 2b](next/rules.html#rule2b) you stand a great
|
||||
**IMPORTANT:** if this violates
|
||||
[Rule 2b Next Size](next/rules.html#rule-2b-net-size)
|
||||
you stand a great
|
||||
chance of having your submission rejected for violating the
|
||||
[Rules](next/rules.html)!
|
||||
|
||||
@@ -2340,29 +2388,40 @@ In order of the file's contents we describe each required field, below:
|
||||
* `true` if user override warning of an empty source file, else `false`.
|
||||
|
||||
- `rule_2a_override` (boolean)
|
||||
* `true` if user overrides warning of [Rule 2a](next/rules.html#rule2a)
|
||||
* `true` if user overrides warning of
|
||||
[Rule 2a Gross Size](next/rules.html#rule-2a-gross-size)
|
||||
violation, else `false`.
|
||||
|
||||
**IMPORTANT:** if the [Rule 2a](next/rules.html#rule2a) calculated size is **NOT**
|
||||
**IMPORTANT:** if the
|
||||
[Rule 2a Gross Size](next/rules.html#rule-2a-gross-size)
|
||||
calculated size is **NOT**
|
||||
violated but this is `true` then you stand a good chance of having your
|
||||
submission rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
|
||||
- `rule_2a_mismatch` (boolean)
|
||||
* `true` if [Rule 2a](next/rules.html#rule2a) calculated size is not the
|
||||
* `true` if
|
||||
[Rule 2a Gross Size](next/rules.html#rule-2a-gross-size)
|
||||
calculated size is not the
|
||||
same as the file size.
|
||||
|
||||
- `rule_2b_override` (boolean)
|
||||
* `true` if user overrides warning of [Rule 2b](next/rules.html#rule2b)
|
||||
* `true` if user overrides warning of
|
||||
[Rule 2b Next Size](next/rules.html#rule-2b-net-size)
|
||||
violation, else `false`.
|
||||
|
||||
**IMPORTANT:** if the [Rule 2b](next/rules.html#rule2b) calculated size is **NOT**
|
||||
**IMPORTANT:** if the
|
||||
[Rule 2b Next Size](next/rules.html#rule-2b-net-size)
|
||||
calculated size is **NOT**
|
||||
violated but this is `true` then you stand a good chance of having your
|
||||
submission rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
|
||||
- `highbit_warning` (boolean)
|
||||
* `true` if `iocccsize` detects a high bit (unescaped octets with the high
|
||||
bit set - octet value >= 128); see [Rule 13](next/rules.html#rule13), else
|
||||
`false`.
|
||||
bit set - octet value >= 128); see
|
||||
[Rule 12 UTF-8](next/rules.html#rule-12-utf-8),
|
||||
else `false`.
|
||||
|
||||
- `nul_warning` (boolean)
|
||||
* `true` if `iocccsize` detects a NUL character in the `prog.c`, else
|
||||
@@ -2384,7 +2443,7 @@ In order of the file's contents we describe each required field, below:
|
||||
|
||||
**IMPORTANT:** if the `Makefile` file has no problems and this is `true` then
|
||||
you stand a good chance of having your submission rejected for violating
|
||||
[Rule 17](next/rules.html#rule17)!
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
|
||||
See the
|
||||
FAQ on "[Makefile](#makefile)"
|
||||
@@ -2395,7 +2454,7 @@ In order of the file's contents we describe each required field, below:
|
||||
|
||||
**IMPORTANT:**: if the `Makefile` file does **NOT** have an `all` rule then
|
||||
you stand a good chance of having your submission rejected for violating
|
||||
[Rule 17](next/rules.html#rule17)!
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
|
||||
See the
|
||||
FAQ on "[Makefile](#makefile)"
|
||||
@@ -2406,7 +2465,8 @@ In order of the file's contents we describe each required field, below:
|
||||
|
||||
**IMPORTANT:** if the `Makefile` file does **NOT** have an `all` rule and this
|
||||
boolean is `true` then you stand a good chance of having your
|
||||
submission rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
|
||||
See the
|
||||
FAQ on "[Makefile](#makefile)"
|
||||
@@ -2417,7 +2477,8 @@ In order of the file's contents we describe each required field, below:
|
||||
|
||||
**IMPORTANT:** if the `Makefile` file does **NOT** have a `clean` rule and this
|
||||
boolean is `true` then you stand a good chance of having your submission
|
||||
rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
|
||||
See the
|
||||
FAQ on "[Makefile](#makefile)"
|
||||
@@ -2428,7 +2489,8 @@ In order of the file's contents we describe each required field, below:
|
||||
|
||||
**IMPORTANT:** if the `Makefile` file does **NOT** have an `clobber` rule and this
|
||||
boolean is `true` then you stand a good chance of having your submission
|
||||
rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
|
||||
See the
|
||||
FAQ on "[Makefile](#makefile)"
|
||||
@@ -2439,7 +2501,8 @@ In order of the file's contents we describe each required field, below:
|
||||
|
||||
**IMPORTANT:** if the `Makefile` file does **NOT** have a `try` rule and this
|
||||
boolean is `true` then you stand a good chance of having your submission
|
||||
rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
|
||||
See the
|
||||
FAQ on "[Makefile](#makefile)"
|
||||
@@ -2464,8 +2527,8 @@ The `mkiocccentry(1)` tool will write it in this order:
|
||||
for more information.
|
||||
|
||||
**IMPORTANT:** if this is **NOT** the case you stand a
|
||||
great chance of having your submission rejected for violating [Rule
|
||||
17](next/rules.html#rule17)!
|
||||
great chance of having your submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
|
||||
- `auth_JSON` (double quoted string)
|
||||
* This `MUST` be `".auth.json"`, defined as `AUTH_JSON_FILENAME` in
|
||||
@@ -2477,7 +2540,8 @@ The `mkiocccentry(1)` tool will write it in this order:
|
||||
for more information.
|
||||
|
||||
**IMPORTANT:** if this is **NOT** the case you stand a great chance of having your
|
||||
submission rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
|
||||
- `c_src` (double quoted string)
|
||||
* This `MUST` be `"prog.c"`, defined as `PROG_C_FILENAME` in
|
||||
@@ -2486,7 +2550,8 @@ The `mkiocccentry(1)` tool will write it in this order:
|
||||
is your submission source code.
|
||||
|
||||
**IMPORTANT:** if this is **NOT** the case you stand a great chance of having your
|
||||
submission rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
|
||||
- `Makefile` (double quoted string)
|
||||
* This `MUST` be `"Makefile"`, defined as `MAKEFILE_FILENAME` in
|
||||
@@ -2498,7 +2563,8 @@ The `mkiocccentry(1)` tool will write it in this order:
|
||||
for more information.
|
||||
|
||||
**IMPORTANT:** if this is **NOT** the case you stand a great chance of having your
|
||||
submission rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
|
||||
- `remarks` (double quoted string)
|
||||
* This `MUST` be `"remarks.md"`, defined as `REMARKS_FILENAME` in
|
||||
@@ -2510,7 +2576,8 @@ The `mkiocccentry(1)` tool will write it in this order:
|
||||
for more information.
|
||||
|
||||
**IMPORTANT:** if this is **NOT** the case you stand a great chance of having your
|
||||
submission rejected for violating [Rule 17](next/rules.html#rule17)!
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
|
||||
The `manifest` **array** also **OPTIONALLY** has one or more of the field:
|
||||
|
||||
@@ -2522,8 +2589,9 @@ The `manifest` **array** also **OPTIONALLY** has one or more of the field:
|
||||
and `chksubmit` will verify this for you; it is **ALSO** an **error** if the
|
||||
filenames are not unique, not POSIX plus + safe chars only, if they are the
|
||||
wrong permission and various other things. In these cases you stand a great
|
||||
risk of having your submission rejected for violating [Rule
|
||||
17](next/rules.html#rule17)! On the other hand, **ONLY** `mkiocccentry` will
|
||||
risk of having your submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
On the other hand, **ONLY** `mkiocccentry` will
|
||||
verify that the files exist and can be read; `txzchk(1)` will **NOT** do
|
||||
this for you as it only **LISTS** the tarball: it does **NOT** extract it.
|
||||
Even so, the [Judges](judges.html) **WILL** extract the tarball and if a
|
||||
@@ -2585,7 +2653,9 @@ not a string or is the wrong string. Another obvious example is when things are
|
||||
out of range (see above for list). Two more examples would be if a field is
|
||||
missing or if an unknown filed is in the file. In these cases (and any others
|
||||
that must be established as valid by `chksubmit`) your submission would be
|
||||
rejected for violating [Rule 17](next/rules.html#rule17) and in particular
|
||||
rejected for violating
|
||||
Rule 17 Packaging](next/rules.html#rule-17-packaging),
|
||||
and in particular
|
||||
because `chksubmit` would not validate the `.info.json` file.
|
||||
|
||||
If you wish to **verify** that your `.info.json` file is valid **JSON** then see the
|
||||
|
||||
Reference in new issue
Block a user