Update FAQ, guidelines and rules

The new syntax (though not all functionality is yet finished) of
mkiocccentry does not match what was in the FAQ, guidelines and rules.

Also added an important reminder to use v7 format with tarballs as not
doing so can reveal who you are which would break the rules. This is
mentioned in the rules and guidelines, showing how to create such a
tarball.

More work does have to be done with these two things however.
This commit is contained in:
Cody Boone Ferguson committed 2025-01-30 11:43:00 -08:00
1 parent 16c5ca3896
commit db6fd9ab66
6 files changed
+93 -82

No files matched your search

+25 -26
View File
@@ -462,7 +462,7 @@ writing by <a href="../contact.html">contacting the judges</a>.</p>
</div>
<p>Jump to: <a href="#">top</a></p>
<p class="leftbar">
These <a href="rules.html">IOCCC rules</a> are version <strong>28.18 2025-01-24</strong>.
These <a href="rules.html">IOCCC rules</a> are version <strong>28.19 2025-01-30</strong>.
</p>
<p class="leftbar">
The <a href="rules.md" download="rules.md">markdown form of these rules</a>
@@ -1034,22 +1034,6 @@ issues
page</a>.
</p>
<p class="leftbar">
You submission may have additional files, however the filenames of those additional files <strong>MUST</strong>:
</p>
<ul>
<li><p class="leftbar">
Be less than <strong>100</strong> characters in length.
</p></li>
<li><p class="leftbar">
Match the regular expression:
<code>^[0-9A-Za-z][0-9A-Za-z._+-]*$</code>
</p></li>
</ul>
<p class="leftbar">
The <code>mkiocccentry(1)</code> tool will not package any files that do not meet
those requirements.
</p>
<p class="leftbar">
The <code>Makefile</code> <strong>MUST</strong> be a <strong>non</strong>-empty file in <strong><a href="https://www.gnu.org/software/make/manual/make.html">GNU
Makefile</a></strong> form. See the
<a href="guidelines.html#makefile">Makefile section in the guidelines</a>,
@@ -1098,9 +1082,9 @@ more details on this tool and the <a href="https://github.com/ioccc-src/mkioccce
repo</a>.
</p>
<p class="leftbar">
Your entry may <strong>NOT</strong> have subdirectories. However, you can provide files that
are in different directories as <code>mkiocccentry(1)</code> will copy them to the work
directory (see the <a href="guidelines.html">guidelines</a> for more details).
Your entry may have subdirectories, depending on the depth and total length of
the filenames. Certain directories like <code>.git</code>, <code>RCCS</code>, <code>CVS</code> and <code>.svn</code> are
skipped. For more information, see the <a href="guidelines.html">guidelines</a>.
</p>
<p class="leftbar">
Filenames in your entry (that is, not including the files generated by the
@@ -1108,7 +1092,7 @@ Filenames in your entry (that is, not including the files generated by the
</p>
<ul>
<li><p class="leftbar">
Be less than <strong>100</strong> characters in length
Be &lt;= <strong>38</strong> characters in length
</p></li>
<li><p class="leftbar">
<strong>NOT</strong> have a <strong><code>/</code></strong> (excluding the entry directory that
@@ -1125,13 +1109,19 @@ the exception of files generated by <code>mkiocccentry(1)</code> itself, it must
</p></li>
<li><p class="leftbar">
Match the regular expression
<code>^[0-9A-Za-z][0-9A-Za-z._+-]*$</code> (again, excluding files generated by
<code>^[0-9A-Za-z]+[0-9A-Za-z_+.-]*$</code> (again, excluding files generated by
<code>mkiocccentry(1)</code>).
</p></li>
<li><p class="leftbar">
<strong>NOT</strong> be a directory depth &gt; 4.
</p></li>
<li><p class="leftbar">
<strong>NOT</strong> have a total path length &gt; 99 characters.
</p></li>
</ul>
<p class="leftbar">
Additionally, the tarball <strong>MUST</strong> have the following files (generated
by the <code>mkiocccentry(1)</code> tool):
Additionally, the submission tarball created by <code>mkiocccentry(1)</code> <strong>MUST</strong> have
the following files (generated by the <code>mkiocccentry(1)</code> tool):
</p>
<ul>
<li><p class="leftbar">
@@ -1181,7 +1171,10 @@ if you need to include more files.
</p>
<p class="leftbar">
If you do include a tarball that takes your extra files count over the maximum,
you <strong>MUST</strong> explain this in your <code>remarks.md</code> file!
you <strong>MUST</strong> explain this in your <code>remarks.md</code> file! <strong>PLEASE</strong> do not include a
tarball with extra files for a test-suite; instead mention in your remarks that
you have extra files for a test-suite that can be included should your
submission win.
</p>
<p class="leftbar">
If you need to extract a tarball by some Makefile, or perhaps the program
@@ -1190,8 +1183,14 @@ created!
</p>
<p class="leftbar">
Tarballs <strong>MUST</strong> only create files and directories <em>under them</em>. They may
<strong>NOT</strong> contain absolute paths (paths that start with <code>/</code>)!
<strong>NOT</strong> contain absolute paths (paths that start with <code>/</code>)! <code>txzchk</code> only checks
the submission tarball so you must verify these details yourself.
</p>
<p class="leftbar">
Make <strong>SURE</strong> your tarball does not reveal who you are! The <code>mkiocccentry(1)</code>
tool uses the v7 format. For instance you might try:
</p>
<pre><code> tar --format=v7 -cJf foo.txz directory</code></pre>
<hr style="width:50%;text-align:left;margin-left:0">
<p class="leftbar">
<strong>IMPORTANT</strong>: where <a href="#rule17">Rule 17</a> and the tools from the latest