Update rules, guidelines and FAQ for file perms
Rule 17 mandates specific file permissions for files/directories in submission tarballs but the documentation did not state this. More work might need to be done here but it should be better now.
This commit is contained in:
1 parent
b0f512b865
commit
a2e216ec82
6 files changed
+299
-213
No files matched your search
+67
-63
@@ -461,7 +461,7 @@ writing by <a href="../contact.html">contacting the judges</a>.</p>
|
||||
</div>
|
||||
</div>
|
||||
<p class="leftbar">
|
||||
These <a href="guidelines.html">IOCCC guidelines</a> are version <strong>28.35 2025-01-30</strong>.
|
||||
These <a href="guidelines.html">IOCCC guidelines</a> are version <strong>28.36 2025-02-03</strong>.
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
The <a href="guidelines.md" download="guidelines.md">markdown form of these guidelines</a>
|
||||
@@ -613,8 +613,12 @@ before this option will work a second time, just like in normal mode.
|
||||
to account for the new <a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry repo</a> tools.
|
||||
Thus, you are <strong>STRONGLY</strong> advised to use the <code>mkiocccentry(1)</code> tool
|
||||
as found in the <a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry repo</a>
|
||||
to form the file to upload to the <a href="https://submit.ioccc.org">submit server</a>. Not
|
||||
doing so puts you at a very big risk of violating <a href="rules.html#rule17">Rule 17</a>.
|
||||
using <code>mkiocccentry(1)</code> the <a href="https://submit.ioccc.org">submit server</a>. Uploading
|
||||
a tarball not formed by <code>mkiocccentry(1)</code> puts you at a very big risk of
|
||||
violating <a href="rules.html#rule17">Rule 17</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#rule17">Rule 17</a>.
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
See the
|
||||
@@ -816,66 +820,6 @@ specific terminal brand. Programs that work in a standard xterm
|
||||
are considered more portable.
|
||||
</p>
|
||||
<p>Jump to: <a href="#">top</a></p>
|
||||
<div id="extra-files">
|
||||
<h1 id="including-optional-and-extra-files">Including optional and extra files</h1>
|
||||
</div>
|
||||
<p class="leftbar">
|
||||
The maximum total number of files that may be submitted has changed to 39 files.
|
||||
However, of those files, 5 are mandatory (<code>prog.c</code>, <code>Makefile</code>, <code>remarks.md</code> and
|
||||
the two JSON files generated by <code>mkiocccentry(1)</code>, <code>.info.json</code> and
|
||||
<code>.auth.json</code>).
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
Additionally, three of the files, if included, <strong>MUST</strong> be
|
||||
specific file(name)s and in the top level directory, or they will be counted as
|
||||
an extra file, not an optional file.
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
In particular, any file that is not <code>prog.c</code>, <code>Makefile</code>, <code>remarks.md</code>,
|
||||
<code>try.sh</code>, <code>prog.alt.c</code> or <code>try.alt.sh</code> will be counted as an extra file, and if
|
||||
<code>try.sh</code>, <code>prog.alt.c</code> or <code>try.alt.sh</code> are not in the top level directory they
|
||||
will also be counted as an extra file. The <code>.info.json</code> and <code>.auth.json</code> files
|
||||
are not counted as extra files but are required.
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
In other words, the actual amount of <strong>EXTRA</strong> files is 31.
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
Of course, if you use the optional filenames without
|
||||
the files being our intended use, in order to get past the file limit, that
|
||||
would be an abuse of rules. For more details on the optional files, see the
|
||||
FAQ on the “<a href="../faq.html#try_script">try.sh script system</a>”
|
||||
and the
|
||||
FAQ on “<a href="../faq.html#alt_code">alt code</a>”.
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
If you do need to include more files, you may do so by including as an extra
|
||||
file, a tarball. This does <strong>NOT</strong> have to pass <code>txzchk(1)</code> tests; only the
|
||||
submission tarball must pass the <code>txzchk(1)</code> tests. See the <a href="#txzchk">txzchk
|
||||
section</a> for more details on this important tool.
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
If you <strong>DO</strong> include a tarball, and the build process or the program extracts
|
||||
said tarball(s), the make <code>clobber</code> rule <strong>MUST</strong> remove them.
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
<strong>IMPORTANT REMINDER</strong>: make <strong>SURE</strong> your tarball does <strong>NOT</strong> reveal who you are!
|
||||
The <code>mkiocccentry(1)</code> tool creates a v7 format tarball to prevent this. You can
|
||||
do the same like:
|
||||
</p>
|
||||
<pre><code> tar --format=v7 -cJf foo.txz directory</code></pre>
|
||||
<p class="leftbar">
|
||||
See <a href="rules.html#rule17">Rule 17</a> and in particular the part about the <a href="rules.html#max-files">maximum
|
||||
number of files</a>. If you do not follow these points, you
|
||||
are at a great risk of violating <a href="rules.html#rule17">Rule 17</a>!
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
<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
|
||||
have a very good reason for this (and if you do, make <strong>SURE</strong> you specify why
|
||||
in your <code>remarks.md</code>).
|
||||
</p>
|
||||
<h1 id="mkiocccentry"><code>mkiocccentry</code></h1>
|
||||
<p class="leftbar">
|
||||
<a href="rules.html#rule17">Rule 17</a> (the <code>mkiocccentry(1)</code> rule) states that
|
||||
@@ -1082,6 +1026,66 @@ Of course, as <code>txzchk</code> does not extract the tarball, it is possible t
|
||||
manually package your submission tarball, you could still be violating <a href="rules.html#rule17">Rule
|
||||
17</a>.
|
||||
</p>
|
||||
<div id="extra-files">
|
||||
<h2 id="including-optional-and-extra-files">Including optional and extra files</h2>
|
||||
</div>
|
||||
<p class="leftbar">
|
||||
The maximum total number of files that may be submitted has changed to 39 files.
|
||||
However, of those files, 5 are mandatory (<code>prog.c</code>, <code>Makefile</code>, <code>remarks.md</code> and
|
||||
the two JSON files generated by <code>mkiocccentry(1)</code>, <code>.info.json</code> and
|
||||
<code>.auth.json</code>).
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
Additionally, three of the files, if included, <strong>MUST</strong> be
|
||||
specific file(name)s and in the top level directory, or they will be counted as
|
||||
an extra file, not an optional file.
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
In particular, any file that is not <code>prog.c</code>, <code>Makefile</code>, <code>remarks.md</code>,
|
||||
<code>try.sh</code>, <code>prog.alt.c</code> or <code>try.alt.sh</code> will be counted as an extra file, and if
|
||||
<code>try.sh</code>, <code>prog.alt.c</code> or <code>try.alt.sh</code> are not in the top level directory they
|
||||
will also be counted as an extra file. The <code>.info.json</code> and <code>.auth.json</code> files
|
||||
are not counted as extra files but are required.
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
In other words, the actual amount of <strong>EXTRA</strong> files is 31.
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
Of course, if you use the optional filenames without
|
||||
the files being our intended use, in order to get past the file limit, that
|
||||
would be an abuse of rules. For more details on the optional files, see the
|
||||
FAQ on the “<a href="../faq.html#try_script">try.sh script system</a>”
|
||||
and the
|
||||
FAQ on “<a href="../faq.html#alt_code">alt code</a>”.
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
If you do need to include more files, you may do so by including as an extra
|
||||
file, a tarball. This does <strong>NOT</strong> have to pass <code>txzchk(1)</code> tests; only the
|
||||
submission tarball must pass the <code>txzchk(1)</code> tests. See the <a href="#txzchk">txzchk
|
||||
section</a> for more details on this important tool.
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
If you <strong>DO</strong> include a tarball, and the build process or the program extracts
|
||||
said tarball(s), the make <code>clobber</code> rule <strong>MUST</strong> remove them.
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
<strong>IMPORTANT REMINDER</strong>: make <strong>SURE</strong> your tarball does <strong>NOT</strong> reveal who you are!
|
||||
The <code>mkiocccentry(1)</code> tool creates a v7 format tarball to prevent this. You can
|
||||
do the same like:
|
||||
</p>
|
||||
<pre><code> tar --format=v7 -cJf foo.txz directory</code></pre>
|
||||
<p class="leftbar">
|
||||
See <a href="rules.html#rule17">Rule 17</a> and in particular the part about the <a href="rules.html#max-files">maximum
|
||||
number of files</a>. If you do not follow these points, you
|
||||
are at a great risk of violating <a href="rules.html#rule17">Rule 17</a>!
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
<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
|
||||
have a very good reason for this (and if you do, make <strong>SURE</strong> you specify why
|
||||
in your <code>remarks.md</code>).
|
||||
</p>
|
||||
<p class="leftbar">
|
||||
See also the
|
||||
FAQ on “<a href="../faq.html#txzchk">txzchk</a>”.
|
||||
|
||||
Reference in new issue
Block a user