checkpoint rules version 29.04 2025-11-20
Switched to "#" (hash) for headings in `rules.md`. Added "-" (dash) after the rule number and before the rule keyword. Adjusted links rules elsewhere according to the above. Ran `make quick_www` to perform the above.
This commit is contained in:
1 parent
5021fa611b
commit
ee2f499839
15 files changed
+305
-326
No files matched your search
@@ -480,7 +480,7 @@
|
||||
<li><strong>Q 1.4</strong>: <a class="normal" href="#mkiocccentry_test">How can I check if my submission passes tests without having to answer questions?</a></li>
|
||||
<li><strong>Q 1.5</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.6</strong>: <a class="normal" href="#ai">May I use AI, LLM, Virtual coding assistants, or similar tools to write my submission?</a></li>
|
||||
<li><strong>Q 1.7</strong>: <a class="normal" href="#rule17">What are the details behind Rule 17?</a></li>
|
||||
<li><strong>Q 1.7</strong>: <a class="normal" href="#rule17">What are the details behind Rule 17 - Packaging?</a></li>
|
||||
<li><strong>Q 1.8</strong>: <a class="normal" href="#uuid">How can I avoid re-entering my UUID to mkiocccentry?</a></li>
|
||||
<li><strong>Q 1.9</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>
|
||||
<li><strong>Q 1.10</strong>: <a class="normal" href="#download_submission">Can I download my submission tarball from the submit server?</a></li>
|
||||
@@ -492,7 +492,7 @@
|
||||
<li><strong>Q 2.1</strong>: <a class="normal" href="#feedback">How can I comment or make a suggestion on IOCCC rules, guidelines and tools?</a></li>
|
||||
<li><strong>Q 2.2</strong>: <a class="normal" href="#warnings">Are there any compiler warnings that I should not worry about in my submissions?</a></li>
|
||||
<li><strong>Q 2.3</strong>: <a class="normal" href="#frequent-themes">What types of entries have been frequently submitted to the IOCCC?</a></li>
|
||||
<li><strong>Q 2.4</strong>: <a class="normal" href="#rule_2_broken">How did an entry that breaks the size rule 2 win the IOCCC?</a></li>
|
||||
<li><strong>Q 2.4</strong>: <a class="normal" href="#rule_2_broken">How did an entry win the IOCCC that breaks Rule 2 - Size?</a></li>
|
||||
<li><strong>Q 2.5</strong>: <a class="normal" href="#submissions">How many submissions do the judges receive for a given IOCCC?</a></li>
|
||||
<li><strong>Q 2.6</strong>: <a class="normal" href="#judging_time">How much time does it take to judge the contest?</a></li>
|
||||
<li><strong>Q 2.7</strong>: <a class="normal" href="#judging_rounds">How many judging rounds do you have?</a></li>
|
||||
@@ -658,7 +658,7 @@
|
||||
repo</a> and it is <strong>required</strong> that you
|
||||
use it to package your submission. Not doing so puts you at a great risk of
|
||||
violating the <a href="next/rules.html">Rules</a> and in particular
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>.</p>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</p>
|
||||
<p>Jump to: <a href="#">top</a></p>
|
||||
<div id="about_mkiocccentry">
|
||||
<h4 id="q-0.1.1-what-is-mkiocccentry-in-simple-terms">Q 0.1.1: What is <code>mkiocccentry</code> in simple terms?</h4>
|
||||
@@ -773,7 +773,7 @@ directory</strong> will be created, with the name based on your IOCCC registrati
|
||||
username, which is <strong>in the form of a UUID</strong>, and submission number along with
|
||||
the timestamp; see the <a href="next/rules.html">rules</a> for more details on this, and in
|
||||
particular
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>.</p>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</p>
|
||||
<p><strong>IMPORTANT NOTE</strong>: the tools that require other tools, <code>mkiocccentry(1)</code> and
|
||||
<code>txzchk(1)</code>, will, as of version <code>2.0.2 2025-03-11</code>, search under <code>$PATH</code>. If
|
||||
you have an earlier version and you have not installed the tools and run the
|
||||
@@ -934,7 +934,7 @@ rounds; we look at the author name only if an entry wins. See the
|
||||
<li>leaving the remark section empty (which would also indicate that you did not
|
||||
use <code>mkiocccentry(1)</code>, as it requires it to not be of size 0, though if you only
|
||||
include whitespace you would still be violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>).</li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>).</li>
|
||||
</ul>
|
||||
<p>Jump to: <a href="#">top</a></p>
|
||||
<div id="try_scripts">
|
||||
@@ -978,11 +978,11 @@ for more details.</p>
|
||||
<p>See the
|
||||
FAQ on “<a href="#rule17">Rule 17</a>”
|
||||
and
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>
|
||||
itself.</p>
|
||||
<p>Do remember that if your submission requires different filenames, then you
|
||||
<strong>MUST</strong> make a <strong>COPY</strong> of them in your <code>Makefile</code>. See also
|
||||
<a href="next/rules.html#rule-5-purity">Rule 5 Purity</a>.</p>
|
||||
<a href="next/rules.html#rule-5---purity">Rule 5 - Purity</a>.</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">
|
||||
@@ -1126,12 +1126,12 @@ level directory.</p>
|
||||
itself is an extra file, meaning it counts <strong>AS</strong> an extra file.
|
||||
This file does <strong>NOT</strong> need to pass the <code>txzchk(1)</code> tests; only your submission
|
||||
tarball needs to pass these tests. However see below if you do do this.</p>
|
||||
<p>Please pay careful attention to <a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a> and in
|
||||
<p>Please pay careful attention to <a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a> 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 <a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p>
|
||||
of violating <a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p>
|
||||
<p>Also, remember what the <a href="next/guidelines.html">guidelines</a> say:</p>
|
||||
<blockquote>
|
||||
<p><strong>IMPORTANT REMINDER</strong>: make <strong>SURE</strong> your tarball does <strong>NOT</strong> reveal who you are!
|
||||
@@ -1155,7 +1155,7 @@ ultimate author of the code you submit.</p>
|
||||
you used as well as how you used them to help write your submission.</p>
|
||||
<p>Jump to: <a href="#">top</a></p>
|
||||
<div id="rule17">
|
||||
<h3 id="q-1.7-what-are-details-behind-rule-17">Q 1.7: What are details behind Rule 17?</h3>
|
||||
<h3 id="q-1.7-what-are-details-behind-rule-17---packaging">Q 1.7: What are details behind Rule 17 - Packaging?</h3>
|
||||
</div>
|
||||
<h3 id="tldr-rule-17---use-mkiocccentry1">TL;DR Rule 17 - Use <code>mkiocccentry(1)</code></h3>
|
||||
<p>This is a <strong>COMPLEX</strong> rule. <strong>Violating this rule WILL CAUSE YOUR SUBMISSION TO
|
||||
@@ -1174,7 +1174,7 @@ contains <strong>IMPORTANT</strong> tools and libraries such as:</p>
|
||||
<li><code>chksubmit(1)</code> (which uses <code>jparse(3)</code> and is a wrapper to <code>chkentry(1)</code>)</li>
|
||||
</ul>
|
||||
<p>The above mentioned tools will help you verify that your submission
|
||||
conforms to <a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>. Each of these tool has a <code>-h</code>
|
||||
conforms to <a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>. Each of these tool has a <code>-h</code>
|
||||
option that provides command line help. For additional details of each tool, see
|
||||
its man page, and in some cases, the <a href="next/guidelines.html">IOCCC guidelines</a>.</p>
|
||||
<p>The maximum number of <strong>extra files</strong> is 31. See the
|
||||
@@ -1224,7 +1224,7 @@ for help.</p>
|
||||
<p>The <code>remarks.md</code> <strong>MUST</strong> be a <strong>non</strong>-empty file in markdown format
|
||||
(<code>mkiocccentry(1)</code> only checks the file size but if you do not have any text in
|
||||
it you still risk violating this rule). See also
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>
|
||||
and our
|
||||
FAQ on “<a href="#remarks_md">remarks.md</a>”,
|
||||
our
|
||||
@@ -1318,16 +1318,16 @@ permissions and <code>mkiocccentry(1)</code> does this for you. In particular: d
|
||||
<code>-r-xr-xr-x</code> (i.e. <code>0555</code>); and all other files <strong>MUST</strong> be <code>-r--r--r--</code> (i.e.
|
||||
<code>0444</code>). If any file or directory does not have the correct permissions, your
|
||||
submission <strong>WILL</strong> be rejected for violating
|
||||
<a href="next/rules.html#rule17">Rule 17 Packaging</a>!</p>
|
||||
<a href="next/rules.html#rule17">Rule 17 - Packaging</a>!</p>
|
||||
<p>After <code>mkiocccentry(1)</code> 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
|
||||
<strong>error</strong>.</p>
|
||||
<p>If you do need different permissions, then see the
|
||||
FAQ on “<a href="#file_perms">file permissions</a>”. Also keep in mind
|
||||
<a href="next/rules.html#rule-4-files">Rule 4 Files</a>,
|
||||
<a href="next/rules.html#rule-5-purity">Rule 5 Purity</a>,
|
||||
<a href="next/rules.html#rule-4---files">Rule 4 - Files</a>,
|
||||
<a href="next/rules.html#rule-5---purity">Rule 5 - Purity</a>,
|
||||
and
|
||||
<a href="next/rules.html#rule-16-anonymous">Rule 16 Anonymous</a>.</p>
|
||||
<a href="next/rules.html#rule-16---anonymous">Rule 16 - Anonymous</a>.</p>
|
||||
<p>The <code>txzchk(1)</code> tool will also verify file/directory permissions (and many other
|
||||
things) for you, and so will <code>chksubmit(1)</code> (along with other checks on files and
|
||||
directories in your submission directory, including the two required JSON files,
|
||||
@@ -1340,18 +1340,18 @@ page</a>.</p>
|
||||
will run <code>fnamchk(1)</code> as part of its algorithm. If you use <code>mkiocccentry(1)</code>
|
||||
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
|
||||
<a href="next/rules.html#rule-4-files">Rule 4 Files</a>
|
||||
<a href="next/rules.html#rule-4---files">Rule 4 - Files</a>
|
||||
or
|
||||
<a href="next/rules.html#rule17">Rule 17 Packaging</a>.</p>
|
||||
<a href="next/rules.html#rule17">Rule 17 - Packaging</a>.</p>
|
||||
<p>The <code>fnamchk(1)</code>, which <code>txzchk(1)</code> executes, will verify that the
|
||||
filename is correct. But if you do package your tarball manually, and you have a
|
||||
mismatch in what is in the tarball and the name, <code>txzchk(1)</code> will flag the
|
||||
discrepancy as an error and exit with non-zero.</p>
|
||||
<p>These checks <strong>MUST PASS</strong>. If they do not you stand a significant chance of
|
||||
having your submission rejected for violating
|
||||
<a href="next/rules.html#rule-4-files">Rule 4 Files</a>
|
||||
<a href="next/rules.html#rule-4---files">Rule 4 - Files</a>
|
||||
or
|
||||
<a href="next/rules.html#rule17">Rule 17 Packaging</a>.</p>
|
||||
<a href="next/rules.html#rule17">Rule 17 - Packaging</a>.</p>
|
||||
<div id="max-files">
|
||||
<h4 id="maximum-number-of-files-per-submission">Maximum number of files per submission</h4>
|
||||
</div>
|
||||
@@ -1381,9 +1381,9 @@ The <code>mkiocccentry(1)</code> tool uses the v7 format. For instance you might
|
||||
<pre><code> tar --format=v7 -cJf foo.txz directory</code></pre>
|
||||
<hr style="width:50%;text-align:left;margin-left:0">
|
||||
<p><strong>IMPORTANT</strong>: where
|
||||
<a href="next/rules.html#rule-4-files">Rule 4 Files</a>,
|
||||
<a href="next/rules.html#rule-4---files">Rule 4 - Files</a>,
|
||||
and
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>.
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>.
|
||||
and the tools from the latest
|
||||
release of the <a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry repo</a>
|
||||
conflict, the <a href="judges.html">IOCCC judges</a> will use their best judgment which
|
||||
@@ -1418,9 +1418,9 @@ page</a>,
|
||||
for help here and also read our
|
||||
FAQ on “<a href="#mkiocccentry_bugs">mkiocccentry repo bugs</a>”.</p>
|
||||
<p>At the risk of stating the obvious: submissions that violate
|
||||
<a href="next/rules.html#rule-4-files">Rule 4 Files</a>,
|
||||
<a href="next/rules.html#rule-4---files">Rule 4 - Files</a>,
|
||||
or
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>
|
||||
<strong>WILL BE REJECTED</strong>, so <strong>BE SURE</strong> to use the latest release of the
|
||||
<a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry repo</a>, to form and test
|
||||
your submission’s xz compressed tarball. Do <strong>NOT</strong> assume you have the most
|
||||
@@ -1683,7 +1683,7 @@ of the same theme.</p>
|
||||
<p>Jump to: <a href="#">top</a></p>
|
||||
<div id="rule_2_broken">
|
||||
<div id="rule_breaking_entry">
|
||||
<h3 id="q-2.4-how-did-an-entry-that-breaks-the-size-rule-2-win-the-ioccc">Q 2.4: How did an entry that breaks the size rule 2 win the IOCCC?</h3>
|
||||
<h3 id="q-2.4-how-did-an-entry-win-the-ioccc-that-breaks-rule-2---size">Q 2.4: How did an entry win the IOCCC that breaks Rule 2 - Size?</h3>
|
||||
</div>
|
||||
</div>
|
||||
<p>As entries have been fixed it is entirely possible that some of the entries no
|
||||
@@ -1900,9 +1900,9 @@ two JSON files, <code>.auth.json</code> and <code>.info.json</code> as well as t
|
||||
<code>.info.json</code> manifest. (Okay there is an option to skip files but this is for
|
||||
the judges <strong>ONLY</strong>; use of this option to validate your submission puts you at
|
||||
a great risk of violating
|
||||
<a href="next/rules.html#rule-4-files">Rule 4 Files</a>,
|
||||
<a href="next/rules.html#rule-4---files">Rule 4 - Files</a>,
|
||||
or
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!).</p>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!).</p>
|
||||
<p>As an example, if your submission directory is
|
||||
<code>00000000-0000-4000-0000-000000000000-3/</code> then you should run the following
|
||||
command:</p>
|
||||
@@ -1922,9 +1922,9 @@ FAQ on “<a href="#auth_json">.auth.json</a>”
|
||||
and the
|
||||
FAQ on “<a href="#info_json">.info.json</a>”
|
||||
as well as
|
||||
<a href="next/rules.html#rule-4-files">Rule 4 Files</a>,
|
||||
<a href="next/rules.html#rule-4---files">Rule 4 - Files</a>,
|
||||
and
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>
|
||||
for more information.</p>
|
||||
<p><strong>NOTE</strong>: the <code>chksubmit(1)</code> tool invokes <code>chkentry(1)</code> but as a contestant you
|
||||
do not need to worry about those details. One should use <code>chksubmit(1)</code> instead
|
||||
@@ -2015,12 +2015,12 @@ to be valid. If this is not the case your submission <strong>WILL BE</strong> re
|
||||
<li>The IOCCC contestant ID used as a username in the form of <strong>in the form of
|
||||
a UUID</strong> and submission number; see the <a href="next/rules.html">Rules</a> for more details
|
||||
on this, and in particular
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>.</li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</li>
|
||||
</ul>
|
||||
<p><strong>NOTE:</strong> if the contest ID is <strong>NOT</strong> in this format then <code>fnamchk</code> will
|
||||
report it as an <strong>error</strong> and your submission <strong>WILL BE</strong> rejected for
|
||||
violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>.</p></li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</p></li>
|
||||
<li><p><code>tarball</code> (double quoted string)</p>
|
||||
<ul>
|
||||
<li>The xz compressed tarball filename.</li>
|
||||
@@ -2028,10 +2028,10 @@ violating
|
||||
<p><strong>IMPORTANT:</strong> this <strong>MUST</strong> match the actual tarball’s <strong>filename</strong> in order for
|
||||
this to be valid. If there is a mismatch you stand a great risk of having
|
||||
your submission rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!
|
||||
Moreover, it is possible that <code>txzchk</code> will report a problem through
|
||||
<code>fnamchk(1)</code> which also puts you at great risk of violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>. The
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>. The
|
||||
<code>txzchk(1)</code> tool will use the output of <code>fnamchk</code> to
|
||||
obtain the correct directory <em>name</em> in the tarball; if <code>fnamchk</code> fails to
|
||||
validate your filename, or if you have the wrong directory name in the
|
||||
@@ -2046,7 +2046,7 @@ tarball, this will be flaggd.</p></li>
|
||||
in the <a href="https://github.com/ioccc-src/mkiocccentry/">mkiocccentry repo</a>). If
|
||||
this is not the case you stand a great risk of having your submission
|
||||
rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>.</p></li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</p></li>
|
||||
<li><p><code>author_count</code> (number)</p>
|
||||
<ul>
|
||||
<li>How many authors this submission has.</li>
|
||||
@@ -2119,7 +2119,7 @@ the range of 1 <strong>THROUGH</strong> <code>MAX_AFFILIATION_LEN</code> (see
|
||||
in the <a href="https://github.com/ioccc-src/mkiocccentry/">mkiocccentry repo</a>). If
|
||||
this is not the case you stand a great risk of having your submission
|
||||
rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>.</p>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</p>
|
||||
<p><strong>NOTE:</strong> an <strong>affiliation</strong> does <strong>NOT</strong> have any affect on whether you will win or not.</p></li>
|
||||
<li><p><code>past_winning_author</code> (boolean)</p>
|
||||
<ul>
|
||||
@@ -2204,9 +2204,9 @@ will use it on the submission directory as part of the judging process.</p>
|
||||
is reported invalid by <code>chksubmit(1)</code>, or if your submission directory is
|
||||
reported invalid by <code>chksubmit(1)</code>, your submission will almost certainly be
|
||||
rejected for violating the <a href="next/rules.html">Rules</a> and in particular
|
||||
<a href="next/rules.html#rule-4-files">Rule 4 Files</a>,
|
||||
<a href="next/rules.html#rule-4---files">Rule 4 - Files</a>,
|
||||
and
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>.</p>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</p>
|
||||
<p>An obvious example where <code>chksubmit(1)</code> would fail to validate <code>.auth.json</code> is if
|
||||
there is a mismatch of type in the JSON file with what is expected, for
|
||||
instance, if in <code>.auth.json</code> the <code>no_comment</code> that we chose to not comment on is
|
||||
@@ -2215,9 +2215,9 @@ 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 <code>chksubmit(1)</code>) your submission would be
|
||||
rejected for violating
|
||||
<a href="next/rules.html#rule-4-files">Rule 4 Files</a>,
|
||||
<a href="next/rules.html#rule-4---files">Rule 4 - Files</a>,
|
||||
and
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>
|
||||
and in particular
|
||||
because <code>chksubmit(1)</code> would not validate the <code>.auth.json</code> file (and maybe other
|
||||
things too).</p>
|
||||
@@ -2337,7 +2337,7 @@ this is not the case your submission <strong>WILL BE</strong> rejected!</p></li>
|
||||
<li>The IOCCC contestant ID used as a username in the form of <strong>in the form of
|
||||
a UUID</strong> and submission number; see the <a href="next/rules.html">rules</a> for more details
|
||||
on this, and in particular
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>.</li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</li>
|
||||
</ul></li>
|
||||
<li><p><code>submit_slot</code> (number)</p>
|
||||
<ul>
|
||||
@@ -2349,7 +2349,7 @@ on this, and in particular
|
||||
in the <a href="https://github.com/ioccc-src/mkiocccentry/">mkiocccentry repo</a>). If
|
||||
this is not the case you stand a great risk of having your submission
|
||||
rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>.</p></li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</p></li>
|
||||
<li><p><code>title</code> (double quoted string)</p>
|
||||
<ul>
|
||||
<li>A short name (length >= 1 <strong>THROUGH</strong> <code>MAX_TITLE_LEN</code>, defined in
|
||||
@@ -2359,7 +2359,7 @@ matches the regexp <code>[a-z0-9][a-z0-9_+-]*</code>.</li>
|
||||
</ul>
|
||||
<p><strong>IMPORTANT:</strong> if this is <strong>NOT</strong> the case you stand a great risk of having your submission
|
||||
rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p></li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p></li>
|
||||
<li><p><code>abstract</code> (double quoted string)</p>
|
||||
<ul>
|
||||
<li>A one line summary of your submission, with a length of 1 <strong>THROUGH</strong>
|
||||
@@ -2370,7 +2370,7 @@ in the <a href="https://github.com/ioccc-src/mkiocccentry/">mkiocccentry repo</a
|
||||
<p>The <code>abstract</code> may not contain a <code>;</code> (semicolon), nor <code>&</code> (ampersand), nor <code>,</code> (comma).</p>
|
||||
<p><strong>IMPORTANT:</strong> if your abstract is 0 in length or > the maximum abstract length you
|
||||
stand a great risk of having your submission rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p></li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p></li>
|
||||
<li><p><code>tarball</code> (double quoted string)</p>
|
||||
<ul>
|
||||
<li>The xz compressed tarball filename.</li>
|
||||
@@ -2378,10 +2378,10 @@ stand a great risk of having your submission rejected for violating
|
||||
<p><strong>IMPORTANT:</strong> this <strong>MUST</strong> match the actual tarball’s <strong>filename</strong> in order for
|
||||
this to be valid. If there is a mismatch you stand a great risk of having
|
||||
your submission rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!
|
||||
Moreover, it is possible that <code>txzchk</code> will report a problem through
|
||||
<code>fnamchk(1)</code> which also puts you at great risk of violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>.
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>.
|
||||
The <code>txzchk(1)</code> tool will use the output of <code>fnamchk</code> to
|
||||
obtain the correct directory <em>name</em> in the tarball; if <code>fnamchk</code> fails to
|
||||
validate your filename, or if you have the wrong directory name in the
|
||||
@@ -2417,7 +2417,7 @@ violation, else <code>false</code>.</li>
|
||||
calculated size is <strong>NOT</strong>
|
||||
violated but this is <code>true</code> then you stand a good chance of having your
|
||||
submission rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>.</p></li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</p></li>
|
||||
<li><p><code>rule_2a_mismatch</code> (boolean)</p>
|
||||
<ul>
|
||||
<li><code>true</code> if
|
||||
@@ -2436,12 +2436,12 @@ violation, else <code>false</code>.</li>
|
||||
calculated size is <strong>NOT</strong>
|
||||
violated but this is <code>true</code> then you stand a good chance of having your
|
||||
submission rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>.</p></li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</p></li>
|
||||
<li><p><code>highbit_warning</code> (boolean)</p>
|
||||
<ul>
|
||||
<li><code>true</code> if <code>iocccsize</code> detects a high bit (unescaped octets with the high
|
||||
bit set - octet value >= 128); see
|
||||
<a href="next/rules.html#rule-12-utf-8">Rule 12 UTF-8</a>,
|
||||
<a href="next/rules.html#rule-12---utf-8">Rule 12 - UTF-8</a>,
|
||||
else <code>false</code>.</li>
|
||||
</ul></li>
|
||||
<li><p><code>nul_warning</code> (boolean)</p>
|
||||
@@ -2469,7 +2469,7 @@ else <code>false</code>.</li>
|
||||
</ul>
|
||||
<p><strong>IMPORTANT:</strong> if the <code>Makefile</code> file has no problems and this is <code>true</code> then
|
||||
you stand a good chance of having your submission rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p>
|
||||
<p>See the
|
||||
FAQ on “<a href="#makefile">Makefile</a>”
|
||||
for more information.</p></li>
|
||||
@@ -2479,7 +2479,7 @@ for more information.</p></li>
|
||||
</ul>
|
||||
<p><strong>IMPORTANT:</strong>: if the <code>Makefile</code> file does <strong>NOT</strong> have an <code>all</code> rule then
|
||||
you stand a good chance of having your submission rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p>
|
||||
<p>See the
|
||||
FAQ on “<a href="#makefile">Makefile</a>”
|
||||
for more information.</p></li>
|
||||
@@ -2490,7 +2490,7 @@ for more information.</p></li>
|
||||
<p><strong>IMPORTANT:</strong> if the <code>Makefile</code> file does <strong>NOT</strong> have an <code>all</code> rule and this
|
||||
boolean is <code>true</code> then you stand a good chance of having your
|
||||
submission rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p>
|
||||
<p>See the
|
||||
FAQ on “<a href="#makefile">Makefile</a>”
|
||||
for more information.</p></li>
|
||||
@@ -2501,7 +2501,7 @@ for more information.</p></li>
|
||||
<p><strong>IMPORTANT:</strong> if the <code>Makefile</code> file does <strong>NOT</strong> have a <code>clean</code> rule and this
|
||||
boolean is <code>true</code> then you stand a good chance of having your submission
|
||||
rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p>
|
||||
<p>See the
|
||||
FAQ on “<a href="#makefile">Makefile</a>”
|
||||
for more information.</p></li>
|
||||
@@ -2512,7 +2512,7 @@ for more information.</p></li>
|
||||
<p><strong>IMPORTANT:</strong> if the <code>Makefile</code> file does <strong>NOT</strong> have an <code>clobber</code> rule and this
|
||||
boolean is <code>true</code> then you stand a good chance of having your submission
|
||||
rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p>
|
||||
<p>See the
|
||||
FAQ on “<a href="#makefile">Makefile</a>”
|
||||
for more information.</p></li>
|
||||
@@ -2523,7 +2523,7 @@ for more information.</p></li>
|
||||
<p><strong>IMPORTANT:</strong> if the <code>Makefile</code> file does <strong>NOT</strong> have a <code>try</code> rule and this
|
||||
boolean is <code>true</code> then you stand a good chance of having your submission
|
||||
rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p>
|
||||
<p>See the
|
||||
FAQ on “<a href="#makefile">Makefile</a>”
|
||||
for more information.</p></li>
|
||||
@@ -2549,7 +2549,7 @@ for more information.</li>
|
||||
</ul>
|
||||
<p><strong>IMPORTANT:</strong> if this is <strong>NOT</strong> the case you stand a
|
||||
great chance of having your submission rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p></li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p></li>
|
||||
<li><p><code>auth_JSON</code> (double quoted string)</p>
|
||||
<ul>
|
||||
<li>This <code>MUST</code> be <code>".auth.json"</code>, defined as <code>AUTH_JSON_FILENAME</code> in
|
||||
@@ -2562,7 +2562,7 @@ for more information.</li>
|
||||
</ul>
|
||||
<p><strong>IMPORTANT:</strong> if this is <strong>NOT</strong> the case you stand a great chance of having your
|
||||
submission rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p></li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p></li>
|
||||
<li><p><code>c_src</code> (double quoted string)</p>
|
||||
<ul>
|
||||
<li>This <code>MUST</code> be <code>"prog.c"</code>, defined as <code>PROG_C_FILENAME</code> in
|
||||
@@ -2572,7 +2572,7 @@ is your submission source code.</li>
|
||||
</ul>
|
||||
<p><strong>IMPORTANT:</strong> if this is <strong>NOT</strong> the case you stand a great chance of having your
|
||||
submission rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p></li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p></li>
|
||||
<li><p><code>Makefile</code> (double quoted string)</p>
|
||||
<ul>
|
||||
<li>This <code>MUST</code> be <code>"Makefile"</code>, defined as <code>MAKEFILE_FILENAME</code> in
|
||||
@@ -2585,7 +2585,7 @@ for more information.</li>
|
||||
</ul>
|
||||
<p><strong>IMPORTANT:</strong> if this is <strong>NOT</strong> the case you stand a great chance of having your
|
||||
submission rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p></li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p></li>
|
||||
<li><p><code>remarks</code> (double quoted string)</p>
|
||||
<ul>
|
||||
<li>This <code>MUST</code> be <code>"remarks.md"</code>, defined as <code>REMARKS_FILENAME</code> in
|
||||
@@ -2598,7 +2598,7 @@ for more information.</li>
|
||||
</ul>
|
||||
<p><strong>IMPORTANT:</strong> if this is <strong>NOT</strong> the case you stand a great chance of having your
|
||||
submission rejected for violating
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p></li>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p></li>
|
||||
</ul>
|
||||
<p>The <code>manifest</code> <strong>array</strong> also <strong>OPTIONALLY</strong> has one or more of the field:</p>
|
||||
<ul>
|
||||
@@ -2611,7 +2611,7 @@ and <code>chksubmit</code> will verify this for you; it is <strong>ALSO</strong>
|
||||
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
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!
|
||||
On the other hand, <strong>ONLY</strong> <code>mkiocccentry</code> will
|
||||
verify that the files exist and can be read; <code>txzchk(1)</code> will <strong>NOT</strong> do
|
||||
this for you as it only <strong>LISTS</strong> the tarball: it does <strong>NOT</strong> extract it.
|
||||
@@ -2674,7 +2674,7 @@ 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 <code>chksubmit</code>) your submission would be
|
||||
rejected for violating
|
||||
Rule 17 Packaging](next/rules.html#rule-17-packaging),
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>,
|
||||
and in particular
|
||||
because <code>chksubmit</code> would not validate the <code>.info.json</code> file.</p>
|
||||
<p>If you wish to <strong>verify</strong> that your <code>.info.json</code> file is valid <strong>JSON</strong> then see the
|
||||
|
||||
@@ -26,7 +26,7 @@ This is FAQ version **28.2.24 2025-11-18**.
|
||||
- **Q 1.4**: <a class="normal" href="#mkiocccentry_test">How can I check if my submission passes tests without having to answer questions?</a>
|
||||
- **Q 1.5**: <a class="normal" href="#extra-files">What are extra files and how may I include additional files beyond the max allowed?</a>
|
||||
- **Q 1.6**: <a class="normal" href="#ai">May I use AI, LLM, Virtual coding assistants, or similar tools to write my submission?</a>
|
||||
- **Q 1.7**: <a class="normal" href="#rule17">What are the details behind Rule 17?</a>
|
||||
- **Q 1.7**: <a class="normal" href="#rule17">What are the details behind Rule 17 - Packaging?</a>
|
||||
- **Q 1.8**: <a class="normal" href="#uuid">How can I avoid re-entering my UUID to mkiocccentry?</a>
|
||||
- **Q 1.9**: <a class="normal" href="#submission_dir">How can I avoid having to move or delete my submission directory for the same workdir?</a>
|
||||
- **Q 1.10**: <a class="normal" href="#download_submission">Can I download my submission tarball from the submit server?</a>
|
||||
@@ -38,7 +38,7 @@ This is FAQ version **28.2.24 2025-11-18**.
|
||||
- **Q 2.1**: <a class="normal" href="#feedback">How can I comment or make a suggestion on IOCCC rules, guidelines and tools?</a>
|
||||
- **Q 2.2**: <a class="normal" href="#warnings">Are there any compiler warnings that I should not worry about in my submissions?</a>
|
||||
- **Q 2.3**: <a class="normal" href="#frequent-themes">What types of entries have been frequently submitted to the IOCCC?</a>
|
||||
- **Q 2.4**: <a class="normal" href="#rule_2_broken">How did an entry that breaks the size rule 2 win the IOCCC?</a>
|
||||
- **Q 2.4**: <a class="normal" href="#rule_2_broken">How did an entry win the IOCCC that breaks Rule 2 - Size?</a>
|
||||
- **Q 2.5**: <a class="normal" href="#submissions">How many submissions do the judges receive for a given IOCCC?</a>
|
||||
- **Q 2.6**: <a class="normal" href="#judging_time">How much time does it take to judge the contest?</a>
|
||||
- **Q 2.7**: <a class="normal" href="#judging_rounds">How many judging rounds do you have?</a>
|
||||
@@ -215,7 +215,7 @@ 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 Packaging](next/rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging).
|
||||
|
||||
|
||||
Jump to: [top](#)
|
||||
@@ -386,7 +386,7 @@ 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 Packaging](next/rules.html#rule-17-packaging).
|
||||
[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
|
||||
@@ -576,7 +576,7 @@ rounds; we look at the author name only if an entry wins. See the
|
||||
- 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 Packaging](next/rules.html#rule-17-packaging)).
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging)).
|
||||
|
||||
|
||||
Jump to: [top](#)
|
||||
@@ -635,12 +635,12 @@ for more details.
|
||||
See the
|
||||
FAQ on "[Rule 17](#rule17)"
|
||||
and
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)
|
||||
[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 5 Purity](next/rules.html#rule-5-purity).
|
||||
[Rule 5 - Purity](next/rules.html#rule-5---purity).
|
||||
|
||||
|
||||
Jump to: [top](#)
|
||||
@@ -852,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 Packaging](next/rules.html#rule-17-packaging) 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 Packaging](next/rules.html#rule-17-packaging)!
|
||||
of violating [Rule 17 - Packaging](next/rules.html#rule-17---packaging)!
|
||||
|
||||
Also, remember what the [guidelines](next/guidelines.html) say:
|
||||
|
||||
@@ -896,7 +896,7 @@ Jump to: [top](#)
|
||||
|
||||
|
||||
<div id="rule17">
|
||||
### Q 1.7: What are details behind Rule 17?
|
||||
### Q 1.7: What are details behind Rule 17 - Packaging?
|
||||
</div>
|
||||
|
||||
|
||||
@@ -919,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 Packaging](next/rules.html#rule-17-packaging). 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).
|
||||
|
||||
@@ -981,7 +981,7 @@ 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 17 Packaging](next/rules.html#rule-17-packaging)
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging)
|
||||
and our
|
||||
FAQ on "[remarks.md](#remarks_md)",
|
||||
our
|
||||
@@ -1089,7 +1089,7 @@ permissions and `mkiocccentry(1)` does this for you. In particular: directories
|
||||
`-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 Packaging](next/rules.html#rule17)!
|
||||
[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
|
||||
@@ -1097,10 +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 Files](next/rules.html#rule-4-files),
|
||||
[Rule 5 Purity](next/rules.html#rule-5-purity),
|
||||
[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).
|
||||
[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
|
||||
@@ -1115,9 +1115,9 @@ 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 4 Files](next/rules.html#rule-4-files)
|
||||
[Rule 4 - Files](next/rules.html#rule-4---files)
|
||||
or
|
||||
[Rule 17 Packaging](next/rules.html#rule17).
|
||||
[Rule 17 - Packaging](next/rules.html#rule17).
|
||||
|
||||
|
||||
The `fnamchk(1)`, which `txzchk(1)` executes, will verify that the
|
||||
@@ -1127,9 +1127,9 @@ 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 4 Files](next/rules.html#rule-4-files)
|
||||
[Rule 4 - Files](next/rules.html#rule-4---files)
|
||||
or
|
||||
[Rule 17 Packaging](next/rules.html#rule17).
|
||||
[Rule 17 - Packaging](next/rules.html#rule17).
|
||||
|
||||
<div id="max-files">
|
||||
#### Maximum number of files per submission
|
||||
@@ -1170,9 +1170,9 @@ 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 4 Files](next/rules.html#rule-4-files),
|
||||
[Rule 4 - Files](next/rules.html#rule-4---files),
|
||||
and
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
[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
|
||||
@@ -1213,9 +1213,9 @@ 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 4 Files](next/rules.html#rule-4-files),
|
||||
[Rule 4 - Files](next/rules.html#rule-4---files),
|
||||
or
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)
|
||||
[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
|
||||
@@ -1575,7 +1575,7 @@ Jump to: [top](#)
|
||||
|
||||
<div id="rule_2_broken">
|
||||
<div id="rule_breaking_entry">
|
||||
### Q 2.4: How did an entry that breaks the size rule 2 win the IOCCC?
|
||||
### Q 2.4: How did an entry win the IOCCC that breaks Rule 2 - Size?
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1874,9 +1874,9 @@ two JSON files, `.auth.json` and `.info.json` as well as the `prog.c`,
|
||||
`.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 4 Files](next/rules.html#rule-4-files),
|
||||
[Rule 4 - Files](next/rules.html#rule-4---files),
|
||||
or
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!).
|
||||
[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
|
||||
@@ -1903,9 +1903,9 @@ FAQ on "[.auth.json](#auth_json)"
|
||||
and the
|
||||
FAQ on "[.info.json](#info_json)"
|
||||
as well as
|
||||
[Rule 4 Files](next/rules.html#rule-4-files),
|
||||
[Rule 4 - Files](next/rules.html#rule-4---files),
|
||||
and
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)
|
||||
[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
|
||||
@@ -1999,12 +1999,12 @@ In order of the file's contents we describe each required field, below:
|
||||
* 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 Packaging](next/rules.html#rule-17-packaging).
|
||||
[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 Packaging](next/rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging).
|
||||
|
||||
- `tarball` (double quoted string)
|
||||
* The xz compressed tarball filename.
|
||||
@@ -2012,10 +2012,10 @@ In order of the file's contents we describe each required field, below:
|
||||
**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 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[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 Packaging](next/rules.html#rule-17-packaging). The
|
||||
[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
|
||||
@@ -2030,7 +2030,7 @@ In order of the file's contents we describe each required field, below:
|
||||
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 Packaging](next/rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging).
|
||||
|
||||
- `author_count` (number)
|
||||
* How many authors this submission has.
|
||||
@@ -2095,7 +2095,7 @@ author(s) of the submission:
|
||||
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 Packaging](next/rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging).
|
||||
|
||||
**NOTE:** an **affiliation** does **NOT** have any affect on whether you will win or not.
|
||||
|
||||
@@ -2180,9 +2180,9 @@ 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 4 Files](next/rules.html#rule-4-files),
|
||||
[Rule 4 - Files](next/rules.html#rule-4---files),
|
||||
and
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
[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
|
||||
@@ -2192,9 +2192,9 @@ 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 4 Files](next/rules.html#rule-4-files),
|
||||
[Rule 4 - Files](next/rules.html#rule-4---files),
|
||||
and
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)
|
||||
[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).
|
||||
@@ -2318,7 +2318,7 @@ In order of the file's contents we describe each required field, below:
|
||||
* 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 Packaging](next/rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging).
|
||||
|
||||
- `submit_slot` (number)
|
||||
* The submission number.
|
||||
@@ -2329,7 +2329,7 @@ In order of the file's contents we describe each required field, below:
|
||||
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 Packaging](next/rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging).
|
||||
|
||||
- `title` (double quoted string)
|
||||
* A short name (length >= 1 **THROUGH** `MAX_TITLE_LEN`, defined in
|
||||
@@ -2339,7 +2339,7 @@ In order of the file's contents we describe each required field, below:
|
||||
|
||||
**IMPORTANT:** if this is **NOT** the case you stand a great risk of having your submission
|
||||
rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[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**
|
||||
@@ -2351,7 +2351,7 @@ In order of the file's contents we describe each required field, below:
|
||||
|
||||
**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 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging)!
|
||||
|
||||
- `tarball` (double quoted string)
|
||||
* The xz compressed tarball filename.
|
||||
@@ -2359,10 +2359,10 @@ In order of the file's contents we describe each required field, below:
|
||||
**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 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[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 Packaging](next/rules.html#rule-17-packaging).
|
||||
[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
|
||||
@@ -2397,7 +2397,7 @@ In order of the file's contents we describe each required field, below:
|
||||
calculated size is **NOT**
|
||||
violated but this is `true` then you stand a good chance of having your
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging).
|
||||
|
||||
- `rule_2a_mismatch` (boolean)
|
||||
* `true` if
|
||||
@@ -2415,12 +2415,12 @@ In order of the file's contents we describe each required field, below:
|
||||
calculated size is **NOT**
|
||||
violated but this is `true` then you stand a good chance of having your
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
[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 12 UTF-8](next/rules.html#rule-12-utf-8),
|
||||
[Rule 12 - UTF-8](next/rules.html#rule-12---utf-8),
|
||||
else `false`.
|
||||
|
||||
- `nul_warning` (boolean)
|
||||
@@ -2443,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 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging)!
|
||||
|
||||
See the
|
||||
FAQ on "[Makefile](#makefile)"
|
||||
@@ -2454,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 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging)!
|
||||
|
||||
See the
|
||||
FAQ on "[Makefile](#makefile)"
|
||||
@@ -2466,7 +2466,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 and this
|
||||
boolean is `true` then you stand a good chance of having your
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging)!
|
||||
|
||||
See the
|
||||
FAQ on "[Makefile](#makefile)"
|
||||
@@ -2478,7 +2478,7 @@ 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 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging)!
|
||||
|
||||
See the
|
||||
FAQ on "[Makefile](#makefile)"
|
||||
@@ -2490,7 +2490,7 @@ 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 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging)!
|
||||
|
||||
See the
|
||||
FAQ on "[Makefile](#makefile)"
|
||||
@@ -2502,7 +2502,7 @@ 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 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging)!
|
||||
|
||||
See the
|
||||
FAQ on "[Makefile](#makefile)"
|
||||
@@ -2528,7 +2528,7 @@ The `mkiocccentry(1)` tool will write it in this order:
|
||||
|
||||
**IMPORTANT:** if this is **NOT** the case you stand a
|
||||
great chance of having your submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[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
|
||||
@@ -2541,7 +2541,7 @@ The `mkiocccentry(1)` tool will write it in this order:
|
||||
|
||||
**IMPORTANT:** if this is **NOT** the case you stand a great chance of having your
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[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
|
||||
@@ -2551,7 +2551,7 @@ The `mkiocccentry(1)` tool will write it in this order:
|
||||
|
||||
**IMPORTANT:** if this is **NOT** the case you stand a great chance of having your
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging)!
|
||||
|
||||
- `Makefile` (double quoted string)
|
||||
* This `MUST` be `"Makefile"`, defined as `MAKEFILE_FILENAME` in
|
||||
@@ -2564,7 +2564,7 @@ The `mkiocccentry(1)` tool will write it in this order:
|
||||
|
||||
**IMPORTANT:** if this is **NOT** the case you stand a great chance of having your
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging)!
|
||||
|
||||
- `remarks` (double quoted string)
|
||||
* This `MUST` be `"remarks.md"`, defined as `REMARKS_FILENAME` in
|
||||
@@ -2577,7 +2577,7 @@ The `mkiocccentry(1)` tool will write it in this order:
|
||||
|
||||
**IMPORTANT:** if this is **NOT** the case you stand a great chance of having your
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging)!
|
||||
|
||||
The `manifest` **array** also **OPTIONALLY** has one or more of the field:
|
||||
|
||||
@@ -2590,7 +2590,7 @@ The `manifest` **array** also **OPTIONALLY** has one or more of the field:
|
||||
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 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[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.
|
||||
@@ -2654,7 +2654,7 @@ 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 Packaging](next/rules.html#rule-17-packaging),
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging),
|
||||
and in particular
|
||||
because `chksubmit` would not validate the `.info.json` file.
|
||||
|
||||
|
||||
@@ -747,11 +747,11 @@ as well as a critical fix for installing on BSD based systems.</p>
|
||||
and compile the <a href="faq.html#mkiocccentry">mkiocccentry tool set</a>. You may also wish to install this code.
|
||||
See also the <a href="https://github.com/ioccc-src/mkiocccentry/blob/master/FAQ.md">mkiocccentry FAQ</a> for more information.</p>
|
||||
<h2 id="section-17">2024-12-30</h2>
|
||||
<p>The IOCCC <a href="next/rules.html#rule-12-utf-8">Rule 12 UTF-8</a> no longer discourages the
|
||||
<p>The IOCCC <a href="next/rules.html#rule-12---utf-8">Rule 12 - UTF-8</a> no longer discourages the
|
||||
use of UTF-8 in C source. Since the days of <code>-std=gnu17</code> compilers,
|
||||
UTF-8 characters do not impose a compiler problem. The related guideline
|
||||
states that “Rule 13 no longer discourages the use of UTF-8 +characters in C code”.</p>
|
||||
<p>The IOCCC <a href="next/rules.html#rule-8-submission">Rule 8 Submission</a> wording has been fixed. It no longer
|
||||
<p>The IOCCC <a href="next/rules.html#rule-8---submission">Rule 8 - Submission</a> wording has been fixed. It no longer
|
||||
states that email will be sent. Instead it talks about potential slot comment
|
||||
modifications as means to tell the submitter that their submission was received.</p>
|
||||
<p>All of the import IOCCC dates within the <a href="next/rules.html">IOCCC rules</a>
|
||||
|
||||
@@ -406,12 +406,12 @@ See also the [mkiocccentry FAQ](https://github.com/ioccc-src/mkiocccentry/blob/m
|
||||
|
||||
## 2024-12-30
|
||||
|
||||
The IOCCC [Rule 12 UTF-8](next/rules.html#rule-12-utf-8) no longer discourages the
|
||||
The IOCCC [Rule 12 - UTF-8](next/rules.html#rule-12---utf-8) no longer discourages the
|
||||
use of UTF-8 in C source. Since the days of `-std=gnu17` compilers,
|
||||
UTF-8 characters do not impose a compiler problem. The related guideline
|
||||
states that "Rule 13 no longer discourages the use of UTF-8 +characters in C code".
|
||||
|
||||
The IOCCC [Rule 8 Submission](next/rules.html#rule-8-submission) wording has been fixed. It no longer
|
||||
The IOCCC [Rule 8 - Submission](next/rules.html#rule-8---submission) wording has been fixed. It no longer
|
||||
states that email will be sent. Instead it talks about potential slot comment
|
||||
modifications as means to tell the submitter that their submission was received.
|
||||
|
||||
|
||||
+29
-29
@@ -570,12 +570,12 @@ may change from contest to contest.</p>
|
||||
</ul>
|
||||
<p>Uploading a tarball not formed by <code>mkiocccentry(1)</code> puts you at a very big risk of
|
||||
violating
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>,
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>,
|
||||
especially as <code>mkiocccentry(1)</code> does a
|
||||
great number of things that are required, and it also runs many checks, and if
|
||||
any of those checks fail, you are at a very great risk of having your submission
|
||||
rejected for violating
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>.</p>
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</p>
|
||||
<p>We <strong>STRONGLY</strong> recommend you <strong>do</strong> install the
|
||||
<a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry toolkit</a>.</p>
|
||||
<p><strong>IMPORTANT NOTE</strong>: the tools that require other tools, <code>mkiocccentry(1)</code> and
|
||||
@@ -626,7 +626,7 @@ index.html</a>:
|
||||
<p class="leftbar">
|
||||
<blockquote>
|
||||
<p><strong>IMPORTANT HINT</strong>: Only 3 of the 23 <strong>IOCCC28 winners</strong> came close to the
|
||||
<a href="rules.html#rule-2-size">Rule 2 Size</a> limit.
|
||||
<a href="rules.html#rule-2---size">Rule 2 - Size</a> limit.
|
||||
Large code size isn’t
|
||||
everything. :-) Those submitting to future contents should <strong>take a careful
|
||||
note</strong> of that fact.</p>
|
||||
@@ -638,7 +638,7 @@ note</strong> of that fact.</p>
|
||||
the IOCCC size
|
||||
<a href="rules.html#rule-2b-net-size">Rule 2b Next Size</a>.</p>
|
||||
<p>To check your code against
|
||||
<a href="rules.html#rule-2-size">Rule 2 Size</a>, use the <code>iocccentry(1)</code> tool.
|
||||
<a href="rules.html#rule-2---size">Rule 2 - Size</a>, use the <code>iocccentry(1)</code> tool.
|
||||
For example:</p>
|
||||
<pre><code> iocccsize prog.c</code></pre>
|
||||
<p>The IOCCC size tool algorithm can be summarized as follows:</p>
|
||||
@@ -666,7 +666,7 @@ BESM-6, and 2503 is a decimal anagram of 2053.</p>
|
||||
<p>Take note that this secondary limit imposed by the IOCCC size tool
|
||||
obviates some of the need to <code>#define</code> C reserved words in an effort
|
||||
to get around the size limits of
|
||||
<a href="rules.html#rule-2-size">Rule 2 Size</a>.</p>
|
||||
<a href="rules.html#rule-2---size">Rule 2 - Size</a>.</p>
|
||||
<p>Yes Virginia, <strong>that is a hint</strong>!</p>
|
||||
<p>The <strong>official locale</strong> of the <strong>IOCCC</strong> is <strong>C</strong>.</p>
|
||||
<p class="leftbar">
|
||||
@@ -774,7 +774,7 @@ misleading comments and variable names might be a <strong>VERY GOOD START</stron
|
||||
to a great submission!</p>
|
||||
<p>Jump to: <a href="#">top</a></p>
|
||||
<h1 id="mkiocccentry"><code>mkiocccentry</code></h1>
|
||||
<p><a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>
|
||||
<p><a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>
|
||||
(the <code>mkiocccentry(1)</code> rule) states that
|
||||
you <strong>REALLY SHOULD</strong> use the <code>mkiocccentry(1)</code> tool to package your submission tarball.</p>
|
||||
<p>See the <a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry repo</a>
|
||||
@@ -825,7 +825,7 @@ then you will have to specify the options (such as paths) for the tools that are
|
||||
<p>Make sure you have
|
||||
the latest version of of the <a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry toolkit</a>
|
||||
so that you do not violate
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>
|
||||
by mistake.</p>
|
||||
<p>Jump to: <a href="#">top</a></p>
|
||||
<div id="mkiocccentry-synopsis">
|
||||
@@ -853,7 +853,7 @@ for even more information.</p>
|
||||
execute one or more additional tools.</p>
|
||||
<h2 id="iocccsize"><code>iocccsize</code></h2>
|
||||
<p><code>mkiocccentry(1)</code> will use code from <code>iocccsize(1)</code> which detects a number of
|
||||
issues (such as <a href="rules.html#rule-2-size">Rule 2 Size</a>) that you may ignore, if you wish, as
|
||||
issues (such as <a href="rules.html#rule-2---size">Rule 2 - Size</a>) that you may ignore, if you wish, as
|
||||
noted above.</p>
|
||||
<p>In other words, you no longer need to run <code>iocccsize</code> manually. However, the
|
||||
checks described above are still made but through the <code>mkiocccentry(1)</code> tool itself.</p>
|
||||
@@ -934,7 +934,7 @@ do install</em> the libraries from their respective repos, it/they will <strong>
|
||||
used</strong> when compiling the <code>mkiocccentry</code> tools. This is important to
|
||||
make sure that you’re using the correct versions, which is also verified by
|
||||
<code>chksubmit</code> (in the JSON files created by <code>mkiocccentry(1)</code>). See
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p>
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p>
|
||||
<p class="leftbar">
|
||||
We <strong>HIGHLY</strong> recommend you install the <code>mkiocccentry</code> toolkit, however.
|
||||
</p>
|
||||
@@ -968,7 +968,7 @@ page. You might just find a fun option if you do either of these!</p>
|
||||
<p>Of course, as <code>txzchk</code> does not extract the tarball, it is possible that if you
|
||||
manually package your submission tarball and/or find and exploit a missing
|
||||
check, you could still be violating
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>.</p>
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</p>
|
||||
<div id="extra-files">
|
||||
<h2 id="including-optional-and-extra-files">Including optional and extra files</h2>
|
||||
</div>
|
||||
@@ -984,7 +984,7 @@ file</em>. The non-extra files are considered <em>free files</em>.
|
||||
<p class="leftbar">
|
||||
Of course any dot file that is not <code>.auth.json</code> and <code>.info.json</code> will result in
|
||||
a violation of
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>,
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>,
|
||||
regardless of its depth.
|
||||
</p>
|
||||
<p>If you use an optional filename for something other than their intended use
|
||||
@@ -1016,12 +1016,12 @@ The <code>mkiocccentry(1)</code> tool creates a v7 format tarball to prevent thi
|
||||
do the same like:</p>
|
||||
<pre><code> tar --format=v7 -cJf foo.txz directory</code></pre>
|
||||
<p>See
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>
|
||||
and also the
|
||||
FAQ on “<a href="../faq.html#max-files">maximum number of files</a>”.</p>
|
||||
<p>If you do not follow these points, you
|
||||
are at a great risk of violating
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p>
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p>
|
||||
<p><strong>NOTE</strong>: if you want to include a test-suite that requires a lot of files,
|
||||
please suggest this in your <code>remarks.md</code> and if your submission wins it can
|
||||
be done. In other words you should NOT use a tarball for a test-suite unless you
|
||||
@@ -1036,7 +1036,7 @@ FAQ on “<a href="../faq.html#txzchk">txzchk</a>”.</p>
|
||||
<p>As an important part of its algorithm, <a href="#txzchk">txzchk(1)</a> directly executes
|
||||
<code>fnamchk(1)</code>. If the filename is invalid (or the filename does not match the
|
||||
directory name of the tarball) then it is an <strong>error</strong> and you risk violating
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>.
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>.
|
||||
Nevertheless, you can run the tool manually,
|
||||
should you wish to.</p>
|
||||
<p>For more information on <code>fnamchk</code> and how to manually validate your submission
|
||||
@@ -1044,7 +1044,7 @@ tarball filename, see the
|
||||
FAQ on “<a href="../faq.html#fnamchk">fnamchk</a>”.</p>
|
||||
<p>It is extremely unlikely that <code>fnamchk(1)</code> reporting an invalid filename is a
|
||||
bug in <code>fnamchk(1)</code> and as such, ignoring such an issue risks violating
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>
|
||||
which is a big risk. Of course, using <code>mkiocccentry(1)</code>
|
||||
would prevent this from happening as it would not create such a file anyway. If
|
||||
<code>mkiocccentry(1)</code> was used it would rather suggest a bug in one of the tools and
|
||||
@@ -1058,7 +1058,7 @@ your submission rejected if you package your own tarball, and there are <strong>
|
||||
problems</strong>. For instance, if <code>chksubmit(1)</code> found a problem in your <code>.info.json</code>
|
||||
file, the <code>mkiocccentry(1)</code> tool would not package it. But if you were to package
|
||||
it manually, you would be violating
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>.
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>.
|
||||
But even if
|
||||
everything checks out OK you should <strong>NOT</strong> assume that everything <strong>IS</strong> OK.</p>
|
||||
<div id="bugs">
|
||||
@@ -1275,7 +1275,7 @@ somehow, <code>txzchk(1)</code> will flag it as an error. When the judges run <c
|
||||
on the uploaded submission compressed tarball, if anything is wrong, for
|
||||
instance if you “sneak in” any dot files or dot directories, the submission
|
||||
<strong>WILL BE REJECTED</strong> for violating
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p>
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p>
|
||||
<p>You may use whatever tools you need to develop your submission, including the
|
||||
use of <code>git(1)</code> or <code>gh(1)</code>, just be sure that your submission code and your
|
||||
submission Makefile don’t depend on such tools.</p>
|
||||
@@ -1523,7 +1523,7 @@ large data files to get around the source code size limit.</p>
|
||||
<p class="leftbar">
|
||||
We do not recommend submitting <a href="https://systemd.io">systemd</a> source code to the IOCCC,
|
||||
if nothing else because that code is likely to exceed
|
||||
<a href="rules.html#rule-2-size">Rule 2 Size</a>.
|
||||
<a href="rules.html#rule-2---size">Rule 2 - Size</a>.
|
||||
This isn’t to say that another highly compact and obfuscated
|
||||
replacement of <code>init(8)</code> would not be an interesting submission.
|
||||
</p>
|
||||
@@ -1541,7 +1541,7 @@ and/or obfuscated way, would definitely win over the first two!
|
||||
Remember, you can submit more than one submission. See the
|
||||
<a href="rules.html">IOCCC rules</a>
|
||||
for details (in particular,
|
||||
<a href="rules.html#rule-8-submission">Rule 8 Submission</a>).</p>
|
||||
<a href="rules.html#rule-8---submission">Rule 8 - Submission</a>).</p>
|
||||
<p>We suggest that you avoid trying for the ‘<strong>smallest self-replicating</strong>’
|
||||
source. The smallest, a <a href="../1994/smr/index.html">zero byte entry</a>, won in
|
||||
<a href="../years.html#1994">1994</a>.</p>
|
||||
@@ -1649,7 +1649,7 @@ or Linux curses.</p>
|
||||
If you do <code>#include <curses.h></code> make <strong>CERTAIN</strong> you link in curses (i.e.
|
||||
<code>-lcurses</code>) and not ncurses (i.e. <code>-lncurses</code>).
|
||||
</p>
|
||||
<p><a href="rules.html#rule-13-newlines">Rule 13 Newlines</a>
|
||||
<p><a href="rules.html#rule-13---newlines">Rule 13 - Newlines</a>
|
||||
no longer discourages the use of UTF-8
|
||||
characters in C code.</p>
|
||||
<p>It is a very good idea to, in your <code>remarks.md</code> file, tell us why you
|
||||
@@ -1681,14 +1681,14 @@ Submitting source code that uses the contents of
|
||||
<a href="https://github.com/ioccc-src/mkiocccentry/blob/master/iocccsize.c">iocccsize.c</a>,
|
||||
<em>unless</em> you are <a href="../authors.html#Anthony_C_Howe">Anthony C Howe</a>, might run the
|
||||
risk of violating
|
||||
<a href="rules.html#rule-7-original-work">Rule 7 Original Work</a>.</p>
|
||||
<a href="rules.html#rule-7---original-work">Rule 7 - Original Work</a>.</p>
|
||||
<p>The IOCCC submission tarball validator source is not an original work,
|
||||
unless you are <a href="../authors.html#Cody_Boone_Ferguson">Cody Boone Ferguson</a>, in
|
||||
which case it is original! :-) Submitting source code that uses the contents of
|
||||
<a href="https://github.com/ioccc-src/mkiocccentry/blob/master/txzchk.c">txzchk.c</a>,
|
||||
<em>unless</em> you are <a href="../authors.html#Cody_Boone_Ferguson">Cody Boone Ferguson</a>, might
|
||||
run the risk of violating
|
||||
<a href="rules.html#rule-7-original-work">Rule 7 Original Work</a>.</p>
|
||||
<a href="rules.html#rule-7---original-work">Rule 7 - Original Work</a>.</p>
|
||||
<p>In addition to the above tools, none of the <a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry
|
||||
tools</a>, <em>including, <strong>but not
|
||||
limited</strong></em> to
|
||||
@@ -1711,7 +1711,7 @@ are original! :-) Submitting source code that uses the content of any of these t
|
||||
library, <em>unless</em> you are <a href="../authors.html#Cody_Boone_Ferguson">Cody Boone
|
||||
Ferguson</a> or <a href="http://www.isthe.com/chongo/index.html">Landon Curt
|
||||
Noll</a>, might run the risk of violating
|
||||
<a href="rules.html#rule-7-original-work">Rule 7 Original Work</a>.</p>
|
||||
<a href="rules.html#rule-7---original-work">Rule 7 - Original Work</a>.</p>
|
||||
<p>And unless you are <a href="https://en.wikipedia.org/wiki/Landon_Curt_Noll">Landon Curt Noll</a>,
|
||||
the code in
|
||||
<a href="https://github.com/ioccc-src/mkiocccentry/tree/master/dbg">dbg</a> and
|
||||
@@ -1719,8 +1719,8 @@ the code in
|
||||
not original works. Submitting source code that uses the contents of those
|
||||
libraries, <em>unless</em> you <a href="https://en.wikipedia.org/wiki/Landon_Curt_Noll">Landon Curt Noll</a>,
|
||||
might run the risk of violating
|
||||
<a href="rules.html#rule-7-original-work">Rule 7 Original Work</a>.</p>
|
||||
<p><a href="rules.html#rule-7-original-work">Rule 7 Original Work</a>
|
||||
<a href="rules.html#rule-7---original-work">Rule 7 - Original Work</a>.</p>
|
||||
<p><a href="rules.html#rule-7---original-work">Rule 7 - Original Work</a>
|
||||
does not prohibit you from writing your own
|
||||
obfuscated versions of these tools, unless of course you are <a href="http://www.isthe.com/chongo/index.html">Landon Curt
|
||||
Noll</a>, in which case you <em>probably</em>
|
||||
@@ -1730,7 +1730,7 @@ However, <strong><em>if</em></strong> you do write your own version, you <strong
|
||||
tools’ algorithms.</p>
|
||||
<p>Even so, we do not recommend you try and submit a JSON parser due to
|
||||
the fact it will likely exceed
|
||||
<a href="rules.html#rule-2-size">Rule 2 Size</a>
|
||||
<a href="rules.html#rule-2---size">Rule 2 - Size</a>
|
||||
and because you likely can’t beat <a href="https://github.com/westes/flex">flex</a> and
|
||||
<a href="https://www.gnu.org/software/bison/">bison</a> in obfuscation. This isn’t to
|
||||
say that <a href="https://github.com/xexyl/jparse/blob/master/json_README.md#so-called-json-spec">the so-called JSON spec</a> is not
|
||||
@@ -1738,7 +1738,7 @@ obfuscated, but unless you have some really clever way to compact and
|
||||
obfuscate a JSON parser more than <a href="https://github.com/westes/flex">flex</a> and
|
||||
<a href="https://www.gnu.org/software/bison/">bison</a> you will likely not win, either
|
||||
because of the
|
||||
<a href="rules.html#rule-2-size">Rule 2 Size</a>
|
||||
<a href="rules.html#rule-2---size">Rule 2 - Size</a>
|
||||
or because it is not
|
||||
as obfuscated as the <a href="https://github.com/westes/flex">flex</a> and <a href="https://www.gnu.org/software/bison/">bison</a>
|
||||
generated code of
|
||||
@@ -1820,7 +1820,7 @@ character tab stop.</p>
|
||||
when forming your submission’s <code>remarks.md</code> file. And if your submission
|
||||
contains additional markdown files, please follow those same guidelines for
|
||||
those files. See also
|
||||
<a href="rules.html#rule-4-files">Rule 4 Files</a>,
|
||||
<a href="rules.html#rule-4---files">Rule 4 - Files</a>,
|
||||
and the
|
||||
FAQ on “<a href="../faq.html#markdown">markdown</a>”.</p>
|
||||
<p>We <strong>LIKE</strong> reading <code>remarks.md</code> files, especially if they contain
|
||||
@@ -2041,7 +2041,7 @@ submission that abuses the <a href="guidelines.html">IOCCC guidelines</a> in an
|
||||
or that stretches the contest <a href="rules.html">rules</a> that while legal, it
|
||||
nevertheless goes against the <strong>intent</strong> of the <a href="rules.html">rules</a>.</p>
|
||||
<p>Nevertheless, see
|
||||
<a href="rules.html#rule-10-privileges">Rule 10 Privileges</a>.</p>
|
||||
<a href="rules.html#rule-10---privileges">Rule 10 - Privileges</a>.</p>
|
||||
<p>In the end, we traditionally pick one submission as ‘<strong>best</strong>’. Sometimes such
|
||||
a submission simply far exceeds any of the other submissions. More often, the
|
||||
‘<strong>best</strong>’ is picked because it does well in a number of categories.</p>
|
||||
|
||||
+29
-29
@@ -159,12 +159,12 @@ See FAQs regarding:
|
||||
|
||||
Uploading a tarball not formed by `mkiocccentry(1)` puts you at a very big risk of
|
||||
violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging),
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging),
|
||||
especially as `mkiocccentry(1)` does a
|
||||
great number of things that are required, and it also runs many checks, and if
|
||||
any of those checks fail, you are at a very great risk of having your submission
|
||||
rejected for violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging).
|
||||
|
||||
We **STRONGLY** recommend you **do** install the
|
||||
[mkiocccentry toolkit](https://github.com/ioccc-src/mkiocccentry).
|
||||
@@ -225,7 +225,7 @@ index.html](../2024/index.html):
|
||||
|
||||
<p class="leftbar">
|
||||
> **IMPORTANT HINT**: Only 3 of the 23 **IOCCC28 winners** came close to the
|
||||
[Rule 2 Size](rules.html#rule-2-size) limit.
|
||||
[Rule 2 - Size](rules.html#rule-2---size) limit.
|
||||
Large code size isn't
|
||||
everything. :-) Those submitting to future contents should **take a careful
|
||||
note** of that fact.
|
||||
@@ -239,7 +239,7 @@ the IOCCC size
|
||||
[Rule 2b Next Size](rules.html#rule-2b-net-size).
|
||||
|
||||
To check your code against
|
||||
[Rule 2 Size](rules.html#rule-2-size), use the `iocccentry(1)` tool.
|
||||
[Rule 2 - Size](rules.html#rule-2---size), use the `iocccentry(1)` tool.
|
||||
For example:
|
||||
|
||||
``` <!---sh-->
|
||||
@@ -276,7 +276,7 @@ BESM-6, and 2503 is a decimal anagram of 2053.
|
||||
Take note that this secondary limit imposed by the IOCCC size tool
|
||||
obviates some of the need to `#define` C reserved words in an effort
|
||||
to get around the size limits of
|
||||
[Rule 2 Size](rules.html#rule-2-size).
|
||||
[Rule 2 - Size](rules.html#rule-2---size).
|
||||
|
||||
Yes Virginia, **that is a hint**!
|
||||
|
||||
@@ -417,7 +417,7 @@ Jump to: [top](#)
|
||||
# `mkiocccentry`
|
||||
</div>
|
||||
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)
|
||||
(the `mkiocccentry(1)` rule) states that
|
||||
you **REALLY SHOULD** use the `mkiocccentry(1)` tool to package your submission tarball.
|
||||
|
||||
@@ -482,7 +482,7 @@ then you will have to specify the options (such as paths) for the tools that are
|
||||
Make sure you have
|
||||
the latest version of of the [mkiocccentry toolkit](https://github.com/ioccc-src/mkiocccentry)
|
||||
so that you do not violate
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)
|
||||
by mistake.
|
||||
|
||||
|
||||
@@ -527,7 +527,7 @@ execute one or more additional tools.
|
||||
</div>
|
||||
|
||||
`mkiocccentry(1)` will use code from `iocccsize(1)` which detects a number of
|
||||
issues (such as [Rule 2 Size](rules.html#rule-2-size)) that you may ignore, if you wish, as
|
||||
issues (such as [Rule 2 - Size](rules.html#rule-2---size)) that you may ignore, if you wish, as
|
||||
noted above.
|
||||
|
||||
In other words, you no longer need to run `iocccsize` manually. However, the
|
||||
@@ -631,7 +631,7 @@ do install_ the libraries from their respective repos, it/they will **not be
|
||||
used** when compiling the `mkiocccentry` tools. This is important to
|
||||
make sure that you're using the correct versions, which is also verified by
|
||||
`chksubmit` (in the JSON files created by `mkiocccentry(1)`). See
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)!
|
||||
|
||||
<p class="leftbar">
|
||||
We **HIGHLY** recommend you install the `mkiocccentry` toolkit, however.
|
||||
@@ -678,7 +678,7 @@ page. You might just find a fun option if you do either of these!
|
||||
Of course, as `txzchk` does not extract the tarball, it is possible that if you
|
||||
manually package your submission tarball and/or find and exploit a missing
|
||||
check, you could still be violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging).
|
||||
|
||||
<div id="extra-files">
|
||||
## Including optional and extra files
|
||||
@@ -698,7 +698,7 @@ file_. The non-extra files are considered _free files_.
|
||||
<p class="leftbar">
|
||||
Of course any dot file that is not `.auth.json` and `.info.json` will result in
|
||||
a violation of
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging),
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging),
|
||||
regardless of its depth.
|
||||
</p>
|
||||
|
||||
@@ -741,13 +741,13 @@ do the same like:
|
||||
```
|
||||
|
||||
See
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)
|
||||
and also the
|
||||
FAQ on "[maximum number of files](../faq.html#max-files)".
|
||||
|
||||
If you do not follow these points, you
|
||||
are at a great risk of violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)!
|
||||
|
||||
**NOTE**: if you want to include a test-suite that requires a lot of files,
|
||||
please suggest this in your `remarks.md` and if your submission wins it can
|
||||
@@ -768,7 +768,7 @@ Jump to: [top](#)
|
||||
As an important part of its algorithm, [txzchk(1)](#txzchk) directly executes
|
||||
`fnamchk(1)`. If the filename is invalid (or the filename does not match the
|
||||
directory name of the tarball) then it is an **error** and you risk violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging).
|
||||
Nevertheless, you can run the tool manually,
|
||||
should you wish to.
|
||||
|
||||
@@ -778,7 +778,7 @@ FAQ on "[fnamchk](../faq.html#fnamchk)".
|
||||
|
||||
It is extremely unlikely that `fnamchk(1)` reporting an invalid filename is a
|
||||
bug in `fnamchk(1)` and as such, ignoring such an issue risks violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)
|
||||
which is a big risk. Of course, using `mkiocccentry(1)`
|
||||
would prevent this from happening as it would not create such a file anyway. If
|
||||
`mkiocccentry(1)` was used it would rather suggest a bug in one of the tools and
|
||||
@@ -793,7 +793,7 @@ your submission rejected if you package your own tarball, and there are **ANY
|
||||
problems**. For instance, if `chksubmit(1)` found a problem in your `.info.json`
|
||||
file, the `mkiocccentry(1)` tool would not package it. But if you were to package
|
||||
it manually, you would be violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging).
|
||||
But even if
|
||||
everything checks out OK you should **NOT** assume that everything **IS** OK.
|
||||
|
||||
@@ -1099,7 +1099,7 @@ somehow, `txzchk(1)` will flag it as an error. When the judges run `txzchk(1)`
|
||||
on the uploaded submission compressed tarball, if anything is wrong, for
|
||||
instance if you "sneak in" any dot files or dot directories, the submission
|
||||
**WILL BE REJECTED** for violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)!
|
||||
|
||||
You may use whatever tools you need to develop your submission, including the
|
||||
use of `git(1)` or `gh(1)`, just be sure that your submission code and your
|
||||
@@ -1436,7 +1436,7 @@ large data files to get around the source code size limit.
|
||||
<p class="leftbar">
|
||||
We do not recommend submitting [systemd](https://systemd.io) source code to the IOCCC,
|
||||
if nothing else because that code is likely to exceed
|
||||
[Rule 2 Size](rules.html#rule-2-size).
|
||||
[Rule 2 - Size](rules.html#rule-2---size).
|
||||
This isn't to say that another highly compact and obfuscated
|
||||
replacement of `init(8)` would not be an interesting submission.
|
||||
</p>
|
||||
@@ -1455,7 +1455,7 @@ and/or obfuscated way, would definitely win over the first two!
|
||||
Remember, you can submit more than one submission. See the
|
||||
[IOCCC rules](rules.html)
|
||||
for details (in particular,
|
||||
[Rule 8 Submission](rules.html#rule-8-submission)).
|
||||
[Rule 8 - Submission](rules.html#rule-8---submission)).
|
||||
|
||||
We suggest that you avoid trying for the '**smallest self-replicating**'
|
||||
source. The smallest, a [zero byte entry](../1994/smr/index.html), won in
|
||||
@@ -1600,7 +1600,7 @@ If you do `#include <curses.h>` make **CERTAIN** you link in curses (i.e.
|
||||
`-lcurses`) and not ncurses (i.e. `-lncurses`).
|
||||
</p>
|
||||
|
||||
[Rule 13 Newlines](rules.html#rule-13-newlines)
|
||||
[Rule 13 - Newlines](rules.html#rule-13---newlines)
|
||||
no longer discourages the use of UTF-8
|
||||
characters in C code.
|
||||
|
||||
@@ -1638,7 +1638,7 @@ Submitting source code that uses the contents of
|
||||
[iocccsize.c](https://github.com/ioccc-src/mkiocccentry/blob/master/iocccsize.c),
|
||||
_unless_ you are [Anthony C Howe](../authors.html#Anthony_C_Howe), might run the
|
||||
risk of violating
|
||||
[Rule 7 Original Work](rules.html#rule-7-original-work).
|
||||
[Rule 7 - Original Work](rules.html#rule-7---original-work).
|
||||
|
||||
The IOCCC submission tarball validator source is not an original work,
|
||||
unless you are [Cody Boone Ferguson](../authors.html#Cody_Boone_Ferguson), in
|
||||
@@ -1646,7 +1646,7 @@ which case it is original! :-) Submitting source code that uses the contents of
|
||||
[txzchk.c](https://github.com/ioccc-src/mkiocccentry/blob/master/txzchk.c),
|
||||
_unless_ you are [Cody Boone Ferguson](../authors.html#Cody_Boone_Ferguson), might
|
||||
run the risk of violating
|
||||
[Rule 7 Original Work](rules.html#rule-7-original-work).
|
||||
[Rule 7 - Original Work](rules.html#rule-7---original-work).
|
||||
|
||||
In addition to the above tools, none of the [mkiocccentry
|
||||
tools](https://github.com/ioccc-src/mkiocccentry), _including, **but not
|
||||
@@ -1670,7 +1670,7 @@ are original! :-) Submitting source code that uses the content of any of these
|
||||
library, _unless_ you are [Cody Boone
|
||||
Ferguson](../authors.html#Cody_Boone_Ferguson) or [Landon Curt
|
||||
Noll](http://www.isthe.com/chongo/index.html), might run the risk of violating
|
||||
[Rule 7 Original Work](rules.html#rule-7-original-work).
|
||||
[Rule 7 - Original Work](rules.html#rule-7---original-work).
|
||||
|
||||
And unless you are [Landon Curt Noll](https://en.wikipedia.org/wiki/Landon_Curt_Noll),
|
||||
the code in
|
||||
@@ -1679,9 +1679,9 @@ the code in
|
||||
not original works. Submitting source code that uses the contents of those
|
||||
libraries, _unless_ you [Landon Curt Noll](https://en.wikipedia.org/wiki/Landon_Curt_Noll),
|
||||
might run the risk of violating
|
||||
[Rule 7 Original Work](rules.html#rule-7-original-work).
|
||||
[Rule 7 - Original Work](rules.html#rule-7---original-work).
|
||||
|
||||
[Rule 7 Original Work](rules.html#rule-7-original-work)
|
||||
[Rule 7 - Original Work](rules.html#rule-7---original-work)
|
||||
does not prohibit you from writing your own
|
||||
obfuscated versions of these tools, unless of course you are [Landon Curt
|
||||
Noll](http://www.isthe.com/chongo/index.html), in which case you _probably_
|
||||
@@ -1692,7 +1692,7 @@ tools' algorithms.
|
||||
|
||||
Even so, we do not recommend you try and submit a JSON parser due to
|
||||
the fact it will likely exceed
|
||||
[Rule 2 Size](rules.html#rule-2-size)
|
||||
[Rule 2 - Size](rules.html#rule-2---size)
|
||||
and because you likely can't beat [flex](https://github.com/westes/flex) and
|
||||
[bison](https://www.gnu.org/software/bison/) in obfuscation. This isn't to
|
||||
say that [the so-called JSON spec](https://github.com/xexyl/jparse/blob/master/json_README.md#so-called-json-spec) is not
|
||||
@@ -1700,7 +1700,7 @@ obfuscated, but unless you have some really clever way to compact and
|
||||
obfuscate a JSON parser more than [flex](https://github.com/westes/flex) and
|
||||
[bison](https://www.gnu.org/software/bison/) you will likely not win, either
|
||||
because of the
|
||||
[Rule 2 Size](rules.html#rule-2-size)
|
||||
[Rule 2 - Size](rules.html#rule-2---size)
|
||||
or because it is not
|
||||
as obfuscated as the [flex](https://github.com/westes/flex) and [bison](https://www.gnu.org/software/bison/)
|
||||
generated code of
|
||||
@@ -1794,7 +1794,7 @@ character tab stop.
|
||||
when forming your submission's `remarks.md` file. And if your submission
|
||||
contains additional markdown files, please follow those same guidelines for
|
||||
those files. See also
|
||||
[Rule 4 Files](rules.html#rule-4-files),
|
||||
[Rule 4 - Files](rules.html#rule-4---files),
|
||||
and the
|
||||
FAQ on "[markdown](../faq.html#markdown)".
|
||||
|
||||
@@ -2071,7 +2071,7 @@ or that stretches the contest [rules](rules.html) that while legal, it
|
||||
nevertheless goes against the **intent** of the [rules](rules.html).
|
||||
|
||||
Nevertheless, see
|
||||
[Rule 10 Privileges](rules.html#rule-10-privileges).
|
||||
[Rule 10 - Privileges](rules.html#rule-10---privileges).
|
||||
|
||||
|
||||
In the end, we traditionally pick one submission as '**best**'. Sometimes such
|
||||
|
||||
+45
-44
@@ -473,17 +473,17 @@ mastodon feed</a> page and/or mastodon
|
||||
app from time to time to view IOCCC mastodon updates.</p>
|
||||
<!-- END: the next line ends content from: inc/rules.closed.hdr -->
|
||||
<!-- This is the last line modified by the tool: bin/gen-status.sh -->
|
||||
<h2 id="th-international-obfuscated-c-code-contest-official-rules">29th International Obfuscated C Code Contest Official Rules</h2>
|
||||
<h1 id="th-international-obfuscated-c-code-contest-official-rules">29th International Obfuscated C Code Contest Official Rules</h1>
|
||||
<p>Copyright © 2025 Leonid A. Broukhis and Landon Curt Noll.</p>
|
||||
<p>All Rights Reserved. Permission for personal, education or non-profit use is
|
||||
granted provided this this copyright and notice are included in its entirety
|
||||
and remains unaltered. All other uses <strong>MUST</strong> receive prior permission in
|
||||
writing by <a href="../contact.html">contacting the judges</a>.</p>
|
||||
<h2 id="rules-version">Rules version</h2>
|
||||
<p>These IOCCC Rules are version <strong>29.03 2025-11-19</strong>.</p>
|
||||
<p>These IOCCC Rules are version <strong>29.04 2025-11-20</strong>.</p>
|
||||
<p>Be sure to read the <a href="guidelines.html">IOCCC guidelines</a>.</p>
|
||||
<div id="rule0">
|
||||
<h2 id="rule-0-dates">Rule 0 Dates</h2>
|
||||
<h2 id="rule-0---dates">Rule 0 - Dates</h2>
|
||||
</div>
|
||||
<p>This IOCCC runs from ${START_DATE_TIME} UTC to ${CLOSE_DATE_TIME} UTC.</p>
|
||||
<p>This contest will enter the open state on ${OPEN_DATE_TIME} UTC.</p>
|
||||
@@ -491,11 +491,11 @@ writing by <a href="../contact.html">contacting the judges</a>.</p>
|
||||
<p>The above dates are subject to change until the contest is officially open.</p>
|
||||
<p><strong>NOTE</strong>: As of this draft, the above dates are TBD (to be determined).</p>
|
||||
<div id="rule1">
|
||||
<h2 id="rule-1-program">Rule 1 Program</h2>
|
||||
<h2 id="rule-1---program">Rule 1 - Program</h2>
|
||||
</div>
|
||||
<p>Your submission <strong>MUST</strong> be a C program.</p>
|
||||
<div id="rule2">
|
||||
<h2 id="rule-2-size">Rule 2 Size</h2>
|
||||
<h2 id="rule-2---size">Rule 2 - Size</h2>
|
||||
</div>
|
||||
<p><code>Rule 2</code> requires that your submission satisfy <strong>BOTH</strong>
|
||||
<a href="rules.html#rule-2a-gross-size">Rule 2a Gross Size</a>
|
||||
@@ -504,19 +504,19 @@ and
|
||||
During development this can be checked using <code>iocccsize(1)</code>:</p>
|
||||
<p>iocccsize prog.c</p>
|
||||
<div id="rule2a">
|
||||
<h3 id="rule-2a-gross-size">Rule 2a Gross Size</h3>
|
||||
<h3 id="rule-2a---gross-size">Rule 2a - Gross Size</h3>
|
||||
</div>
|
||||
<p>The overall maximum size of your <code>prog.c</code> program source <strong>MUST NOT</strong>
|
||||
exceed <strong>4993</strong> bytes.</p>
|
||||
<div id="rule2b">
|
||||
<h3 id="rule-2b-net-size">Rule 2b Net Size</h3>
|
||||
<h3 id="rule-2b---net-size">Rule 2b - Net Size</h3>
|
||||
</div>
|
||||
<p>When the filename of your program source (i.e., <code>prog.c</code>) is given as a
|
||||
command line argument to the latest version of the official IOCCC size
|
||||
tool (hereby referred to as <code>iocccsize(1)</code>), the value printed <strong>MUST
|
||||
NOT</strong> exceed <strong>2503</strong>.</p>
|
||||
<div id="rule3">
|
||||
<h2 id="rule-3-register">Rule 3 Register</h2>
|
||||
<h2 id="rule-3---register">Rule 3 - Register</h2>
|
||||
</div>
|
||||
<p>You <strong>MUST</strong> register, using a valid email address, in order to submit
|
||||
entries to the IOCCC. You may register while the contest is <strong>pending</strong> or <strong>open</strong>.</p>
|
||||
@@ -530,9 +530,9 @@ register and submit your entries; <strong>DO NOT WAIT UNTIL THE FINAL DAYS</stro
|
||||
to register! The judges are <strong>NOT</strong> responsible for delayed or lost
|
||||
email or for those who wait until the last minute to try to register!</p>
|
||||
<p>See <a href="../quick-start.html#enter">Entering the IOCCC: the bare minimum you need to know</a>.</p>
|
||||
<p>See <a href="rules.html#rule-8-submission">Rule 8 Submission</a>.</p>
|
||||
<p>See <a href="rules.html#rule-8---submission">Rule 8 - Submission</a>.</p>
|
||||
<div id="rule4">
|
||||
<h2 id="rule-4-files">Rule 4 Files</h2>
|
||||
<h2 id="rule-4---files">Rule 4 - Files</h2>
|
||||
</div>
|
||||
<p>The submission <strong>MUST</strong> include at least these files: <code>Makefile</code>, <code>prog.c</code>,
|
||||
<code>remarks.md</code>,<code>.info.json</code>, and <code>.auth.json</code>. The last two <strong>MUST</strong> be
|
||||
@@ -568,9 +568,9 @@ sensitive filesystem, ensure that your submission will work on
|
||||
a case insensitive filesystem.</p>
|
||||
<p>The <code>remarks.md</code> and <code>Makefile</code> are explained in more detail in the Guidelines.</p>
|
||||
<p>See <a href="../markdown.html">IOCCC markdown guidelines</a>.</p>
|
||||
<p>See <a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>.</p>
|
||||
<p>See <a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</p>
|
||||
<div id="rule5">
|
||||
<h2 id="rule-5-purity">Rule 5 Purity</h2>
|
||||
<h2 id="rule-5---purity">Rule 5 - Purity</h2>
|
||||
</div>
|
||||
<p>Your submission <strong>MUST NOT</strong> modify the filenames or content of any of
|
||||
your original submission, such as <code>prog.c</code>, <code>Makefile</code>, or any supplied
|
||||
@@ -587,15 +587,15 @@ original form, including the removal of any created files and directories.</p>
|
||||
<p>Your code should be able to run under a
|
||||
<a href="https://pubs.opengroup.org/onlinepubs/9799919799/">SUS environment</a>.</p>
|
||||
<div id="rule6">
|
||||
<h2 id="rule-6-free">Rule 6 Free</h2>
|
||||
<h2 id="rule-6---free">Rule 6 - Free</h2>
|
||||
</div>
|
||||
<p>I am <strong>NOT</strong> a Rule, I am a <code>free(void *human);</code> ‼️</p>
|
||||
<div class="sourceCode" id="cb1"><pre class="sourceCode c"><code class="sourceCode c"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="cf">while</span> <span class="op">(!(</span>ioccc<span class="op">(</span>rule<span class="op">(</span>you<span class="op">(</span>are<span class="op">(</span>number<span class="op">(</span><span class="dv">6</span><span class="op">))))))</span> <span class="op">{</span></span>
|
||||
<span id="cb1-2"><a href="#cb1-2" aria-hidden="true" tabindex="-1"></a> ha<span class="op">();</span> ha<span class="op">();</span> ha<span class="op">();</span></span>
|
||||
<span id="cb1-3"><a href="#cb1-3" aria-hidden="true" tabindex="-1"></a> <span class="op">}</span></span></code></pre></div>
|
||||
<p>See <a href="rules.html#rule-19-prime">Rule 19 Prime</a>.</p>
|
||||
<p>See <a href="rules.html#rule-19---prime">Rule 19 - Prime</a>.</p>
|
||||
<div id="rule7">
|
||||
<h2 id="rule-7-original-work">Rule 7 Original Work</h2>
|
||||
<h2 id="rule-7---original-work">Rule 7 - Original Work</h2>
|
||||
</div>
|
||||
<p>In short: You wrote it, you own it, and its an original work.</p>
|
||||
<p>You, the author(s), <strong>MUST</strong> own the contents of your submission, or you <strong>MUST</strong>
|
||||
@@ -612,9 +612,9 @@ analysis tools, machine learning tools, natural language models, code
|
||||
copilot tools, so-called AI services, large language models (LLMs), etc.
|
||||
If you do make use of such tools or services, then we encourage you to
|
||||
describe what tools and how you used those tools, in your <code>remarks.md</code> file.</p>
|
||||
<p>See <a href="rules.html#rule-16-anonymous">Rule 16 Anonymous</a>.</p>
|
||||
<p>See <a href="rules.html#rule-16---anonymous">Rule 16 - Anonymous</a>.</p>
|
||||
<div id="rule8">
|
||||
<h2 id="rule-8-submission">Rule 8 Submission</h2>
|
||||
<h2 id="rule-8---submission">Rule 8 - Submission</h2>
|
||||
</div>
|
||||
<p>The Submit Server will only accept submissions from those who have
|
||||
registered and only while the contest is open.</p>
|
||||
@@ -625,21 +625,21 @@ processed, malformed, etc. Please take note of any errors, rectify,
|
||||
and resubmit. In order to avoid potential packaging errors, it is <strong>highly
|
||||
recommended</strong> to use <code>mkiocccentry(1)</code>.</p>
|
||||
<p>See
|
||||
<a href="rules.html#rule-3-register">Rule 3 Register</a>,
|
||||
<a href="rules.html#rule-15-building">Rule 15 Building</a>,
|
||||
<a href="rules.html#rule-3---register">Rule 3 - Register</a>,
|
||||
<a href="rules.html#rule-15---building">Rule 15 - Building</a>,
|
||||
and
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>.</p>
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>.</p>
|
||||
<div id="rule9">
|
||||
<h2 id="rule-9-no-hands">Rule 9 No hands</h2>
|
||||
<h2 id="rule-9---no-hands">Rule 9 - No hands</h2>
|
||||
</div>
|
||||
<p>Entries requiring human interaction to be initially compiled are <strong>NOT</strong>
|
||||
permitted. However, see the guidelines. Each entry <strong>MUST</strong> automated the
|
||||
its build process using <code>bash</code>, <code>gmake</code>, <code>gcc</code>, <code>clang</code>, under a
|
||||
<a href="https://pubs.opengroup.org/onlinepubs/9799919799/">SUS environment</a>.</p>
|
||||
<p>Note references to <code>gmake</code> can be any GNU Make compatible tool.</p>
|
||||
<p>See <a href="rules.html#rule-15-building">Rule 15 Building</a>.</p>
|
||||
<p>See <a href="rules.html#rule-15---building">Rule 15 - Building</a>.</p>
|
||||
<div id="rule10">
|
||||
<h2 id="rule-10-privileges">Rule 10 Privileges</h2>
|
||||
<p>Rule 10 - Privileges</p>
|
||||
</div>
|
||||
<p>Programs that require special privileges (setuid(2), setgid(2),
|
||||
super-user, special owner, special group, etc.) are <strong>HIGHLY DISCOURAGED</strong>.
|
||||
@@ -651,11 +651,11 @@ document this fact and explain why it is needed in your submission’s
|
||||
have these permissions, you will also have to explain this, because these
|
||||
bits are <strong>NOT</strong> allowed in submissions and those bits will <strong>NOT</strong> be copied by
|
||||
<code>mkiocccentry(1)</code>.</p>
|
||||
<p>See <a href="rules.html#rule-4-files">Rule 4 Files</a>,
|
||||
<p>See <a href="rules.html#rule-4---files">Rule 4 - Files</a>,
|
||||
and
|
||||
<a href="rules.html#rule-5-purity">Rule 5 Purity</a>.</p>
|
||||
<a href="rules.html#rule-5---purity">Rule 5 - Purity</a>.</p>
|
||||
<div id="rule11">
|
||||
<h2 id="rule-11-abuse">Rule 11 Abuse</h2>
|
||||
<h2 id="rule-11---abuse">Rule 11 - Abuse</h2>
|
||||
</div>
|
||||
<p>Legal abuse of the rules is somewhat encouraged, but comes with risks.
|
||||
A submission that, in the opinion of the Judges, violates the rules <strong>WILL
|
||||
@@ -675,11 +675,11 @@ version, please indicate that in your <code>remarks.md</code> file of your non-r
|
||||
abusing version so that the Judges don’t think you uploaded a duplicate
|
||||
into a wrong slot by mistake.</p>
|
||||
<div id="rule12">
|
||||
<h2 id="rule-12-utf-8">Rule 12 UTF-8</h2>
|
||||
<h2 id="rule-12---utf-8">Rule 12 - UTF-8</h2>
|
||||
</div>
|
||||
<p>Use of UTF-8 is supported by <code>C89</code> standard and its updates and so too by the IOCCC.</p>
|
||||
<div id="rule13">
|
||||
<h2 id="rule-13-newlines">Rule 13 Newlines</h2>
|
||||
<h2 id="rule-13---newlines">Rule 13 - Newlines</h2>
|
||||
</div>
|
||||
<p>Any C source that fails to compile because lines contain carriage-returns
|
||||
(CTRL+M, <code>\r</code>) in particular as part of DOS/Windows style newlines might
|
||||
@@ -694,7 +694,7 @@ need to do this, please document that in your <code>remarks.md</code> file and i
|
||||
your compiler complains about this, document this too and update your
|
||||
<code>Makefile</code> to account for this.</p>
|
||||
<div id="rule14">
|
||||
<h2 id="rule-14-resubmit">Rule 14 Resubmit</h2>
|
||||
<h2 id="rule-14---resubmit">Rule 14 - Resubmit</h2>
|
||||
</div>
|
||||
<p>Submissions that are substantially similar to previous winning IOCCC
|
||||
entries are discouraged.</p>
|
||||
@@ -704,7 +704,7 @@ enhance and improve your submission. If you do resubmit something that
|
||||
didn’t previously win, then you are encouraged to mention this in your
|
||||
<code>remarks.md</code> file as this sometimes helps.</p>
|
||||
<div id="rule15">
|
||||
<h2 id="rule-15-building">Rule 15 Building</h2>
|
||||
<h2 id="rule-15---building">Rule 15 - Building</h2>
|
||||
</div>
|
||||
<p>The <code>Makefile</code> <strong>MUST</strong> adhere to GNU Makefile syntax. Its recommended
|
||||
that you copy and rename the <code>Makefile.example</code> as template. The primary
|
||||
@@ -726,9 +726,9 @@ environments and systems are available in the search
|
||||
<a href="https://en.wikipedia.org/wiki/Single_UNIX_Specification">SUS</a>, such as
|
||||
GNU long name options <code>--example</code> or extensions like <code>grep -P</code>.</p>
|
||||
<p>Do <strong>NOT</strong> assume that <code>.</code> (current directory) is in the <code>$PATH</code> environment variable.</p>
|
||||
<p>See <a href="rules.html#rule-4-files">Rule 4 Files</a>.</p>
|
||||
<p>See <a href="rules.html#rule-4---files">Rule 4 - Files</a>.</p>
|
||||
<div id="rule16">
|
||||
<h2 id="rule-16-anonymous">Rule 16 Anonymous</h2>
|
||||
<h2 id="rule-16---anonymous">Rule 16 - Anonymous</h2>
|
||||
</div>
|
||||
<p>Your source code, data files, remarks, and program output <strong>MUST NOT</strong>
|
||||
identify the author(s) of your code (unless you are <strong>Peter Honeyman</strong>
|
||||
@@ -739,7 +739,7 @@ a past winner, you <strong>MUST NOT</strong> reveal your identity deliberately o
|
||||
accident anywhere in your submission. <strong><em>Failure to comply may result
|
||||
in the submission being disqualified.</em></strong></p>
|
||||
<div id="rule17">
|
||||
<h2 id="rule-17-packaging">Rule 17 Packaging</h2>
|
||||
<h2 id="rule-17---packaging">Rule 17 - Packaging</h2>
|
||||
</div>
|
||||
<p>The files, directories, and paths <strong>MUST</strong> conform to the limits imposed by
|
||||
<code>mkiocccentry(1)</code>, including but <strong>NOT</strong> limited, to their names, count, path
|
||||
@@ -758,7 +758,7 @@ filename <strong>MUST</strong> pass all <code>fnamchk(1)</code> checks. You may
|
||||
created by the <code>-d</code> or <code>-s</code> seed options of <code>mkiocccentry(1)</code>.</p>
|
||||
<p>The unpacked submission directory <strong>MUST</strong> pass the checks performed by the
|
||||
current version of <code>chksubmit(1)</code>.</p>
|
||||
<p>The <code>prog.c</code> file <strong>MUST</strong> pass the <a href="rules.html#rule-2-size">Rule 2 Size</a>
|
||||
<p>The <code>prog.c</code> file <strong>MUST</strong> pass the <a href="rules.html#rule-2---size">Rule 2 - Size</a>
|
||||
size checks performed by <code>iocccsize(1)</code>.</p>
|
||||
<p>The <code>.auth.json</code> and <code>.info.json</code> files <strong>MUST</strong> be compatible with what
|
||||
<code>mkiocccentry(1)</code> generates.</p>
|
||||
@@ -769,27 +769,28 @@ that you are using the latest tools from the
|
||||
GitHub repo.</p>
|
||||
<p>In summary: it is best to use <code>mkioccentry(1)</code> to package your submission,
|
||||
rather than roll-it-by-hand.</p>
|
||||
<p>See <a href="rules.html#rule-4-files">Rule 4 Files</a>.</p>
|
||||
<p>See <a href="rules.html#rule-4---files">Rule 4 - Files</a>.</p>
|
||||
<div id="rule18">
|
||||
<h2 id="rule-18-license">Rule 18 License</h2>
|
||||
<h2 id="rule-18---license">Rule 18 - License</h2>
|
||||
</div>
|
||||
<p>The entirety of your submission <strong>MUST</strong> be submitted under the following license:</p>
|
||||
<p><a href="https://creativecommons.org/licenses/by-sa/4.0/">CC BY-SA 4.0 DEED Attribution-ShareAlike 4.0 International</a></p>
|
||||
<p>See <a href="rules.html#rule-7-original-work">Rule 7 Original Work</a>.</p>
|
||||
<p>See <a href="rules.html#rule-7---original-work">Rule 7 - Original Work</a>.</p>
|
||||
<div id="rule19">
|
||||
<h2 id="rule-19-prime">Rule 19 Prime</h2>
|
||||
<h2 id="rule-19---prime">Rule 19 - Prime</h2>
|
||||
</div>
|
||||
<p>This 19th rule, while prime, is reserved for future abuse 😁.
|
||||
Additional rules, both humorous and otherwise, may be added
|
||||
below this rule in future contests.</p>
|
||||
<p>See <a href="rules.html#rule-6-free">Rule 6 Free</a>.</p>
|
||||
<p>See <a href="rules.html#rule-6---free">Rule 6 - Free</a>.</p>
|
||||
<h2 id="further-reading">Further Reading</h2>
|
||||
<p>Please read the <a href="guidelines.html">Guidelines</a> next for further
|
||||
commentary on The Rules.</p>
|
||||
<p>Read the
|
||||
<a href="https://www.ioccc.org/quick-start.html#enter">Entering the IOCCC: the bare minimum you need to know</a>
|
||||
for an overview of how to enter the contest.</p>
|
||||
<p>Please read the <a href="guidelines.html">Guidelines</a> next for further commentary on The Rules.</p>
|
||||
<p>See also the <a href="../faq.html">FAQ</a>.</p>
|
||||
<p>Consider joining our Discord
|
||||
server for discussions about The Rules, questions for the Judges, and
|
||||
<code>C</code> in general.</p>
|
||||
<p>Consider joining the <a href="https://discord.com/invite/Wa42Qujwnw">IOCCC Discord Server</a>
|
||||
for discussions about The Rules, questions for the Judges, and <code>C</code> in general.</p>
|
||||
<p>Leonid A. Broukhis
|
||||
chongo (Landon Curt Noll) /\cc/\
|
||||
<!-- AFTER: last line of markdown file: next/rules.md --></p>
|
||||
|
||||
+48
-70
@@ -27,8 +27,7 @@ app from time to time to view IOCCC mastodon updates.
|
||||
<!-- END: the next line ends content from: inc/rules.closed.hdr -->
|
||||
<!-- This is the last line modified by the tool: bin/gen-status.sh -->
|
||||
|
||||
29th International Obfuscated C Code Contest Official Rules
|
||||
------------------------------------------------------------
|
||||
# 29th International Obfuscated C Code Contest Official Rules
|
||||
|
||||
Copyright © 2025 Leonid A. Broukhis and Landon Curt Noll.
|
||||
|
||||
@@ -38,17 +37,15 @@ and remains unaltered. All other uses **MUST** receive prior permission in
|
||||
writing by [contacting the judges](../contact.html).
|
||||
|
||||
|
||||
Rules version
|
||||
-------------
|
||||
## Rules version
|
||||
|
||||
These IOCCC Rules are version **29.03 2025-11-19**.
|
||||
These IOCCC Rules are version **29.04 2025-11-20**.
|
||||
|
||||
Be sure to read the [IOCCC guidelines](guidelines.html).
|
||||
|
||||
|
||||
<div id="rule0">
|
||||
Rule 0 Dates
|
||||
------------
|
||||
## Rule 0 - Dates
|
||||
</div>
|
||||
|
||||
This IOCCC runs from ${START_DATE_TIME} UTC to ${CLOSE_DATE_TIME} UTC.
|
||||
@@ -63,16 +60,14 @@ The above dates are subject to change until the contest is officially open.
|
||||
|
||||
|
||||
<div id="rule1">
|
||||
Rule 1 Program
|
||||
---------------
|
||||
## Rule 1 - Program
|
||||
</div>
|
||||
|
||||
Your submission **MUST** be a C program.
|
||||
|
||||
|
||||
<div id="rule2">
|
||||
Rule 2 Size
|
||||
-----------
|
||||
## Rule 2 - Size
|
||||
</div>
|
||||
|
||||
`Rule 2` requires that your submission satisfy **BOTH**
|
||||
@@ -84,7 +79,7 @@ During development this can be checked using `iocccsize(1)`:
|
||||
iocccsize prog.c
|
||||
|
||||
<div id="rule2a">
|
||||
### Rule 2a Gross Size
|
||||
### Rule 2a - Gross Size
|
||||
</div>
|
||||
|
||||
The overall maximum size of your `prog.c` program source **MUST NOT**
|
||||
@@ -92,7 +87,7 @@ exceed **4993** bytes.
|
||||
|
||||
|
||||
<div id="rule2b">
|
||||
### Rule 2b Net Size
|
||||
### Rule 2b - Net Size
|
||||
</div>
|
||||
|
||||
When the filename of your program source (i.e., `prog.c`) is given as a
|
||||
@@ -102,8 +97,7 @@ NOT** exceed **2503**.
|
||||
|
||||
|
||||
<div id="rule3">
|
||||
Rule 3 Register
|
||||
---------------
|
||||
## Rule 3 - Register
|
||||
</div>
|
||||
|
||||
You **MUST** register, using a valid email address, in order to submit
|
||||
@@ -122,12 +116,11 @@ email or for those who wait until the last minute to try to register!
|
||||
|
||||
See [Entering the IOCCC: the bare minimum you need to know](../quick-start.html#enter).
|
||||
|
||||
See [Rule 8 Submission](rules.html#rule-8-submission).
|
||||
See [Rule 8 - Submission](rules.html#rule-8---submission).
|
||||
|
||||
|
||||
<div id="rule4">
|
||||
Rule 4 Files
|
||||
------------
|
||||
## Rule 4 - Files
|
||||
</div>
|
||||
|
||||
The submission **MUST** include at least these files: `Makefile`, `prog.c`,
|
||||
@@ -177,12 +170,11 @@ The `remarks.md` and `Makefile` are explained in more detail in the Guidelines.
|
||||
|
||||
See [IOCCC markdown guidelines](../markdown.html).
|
||||
|
||||
See [Rule 17 Packaging](rules.html#rule-17-packaging).
|
||||
See [Rule 17 - Packaging](rules.html#rule-17---packaging).
|
||||
|
||||
|
||||
<div id="rule5">
|
||||
Rule 5 Purity
|
||||
-------------
|
||||
## Rule 5 - Purity
|
||||
</div>
|
||||
|
||||
Your submission **MUST NOT** modify the filenames or content of any of
|
||||
@@ -205,8 +197,7 @@ Your code should be able to run under a
|
||||
|
||||
|
||||
<div id="rule6">
|
||||
Rule 6 Free
|
||||
-----------
|
||||
## Rule 6 - Free
|
||||
</div>
|
||||
|
||||
I am **NOT** a Rule, I am a `free(void *human);` ‼️
|
||||
@@ -217,12 +208,11 @@ I am **NOT** a Rule, I am a `free(void *human);` ‼️
|
||||
}
|
||||
```
|
||||
|
||||
See [Rule 19 Prime](rules.html#rule-19-prime).
|
||||
See [Rule 19 - Prime](rules.html#rule-19---prime).
|
||||
|
||||
|
||||
<div id="rule7">
|
||||
Rule 7 Original Work
|
||||
--------------------
|
||||
## Rule 7 - Original Work
|
||||
</div>
|
||||
|
||||
In short: You wrote it, you own it, and its an original work.
|
||||
@@ -243,12 +233,11 @@ copilot tools, so-called AI services, large language models (LLMs), etc.
|
||||
If you do make use of such tools or services, then we encourage you to
|
||||
describe what tools and how you used those tools, in your `remarks.md` file.
|
||||
|
||||
See [Rule 16 Anonymous](rules.html#rule-16-anonymous).
|
||||
See [Rule 16 - Anonymous](rules.html#rule-16---anonymous).
|
||||
|
||||
|
||||
<div id="rule8">
|
||||
Rule 8 Submission
|
||||
-----------------
|
||||
## Rule 8 - Submission
|
||||
</div>
|
||||
|
||||
The Submit Server will only accept submissions from those who have
|
||||
@@ -263,15 +252,14 @@ and resubmit. In order to avoid potential packaging errors, it is **highly
|
||||
recommended** to use `mkiocccentry(1)`.
|
||||
|
||||
See
|
||||
[Rule 3 Register](rules.html#rule-3-register),
|
||||
[Rule 15 Building](rules.html#rule-15-building),
|
||||
[Rule 3 - Register](rules.html#rule-3---register),
|
||||
[Rule 15 - Building](rules.html#rule-15---building),
|
||||
and
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging).
|
||||
|
||||
|
||||
<div id="rule9">
|
||||
Rule 9 No hands
|
||||
----------------
|
||||
## Rule 9 - No hands
|
||||
</div>
|
||||
|
||||
Entries requiring human interaction to be initially compiled are **NOT**
|
||||
@@ -281,12 +269,11 @@ its build process using `bash`, `gmake`, `gcc`, `clang`, under a
|
||||
|
||||
Note references to `gmake` can be any GNU Make compatible tool.
|
||||
|
||||
See [Rule 15 Building](rules.html#rule-15-building).
|
||||
See [Rule 15 - Building](rules.html#rule-15---building).
|
||||
|
||||
|
||||
<div id="rule10">
|
||||
Rule 10 Privileges
|
||||
------------------
|
||||
Rule 10 - Privileges
|
||||
</div>
|
||||
|
||||
Programs that require special privileges (setuid(2), setgid(2),
|
||||
@@ -301,14 +288,13 @@ have these permissions, you will also have to explain this, because these
|
||||
bits are **NOT** allowed in submissions and those bits will **NOT** be copied by
|
||||
`mkiocccentry(1)`.
|
||||
|
||||
See [Rule 4 Files](rules.html#rule-4-files),
|
||||
See [Rule 4 - Files](rules.html#rule-4---files),
|
||||
and
|
||||
[Rule 5 Purity](rules.html#rule-5-purity).
|
||||
[Rule 5 - Purity](rules.html#rule-5---purity).
|
||||
|
||||
|
||||
<div id="rule11">
|
||||
Rule 11 Abuse
|
||||
-------------
|
||||
## Rule 11 - Abuse
|
||||
</div>
|
||||
|
||||
Legal abuse of the rules is somewhat encouraged, but comes with risks.
|
||||
@@ -334,16 +320,14 @@ into a wrong slot by mistake.
|
||||
|
||||
|
||||
<div id="rule12">
|
||||
Rule 12 UTF-8
|
||||
-------------
|
||||
## Rule 12 - UTF-8
|
||||
</div>
|
||||
|
||||
Use of UTF-8 is supported by `C89` standard and its updates and so too by the IOCCC.
|
||||
|
||||
|
||||
<div id="rule13">
|
||||
Rule 13 Newlines
|
||||
----------------
|
||||
## Rule 13 - Newlines
|
||||
</div>
|
||||
|
||||
Any C source that fails to compile because lines contain carriage-returns
|
||||
@@ -362,8 +346,7 @@ your compiler complains about this, document this too and update your
|
||||
|
||||
|
||||
<div id="rule14">
|
||||
Rule 14 Resubmit
|
||||
----------------
|
||||
## Rule 14 - Resubmit
|
||||
</div>
|
||||
|
||||
Submissions that are substantially similar to previous winning IOCCC
|
||||
@@ -377,8 +360,7 @@ didn't previously win, then you are encouraged to mention this in your
|
||||
|
||||
|
||||
<div id="rule15">
|
||||
Rule 15 Building
|
||||
----------------
|
||||
## Rule 15 - Building
|
||||
</div>
|
||||
|
||||
The `Makefile` **MUST** adhere to GNU Makefile syntax. Its recommended
|
||||
@@ -408,12 +390,11 @@ GNU long name options `--example` or extensions like `grep -P`.
|
||||
|
||||
Do **NOT** assume that `.` (current directory) is in the `$PATH` environment variable.
|
||||
|
||||
See [Rule 4 Files](rules.html#rule-4-files).
|
||||
See [Rule 4 - Files](rules.html#rule-4---files).
|
||||
|
||||
|
||||
<div id="rule16">
|
||||
Rule 16 Anonymous
|
||||
-----------------
|
||||
## Rule 16 - Anonymous
|
||||
</div>
|
||||
|
||||
Your source code, data files, remarks, and program output **MUST NOT**
|
||||
@@ -427,8 +408,7 @@ in the submission being disqualified.***
|
||||
|
||||
|
||||
<div id="rule17">
|
||||
Rule 17 Packaging
|
||||
-----------------
|
||||
## Rule 17 - Packaging
|
||||
</div>
|
||||
|
||||
The files, directories, and paths **MUST** conform to the limits imposed by
|
||||
@@ -453,7 +433,7 @@ created by the `-d` or `-s` seed options of `mkiocccentry(1)`.
|
||||
The unpacked submission directory **MUST** pass the checks performed by the
|
||||
current version of `chksubmit(1)`.
|
||||
|
||||
The `prog.c` file **MUST** pass the [Rule 2 Size](rules.html#rule-2-size)
|
||||
The `prog.c` file **MUST** pass the [Rule 2 - Size](rules.html#rule-2---size)
|
||||
size checks performed by `iocccsize(1)`.
|
||||
|
||||
The `.auth.json` and `.info.json` files **MUST** be compatible with what
|
||||
@@ -468,45 +448,43 @@ GitHub repo.
|
||||
In summary: it is best to use `mkioccentry(1)` to package your submission,
|
||||
rather than roll-it-by-hand.
|
||||
|
||||
See [Rule 4 Files](rules.html#rule-4-files).
|
||||
See [Rule 4 - Files](rules.html#rule-4---files).
|
||||
|
||||
|
||||
<div id="rule18">
|
||||
Rule 18 License
|
||||
---------------
|
||||
## Rule 18 - License
|
||||
</div>
|
||||
|
||||
The entirety of your submission **MUST** be submitted under the following license:
|
||||
|
||||
[CC BY-SA 4.0 DEED Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/)
|
||||
|
||||
See [Rule 7 Original Work](rules.html#rule-7-original-work).
|
||||
See [Rule 7 - Original Work](rules.html#rule-7---original-work).
|
||||
|
||||
|
||||
<div id="rule19">
|
||||
Rule 19 Prime
|
||||
-------------
|
||||
## Rule 19 - Prime
|
||||
</div>
|
||||
|
||||
This 19th rule, while prime, is reserved for future abuse 😁.
|
||||
Additional rules, both humorous and otherwise, may be added
|
||||
below this rule in future contests.
|
||||
|
||||
See [Rule 6 Free](rules.html#rule-6-free).
|
||||
See [Rule 6 - Free](rules.html#rule-6---free).
|
||||
|
||||
|
||||
Further Reading
|
||||
---------------
|
||||
## Further Reading
|
||||
|
||||
Please read the [Guidelines](guidelines.html) next for further
|
||||
commentary on The Rules.
|
||||
Read the
|
||||
[Entering the IOCCC: the bare minimum you need to know](https://www.ioccc.org/quick-start.html#enter)
|
||||
for an overview of how to enter the contest.
|
||||
|
||||
Please read the [Guidelines](guidelines.html) next for further commentary on The Rules.
|
||||
|
||||
See also the [FAQ](../faq.html).
|
||||
|
||||
Consider joining our Discord
|
||||
server for discussions about The Rules, questions for the Judges, and
|
||||
`C` in general.
|
||||
|
||||
Consider joining the [IOCCC Discord Server](https://discord.com/invite/Wa42Qujwnw)
|
||||
for discussions about The Rules, questions for the Judges, and `C` in general.
|
||||
|
||||
Leonid A. Broukhis
|
||||
chongo (Landon Curt Noll) /\\cc/\\
|
||||
+3
-3
@@ -518,7 +518,7 @@ the file selection step.</p>
|
||||
<li>the status of the submission</li>
|
||||
<li>the filename, which will be in the correct format, assuming you used
|
||||
<code>mkiocccentry(1)</code> which is <strong>HIGHLY</strong> recommended so that you do not break
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>!</li>
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</li>
|
||||
<li>the file length, which <code>txzchk(1)</code> will also verify (the file itself and the
|
||||
tarball listing).</li>
|
||||
<li>the upload date.</li>
|
||||
@@ -576,7 +576,7 @@ To see any status updates, you should logout and log back in later.</p>
|
||||
<p>… or <strong>ANY</strong> other error then you <strong>MUST FIX</strong> your submission, repackage your
|
||||
tarball with <code>mkiocccentry</code> and upload to the same slot again! If you do not fix
|
||||
this your submission <strong>WILL BE REJECTED</strong> for violating
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p>
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p>
|
||||
<p>If the format test went well, then you will see:</p>
|
||||
<blockquote>
|
||||
<p><strong>Status: submit file received by the IOCCC judges. Passed both txzchk and chksubmit tests.</strong></p>
|
||||
@@ -586,7 +586,7 @@ rules or that everything is OK once the tarball is extracted; it simply means
|
||||
the tests performed by the tools passed. If you find a flaw in a tool and
|
||||
abuse it and the tests pass then you stand a significant chance of having your
|
||||
submission rejected for violating
|
||||
<a href="rules.html#rule-17-packaging">Rule 17 Packaging</a>,
|
||||
<a href="rules.html#rule-17---packaging">Rule 17 - Packaging</a>,
|
||||
even if the tests passed.</p>
|
||||
<p>For details on <code>txzchk</code>, see the
|
||||
FAQ on “<a href="../faq.html#txzchk">txzchk</a>”.</p>
|
||||
|
||||
+3
-3
@@ -87,7 +87,7 @@ And in the slot it will give you important details like:
|
||||
- the status of the submission
|
||||
- the filename, which will be in the correct format, assuming you used
|
||||
`mkiocccentry(1)` which is **HIGHLY** recommended so that you do not break
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)!
|
||||
- the file length, which `txzchk(1)` will also verify (the file itself and the
|
||||
tarball listing).
|
||||
- the upload date.
|
||||
@@ -158,7 +158,7 @@ Or:
|
||||
... or **ANY** other error then you **MUST FIX** your submission, repackage your
|
||||
tarball with `mkiocccentry` and upload to the same slot again! If you do not fix
|
||||
this your submission **WILL BE REJECTED** for violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)!
|
||||
|
||||
If the format test went well, then you will see:
|
||||
|
||||
@@ -169,7 +169,7 @@ rules or that everything is OK once the tarball is extracted; it simply means
|
||||
the tests performed by the tools passed. If you find a flaw in a tool and
|
||||
abuse it and the tests pass then you stand a significant chance of having your
|
||||
submission rejected for violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging),
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging),
|
||||
even if the tests passed.
|
||||
|
||||
For details on `txzchk`, see the
|
||||
|
||||
+3
-3
@@ -566,13 +566,13 @@ for more info.</p></li>
|
||||
<p><strong>NOTE</strong>: Please see our <a href="markdown.html">IOCCC markdown guide</a> for <strong>important information</strong> on using markdown in the IOCCC.</p>
|
||||
<p>If the <code>mkiocccentry</code> tool indicates that there is a problem with your
|
||||
submission, especially if it identifies a
|
||||
<a href="next/rules.html#rule-2-size">Rule 2 Size</a>,
|
||||
<a href="next/rules.html#rule-2---size">Rule 2 - Size</a>,
|
||||
or any other <a href="next/rules.html">rule</a>, related problem, you are <strong>strongly</strong> encouraged to revise and
|
||||
correct your entry and then re-run the <code>mkiocccentry</code> tool.</p>
|
||||
<p>If you choose to risk violating <a href="next/rules.html">Rules</a>, be sure and explain your reason
|
||||
for doing so in your <code>remarks.md</code> file.</p>
|
||||
<p>See also
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>!</p>
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>!</p>
|
||||
<p><strong>IMPORTANT NOTE</strong>: the tools that require other tools, <code>mkiocccentry(1)</code> and
|
||||
<code>txzchk(1)</code>, will, as of version <code>2.0.2 2025-03-11</code>, search under <code>$PATH</code>. If
|
||||
you have an earlier version and you have not installed the tools and run the
|
||||
@@ -581,7 +581,7 @@ tools to set the path to the required tools.</p>
|
||||
<p>Do remember to make sure you have the latest vers
|
||||
<code>chksubmit(1)</code>, <code>txzchk(1)</code> and <code>fnamchk(1)</code>. And remember to make sure you have
|
||||
the latest version so you do not violate
|
||||
<a href="next/rules.html#rule-17-packaging">Rule 17 Packaging</a>.
|
||||
<a href="next/rules.html#rule-17---packaging">Rule 17 - Packaging</a>.
|
||||
See the
|
||||
FAQ on “<a href="faq.html#obtaining_mkiocccentry">obtaining the latest mkiocccentry tools</a>”,
|
||||
the
|
||||
|
||||
+3
-3
@@ -162,7 +162,7 @@ Three files are required to exist in `topdir`:
|
||||
|
||||
If the `mkiocccentry` tool indicates that there is a problem with your
|
||||
submission, especially if it identifies a
|
||||
[Rule 2 Size](next/rules.html#rule-2-size),
|
||||
[Rule 2 - Size](next/rules.html#rule-2---size),
|
||||
or any other [rule](next/rules.html), related problem, you are **strongly** encouraged to revise and
|
||||
correct your entry and then re-run the `mkiocccentry` tool.
|
||||
|
||||
@@ -170,7 +170,7 @@ If you choose to risk violating [Rules](next/rules.html), be sure and explain yo
|
||||
for doing so in your `remarks.md` file.
|
||||
|
||||
See also
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging)!
|
||||
[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
|
||||
@@ -181,7 +181,7 @@ tools to set the path to the required tools.
|
||||
Do remember to make sure you have the latest vers
|
||||
`chksubmit(1)`, `txzchk(1)` and `fnamchk(1)`. And remember to make sure you have
|
||||
the latest version so you do not violate
|
||||
[Rule 17 Packaging](next/rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](next/rules.html#rule-17---packaging).
|
||||
See the
|
||||
FAQ on "[obtaining the latest mkiocccentry tools](faq.html#obtaining_mkiocccentry)",
|
||||
the
|
||||
|
||||
+14
-14
@@ -16758,11 +16758,11 @@
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/faq.html</loc>
|
||||
<lastmod>2025-11-20T06:07:42+00:00</lastmod>
|
||||
<lastmod>2025-11-21T00:14:43+00:00</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/faq.md</loc>
|
||||
<lastmod>2025-11-20T05:27:40+00:00</lastmod>
|
||||
<lastmod>2025-11-21T00:14:46+00:00</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/inc/index.html</loc>
|
||||
@@ -16818,19 +16818,19 @@
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/news.html</loc>
|
||||
<lastmod>2025-11-20T06:14:39+00:00</lastmod>
|
||||
<lastmod>2025-11-21T00:14:45+00:00</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/news.md</loc>
|
||||
<lastmod>2025-11-20T06:10:33+00:00</lastmod>
|
||||
<lastmod>2025-11-21T00:07:02+00:00</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/next/guidelines.html</loc>
|
||||
<lastmod>2025-11-20T06:07:45+00:00</lastmod>
|
||||
<lastmod>2025-11-21T00:14:45+00:00</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/next/guidelines.md</loc>
|
||||
<lastmod>2025-11-20T06:03:36+00:00</lastmod>
|
||||
<lastmod>2025-11-21T00:07:07+00:00</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/next/index.html</loc>
|
||||
@@ -16870,19 +16870,19 @@
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/next/rules.html</loc>
|
||||
<lastmod>2025-11-20T21:45:59+00:00</lastmod>
|
||||
<lastmod>2025-11-21T00:14:47+00:00</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/next/rules.md</loc>
|
||||
<lastmod>2025-11-20T21:45:51+00:00</lastmod>
|
||||
<lastmod>2025-11-21T00:11:37+00:00</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/next/submit.html</loc>
|
||||
<lastmod>2025-11-20T06:07:47+00:00</lastmod>
|
||||
<lastmod>2025-11-21T00:14:47+00:00</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/next/submit.md</loc>
|
||||
<lastmod>2025-11-20T06:04:29+00:00</lastmod>
|
||||
<lastmod>2025-11-21T00:07:19+00:00</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/next/try.alt.sh</loc>
|
||||
@@ -16902,11 +16902,11 @@
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/quick-start.html</loc>
|
||||
<lastmod>2025-11-20T06:07:47+00:00</lastmod>
|
||||
<lastmod>2025-11-21T00:14:48+00:00</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/quick-start.md</loc>
|
||||
<lastmod>2025-11-20T06:06:04+00:00</lastmod>
|
||||
<lastmod>2025-11-21T00:07:25+00:00</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/README.html</loc>
|
||||
@@ -16938,11 +16938,11 @@
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/status.html</loc>
|
||||
<lastmod>2025-11-20T21:47:23+00:00</lastmod>
|
||||
<lastmod>2025-11-21T00:15:04+00:00</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/status.json</loc>
|
||||
<lastmod>2025-11-20T06:15:00+00:00</lastmod>
|
||||
<lastmod>2025-11-21T00:15:03+00:00</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.ioccc.org/status.md</loc>
|
||||
|
||||
+1
-1
@@ -461,7 +461,7 @@
|
||||
"no_comment" : "mandatory comment: because comments were removed from the original JSON spec",
|
||||
"IOCCC_status_version" : "1.0 2024-03-09",
|
||||
"contest_status" : "closed",
|
||||
"news_update" : "2025-11-20T06:10:33+00:00",
|
||||
"news_update" : "2025-11-21T00:07:02+00:00",
|
||||
"status_update" : "2025-08-01T19:38:14+00:00"
|
||||
}</code></pre>
|
||||
|
||||
|
||||
+1
-1
@@ -2,6 +2,6 @@
|
||||
"no_comment" : "mandatory comment: because comments were removed from the original JSON spec",
|
||||
"IOCCC_status_version" : "1.0 2024-03-09",
|
||||
"contest_status" : "closed",
|
||||
"news_update" : "2025-11-20T06:10:33+00:00",
|
||||
"news_update" : "2025-11-21T00:07:02+00:00",
|
||||
"status_update" : "2025-08-01T19:38:14+00:00"
|
||||
}
|
||||
Reference in new issue
Block a user