Update FAQ and guidelines about new options

The new options to mkiocccentry are -x to delete the submission
directory if if it already exists and the -u uuidfile and -U uuidstr
options.

NOTE: it is NOT required to update the tools for this IOCCC and you do
NOT have to read the updated guidelines to follow the guidelines for
this IOCCC.
This commit is contained in:
Cody Boone Ferguson committed 2025-03-10 06:28:54 -07:00
1 parent 4d34c9d759
commit 8968cf8904
4 files changed
+124 -18

No files matched your search

+37 -7
View File
@@ -425,7 +425,7 @@
<!-- BEFORE: 1st line of markdown file: faq.md -->
<h1 id="ioccc-faq-table-of-contents">IOCCC FAQ Table of Contents</h1>
<p>This is FAQ version <strong>28.2.14 2025-03-09</strong>.</p>
<p>This is FAQ version <strong>28.2.15 2025-03-10</strong>.</p>
<h2 id="entering-the-ioccc-the-bare-minimum-you-need-to-know">0. <a href="#enter_questions">Entering the IOCCC: the bare minimum you need to know</a></h2>
<ul>
<li><strong>Q 0.0</strong>: <a class="normal" href="#enter">How can I enter the IOCCC?</a></li>
@@ -454,7 +454,8 @@
<li><strong>Q 1.6</strong>: <a class="normal" href="#extra-files">What are extra files and how may I include additional files beyond the max allowed?</a></li>
<li><strong>Q 1.7</strong>: <a class="normal" href="#ai">May I use AI, Virtual coding assistants, or similar tools to write my submission?</a></li>
<li><strong>Q 1.8</strong>: <a class="normal" href="#rule17">What are the details behind Rule 17?</a></li>
<li><strong>Q 1.9</strong>: <a class="normal" href="#uuid_file">How can I avoid re-entering my UUID to mkiocccentry?</a></li>
<li><strong>Q 1.9</strong>: <a class="normal" href="#uuid">How can I avoid re-entering my UUID to mkiocccentry?</a></li>
<li><strong>Q 1.10</strong>: <a class="normal" href="#submission_dir">How can I avoid having to move or delete my submission directory for the same workdir?</a></li>
</ul>
<h2 id="ioccc-judging-process">2. <a href="#judging_proceess">IOCCC Judging process</a></h2>
<ul>
@@ -1057,11 +1058,15 @@ the questions, you can use the <code>-d</code> option (which is an alias for <co
where <code>21701</code> is the seed) to have the tool make up pseudo-randomly selected
answers.</p>
<p>Please note that the tool will <strong>NOT</strong> delete the directory it makes so if you
do have to try again you’ll have to remove it.</p>
do have to try again you’ll have to remove it (you can have it delete it if you
use the <code>-x</code> option though).</p>
<p>An example use of this option is:</p>
<pre><code> mkiocccentry -d workdir topdir</code></pre>
<p>This will run the tests that <code>mkiocccentry(1)</code>, write the JSON files, use
<code>chkentry(1)</code>, package the tarball and run <code>txzchk(1)</code> on it.</p>
<p>If you don’t want to deal with the having to move or delete the submission
directory, you could instead do:</p>
<pre><code> mkiocccentry -x -d workdir topdir</code></pre>
<p>See also the
FAQ on “<a href="#mkiocccentry">mkiocccentry</a>”,
the
@@ -1496,23 +1501,41 @@ do this <strong>AFTER</strong> the <a href="status.html">contest status</a> has
<a href="#open">open</a>.
</p>
<p>Jump to: <a href="#">top</a></p>
<div id="uuid">
<div id="uuid_file">
<h3 id="q-1.9-how-can-i-avoid-re-entering-my-uuid-to-mkiocccentry">Q 1.9: How can I avoid re-entering my UUID to mkiocccentry?</h3>
</div>
</div>
<p>Because some people might want to submit more than one submission, an option to
read the UUID from a file exists, so that you don’t have to repeatedly copy and
paste the UUID in. If the file is not a regular readable file or it does not
have a valid UUID, you will be prompted as if you had not used the option. If
you use the <code>-i answers</code> feature this will not be used as the UUID is included
in the answers file.</p>
<p>To use this feature all you have to do is put the UUID in a text file, in a
single line, with no spaces before or after it, and then run:</p>
<p>There are two ways to do this - it is purely a matter of preference. The first
way is to put your UUID in a text file (the UUID by itself on a single line)
with no spaces before or after it, and then run:</p>
<pre><code> mkiocccentry -u uuid workdir topdir</code></pre>
<p>where <code>uuid</code> is the file containing your UUID, <code>workdir</code> is the workdir and
<code>topdir</code> is the topdir.</p>
<p>The second way is to specify the UUID on the command line itself. For instance
if your UUID was <code>test</code> (for test mode) you could do:</p>
<pre><code> mkiocccentry -U test workdir topdir</code></pre>
<p>See also the
FAQ on “<a href="#answers_file">the answers file</a>”.</p>
<p>Jump to: <a href="#">top</a></p>
<div id="submission_dir">
<h3 id="q-1.10-how-can-i-avoid-having-to-move-or-delete-my-submission-directory-for-the-same-workdir">Q 1.10: How can I avoid having to move or delete my submission directory for the same workdir?</h3>
</div>
<p>If you wish to not have to worry about removing or moving the submission
directory under the workdir, you may use the <code>-x</code> option to <code>mkiocccentry</code>. For
instance, you can do:</p>
<pre><code> mkiocccentry -x workdir topdir</code></pre>
<p>and if the submission directory under workdir already exists it will be removed
first so you do not have to do so.</p>
<p>If for some reason your <code>rm</code> command cannot be found or does not exist you can
specify the path by the <code>-r rm</code> option.</p>
<p>Jump to: <a href="#">top</a></p>
<hr style="width:50%;text-align:left;margin-left:0">
<hr style="width:50%;text-align:left;margin-left:0">
<div id="judging_process">
@@ -1899,8 +1922,12 @@ the importance of this).
<ul>
<li>If this is an invalid UUID (malformed), you will be asked to correct it
until it is.</li>
<li>If the <code>-u uuid</code> option is used and the UUID in the file <code>uuid</code> is not malformed,
<li>If the <code>-u uuidfile</code> option is used and the UUID in the file <code>uuidfile</code> is not malformed,
the user will not be prompted for a UUID.</li>
<li>If the <code>-U uuidstr</code> option is used and the UUID is not malformed, the user
will not be prompted for a UUID.</li>
<li>The <code>-u</code> and <code>-U</code> options may not be used with any option that reads from
an answers file (<code>-i answers</code>, <code>-d</code>, <code>-s seed</code>).</li>
</ul></li>
<li>Ask the user for the submission slot (the submission number; see <a href="next/register.html">how to
register</a> and <a href="next/rules.html#rule17">Rule 17</a> for more details).
@@ -1912,7 +1939,10 @@ you will be asked to correct it until it is.</li>
<li>Make the submission directory under <code>topdir</code> in the form of
<code>workdir/submit.USERNAME-SLOT</code>.
<ul>
<li>If this directory already exists it is an error.</li>
<li>If this directory already exists it is an error, unless the <code>-x</code> option is
used, in which case it’ll be deleted.</li>
<li>If for some reason the default <code>rm</code> paths do not work, you may use <code>-r rm</code>
to specify the path to a working <code>rm</code> command.</li>
</ul></li>
<li>Change to the <code>topdir</code>.</li>
<li>Traverse the directory, creating lists of ignored/forbidden
+54 -7
View File
@@ -1,6 +1,6 @@
# IOCCC FAQ Table of Contents
This is FAQ version **28.2.14 2025-03-09**.
This is FAQ version **28.2.15 2025-03-10**.
## 0. [Entering the IOCCC: the bare minimum you need to know](#enter_questions)
@@ -28,7 +28,8 @@ This is FAQ version **28.2.14 2025-03-09**.
- **Q 1.6**: <a class="normal" href="#extra-files">What are extra files and how may I include additional files beyond the max allowed?</a>
- **Q 1.7**: <a class="normal" href="#ai">May I use AI, Virtual coding assistants, or similar tools to write my submission?</a>
- **Q 1.8**: <a class="normal" href="#rule17">What are the details behind Rule 17?</a>
- **Q 1.9**: <a class="normal" href="#uuid_file">How can I avoid re-entering my UUID to mkiocccentry?</a>
- **Q 1.9**: <a class="normal" href="#uuid">How can I avoid re-entering my UUID to mkiocccentry?</a>
- **Q 1.10**: <a class="normal" href="#submission_dir">How can I avoid having to move or delete my submission directory for the same workdir?</a>
## 2. [IOCCC Judging process](#judging_proceess)
@@ -785,7 +786,8 @@ where `21701` is the seed) to have the tool make up pseudo-randomly selected
answers.
Please note that the tool will **NOT** delete the directory it makes so if you
do have to try again you'll have to remove it.
do have to try again you'll have to remove it (you can have it delete it if you
use the `-x` option though).
An example use of this option is:
@@ -796,6 +798,13 @@ An example use of this option is:
This will run the tests that `mkiocccentry(1)`, write the JSON files, use
`chkentry(1)`, package the tarball and run `txzchk(1)` on it.
If you don't want to deal with the having to move or delete the submission
directory, you could instead do:
``` <!---sh-->
mkiocccentry -x -d workdir topdir
```
See also the
FAQ on "[mkiocccentry](#mkiocccentry)",
the
@@ -1267,9 +1276,12 @@ do this **AFTER** the [contest status](status.html) has changed to
Jump to: [top](#)
<div id="uuid">
<div id="uuid_file">
### Q 1.9: How can I avoid re-entering my UUID to mkiocccentry?
</div>
</div>
Because some people might want to submit more than one submission, an option to
read the UUID from a file exists, so that you don't have to repeatedly copy and
@@ -1278,8 +1290,9 @@ have a valid UUID, you will be prompted as if you had not used the option. If
you use the `-i answers` feature this will not be used as the UUID is included
in the answers file.
To use this feature all you have to do is put the UUID in a text file, in a
single line, with no spaces before or after it, and then run:
There are two ways to do this - it is purely a matter of preference. The first
way is to put your UUID in a text file (the UUID by itself on a single line)
with no spaces before or after it, and then run:
``` <!---sh-->
mkiocccentry -u uuid workdir topdir
@@ -1288,11 +1301,38 @@ single line, with no spaces before or after it, and then run:
where `uuid` is the file containing your UUID, `workdir` is the workdir and
`topdir` is the topdir.
The second way is to specify the UUID on the command line itself. For instance
if your UUID was `test` (for test mode) you could do:
``` <!---sh-->
mkiocccentry -U test workdir topdir
```
See also the
FAQ on "[the answers file](#answers_file)".
Jump to: [top](#)
<div id="submission_dir">
### Q 1.10: How can I avoid having to move or delete my submission directory for the same workdir?
</div>
If you wish to not have to worry about removing or moving the submission
directory under the workdir, you may use the `-x` option to `mkiocccentry`. For
instance, you can do:
``` <!---sh-->
mkiocccentry -x workdir topdir
```
and if the submission directory under workdir already exists it will be removed
first so you do not have to do so.
If for some reason your `rm` command cannot be found or does not exist you can
specify the path by the `-r rm` option.
Jump to: [top](#)
<hr style="width:50%;text-align:left;margin-left:0">
<hr style="width:50%;text-align:left;margin-left:0">
@@ -1788,8 +1828,12 @@ for more details on how to obtain this and [Rule 17](next/rules.html#rule17) for
the importance of this).
* If this is an invalid UUID (malformed), you will be asked to correct it
until it is.
* If the `-u uuid` option is used and the UUID in the file `uuid` is not malformed,
* If the `-u uuidfile` option is used and the UUID in the file `uuidfile` is not malformed,
the user will not be prompted for a UUID.
* If the `-U uuidstr` option is used and the UUID is not malformed, the user
will not be prompted for a UUID.
* The `-u` and `-U` options may not be used with any option that reads from
an answers file (`-i answers`, `-d`, `-s seed`).
1. Ask the user for the submission slot (the submission number; see [how to
register](next/register.html) and [Rule 17](next/rules.html#rule17) for more details).
* If this is out of range (see `MAX_SUBMIT_SLOT` in
@@ -1797,7 +1841,10 @@ register](next/register.html) and [Rule 17](next/rules.html#rule17) for more det
you will be asked to correct it until it is.
2. Make the submission directory under `topdir` in the form of
`workdir/submit.USERNAME-SLOT`.
* If this directory already exists it is an error.
* If this directory already exists it is an error, unless the `-x` option is
used, in which case it'll be deleted.
* If for some reason the default `rm` paths do not work, you may use `-r rm`
to specify the path to a working `rm` command.
3. Change to the `topdir`.
4. Traverse the directory, creating lists of ignored/forbidden
files/directories/symlinks as well as a list directories to make and a list of
+15 -2
View File
@@ -464,7 +464,7 @@ writing by <a href="../contact.html">contacting the judges</a>.</p>
</div>
</div>
<p class="leftbar">
These <a href="guidelines.html">IOCCC guidelines</a> are version <strong>28.44 2025-03-04</strong>.
These <a href="guidelines.html">IOCCC guidelines</a> are version <strong>28.45 2025-03-10</strong>.
</p>
<p class="leftbar">
The markdown form of these guidelines <a href="guidelines.md"
@@ -532,6 +532,11 @@ The reason for the times of day are so that key IOCCC events are <strong>calcula
to be a <strong>fun</strong>ctional UTC time. :-)
</p>
<p class="leftbar">
<strong>NOTE</strong>: the updates to these guidelines on 2025-03-10 explained the new <code>-u uuidfile</code> and <code>-U uuidstr</code> options and are <strong>NOT</strong> important to read, in order
to follow the guidelines. The options are in a release <strong>AFTER THIS</strong> IOCCC’s
official release and not updating the toolkit is <strong>PERFECTLY</strong> okay.
</p>
<p class="leftbar">
Until the contest status becomes <strong><a href="../faq.html#open">open</a></strong>,
the <a href="rules.html">IOCCC rules</a>,
<a href="guidelines.html">IOCCC guidelines</a> and the tools in the
@@ -595,7 +600,7 @@ previously uploaded submission by rebuilding your submission with the
<a href="https://submit.ioccc.org">submit server</a>.
</p>
<p class="leftbar">
<strong>HINT:</strong> So that you do not have to repeatedly answer all the
<strong>HINT:</strong> so that you do not have to repeatedly answer all the
questions, the <code>mkiocccentry(1)</code> tool has the options <code>-a answers</code>, <code>-A answers</code>
and <code>-i answers</code>, where <code>-a</code> will write to an answers file (if it does not
already exist), <code>-A</code> <strong>WILL OVERWRITE THE FILE</strong> and <code>-i</code> will read the answers from
@@ -609,6 +614,14 @@ circumvent this you can use the <code>-Y</code> option but we do not recommend t
if your update breaks a rule or there is some problem, you might not see it.
</p>
<p class="leftbar">
To help with not having to repeatedly enter a UUID, whether for the same
submission or multiple submissions, you can use the <code>-u uuidfile</code> or <code>-U UUID</code>
option. See the
FAQ on “<a href="../faq.html#uuid">how to avoid re-entering your UUID</a>”
for more details. Note that the <code>-i answers</code> option cannot be used with the UUID
options as the answers file includes the UUID.
</p>
<p class="leftbar">
The overall size limit (see <a href="rules.html#rule2a">Rule 2a</a>) on <code>prog.c</code> has been
<strong>increased from 4096 to 4993</strong> bytes.
The <a href="rules.html#rule2a">Rule 2a</a> size was changed from
+18 -2
View File
@@ -53,7 +53,7 @@ Jump to: [top](#)
</div>
<p class="leftbar">
These [IOCCC guidelines](guidelines.html) are version **28.44 2025-03-04**.
These [IOCCC guidelines](guidelines.html) are version **28.45 2025-03-10**.
</p>
<p class="leftbar">
@@ -142,6 +142,13 @@ The reason for the times of day are so that key IOCCC events are **calculated**
to be a **fun**ctional UTC time. :-)
</p>
<p class="leftbar">
**NOTE**: the updates to these guidelines on 2025-03-10 explained the new `-u
uuidfile` and `-U uuidstr` options and are **NOT** important to read, in order
to follow the guidelines. The options are in a release **AFTER THIS** IOCCC's
official release and not updating the toolkit is **PERFECTLY** okay.
</p>
<p class="leftbar">
Until the contest status becomes **[open](../faq.html#open)**,
the [IOCCC rules](rules.html),
@@ -214,7 +221,7 @@ previously uploaded submission by rebuilding your submission with the
</p>
<p class="leftbar">
**HINT:** So that you do not have to repeatedly answer all the
**HINT:** so that you do not have to repeatedly answer all the
questions, the `mkiocccentry(1)` tool has the options `-a answers`, `-A answers`
and `-i answers`, where `-a` will write to an answers file (if it does not
already exist), `-A` **WILL OVERWRITE THE FILE** and `-i` will read the answers from
@@ -229,6 +236,15 @@ circumvent this you can use the `-Y` option but we do not recommend this because
if your update breaks a rule or there is some problem, you might not see it.
</p>
<p class="leftbar">
To help with not having to repeatedly enter a UUID, whether for the same
submission or multiple submissions, you can use the `-u uuidfile` or `-U UUID`
option. See the
FAQ on "[how to avoid re-entering your UUID](../faq.html#uuid)"
for more details. Note that the `-i answers` option cannot be used with the UUID
options as the answers file includes the UUID.
</p>
<p class="leftbar">
The overall size limit (see [Rule 2a](rules.html#rule2a)) on `prog.c` has been
**increased from 4096 to 4993** bytes.