diff --git a/faq.html b/faq.html index 47fc28b81..929fb7689 100644 --- a/faq.html +++ b/faq.html @@ -389,7 +389,7 @@
This is FAQ version 28.0 2024-07-14.
+This is FAQ version 28.0.1 2024-07-25.
make clobber all mkiocccentry work_dir prog.c Makefile remarks.md [file ...]where:
NOTE: Please see our IOCCC markdown guide for important information on using markdown in the IOCCC.
NOTE: It is NOT necessary to install the tools to use them as you can run -the tools from the top of the mkiocccentry repo directory just fine.
-If mkiocccentry tool indicates that there is a problem with your entry,
-especially if it identifies a rule 2 related problem,
+the tools from the top of the mkiocccentry repo directory just fine. However,
+installing it will make it easier for you as you can run it from your
+submission’s directory.
If the mkiocccentry tool indicates that there is a problem with your entry,
+especially if it identifies a Rule 2 related problem,
you are strongly encouraged to revise and correct your entry and
then re-run the mkiocccentry tool.
If you choose to risk violating rules, be sure an explain your reason @@ -843,87 +845,8 @@ you attach the log file we will see those too.
This file is constructed by the mkiocccentry(1) prior to forming the xz
compressed tarball of your submission. The .auth.json file contains
-information about the author or authors of the submission, in JSON format. The
-JSON authors array holds the following information about the authors of the
-submission:
name (double quoted string)
location_code (double quoted string)
NOTE: in mkiocccentry use XX if you want your location to be anonymous.
email (null or double quoted string)
x@y, or null if not provided.url (null or double quoted string)
null if not provided.alt_url (null or double quoted string)
null if not provided.mastodon (null or double quoted string)
@user@domain, or
-null if not provided. See the
-FAQ on “Mastodon”
-for more information.github (null or double quoted string)
@user, or null if not
-provided.affiliation (null or double quoted string)
null if not provided.NOTE: if provided, the length of the affiliation MUST be within
-the range of 1 THROUGH MAX_AFFILIATION_LEN (see
-soup/limit_ioccc.h
-in the mkiocccentry repo). If
-this is not the case you stand a great risk of having your submission
-rejected for violating Rule 17!
NOTE: an affiliation does NOT have any affect on whether you will win or not.
past_winning_author (boolean)
true if this author claims to have won a past IOCCC, false if this
-author has NOT won before.NOTE: this has NO effect on whether you will win or not.
default_handle (boolean)
true if this default handle was accepted, false if one is provided
-by this author.author_handle (double quoted string)
NOTE: if you have won before, we ENCOURAGE you to use the same handle of -your previous winning entries, to help in organising the -authors.html page and the author JSON file. -See the -FAQ on “author handle” -and the -FAQ on “author_handle.json” -for more information.
author_number (number)
authors array..auth.json:The file also contains the following details:
+information about the author or authors of the submission, in JSON format. +In order of the file’s contents we describe each required field, below:
no_comment (double quoted string)
NOTE: if true then this may NOT be submitted to the contest! Please do
NOT email the Judges your submission!
Next, the JSON authors array holds the following information about the
+author(s) of the submission:
name (double quoted string)
location_code (double quoted string)
NOTE: in mkiocccentry use XX if you want your location to be anonymous.
email (null or double quoted string)
x@y, or null if not provided.url (null or double quoted string)
null if not provided.alt_url (null or double quoted string)
null if not provided.mastodon (null or double quoted string)
@user@domain, or
+null if not provided. See the
+FAQ on “Mastodon”
+for more information.github (null or double quoted string)
@user, or null if not
+provided.affiliation (null or double quoted string)
null if not provided.NOTE: if provided, the length of the affiliation MUST be within
+the range of 1 THROUGH MAX_AFFILIATION_LEN (see
+soup/limit_ioccc.h
+in the mkiocccentry repo). If
+this is not the case you stand a great risk of having your submission
+rejected for violating Rule 17!
NOTE: an affiliation does NOT have any affect on whether you will win or not.
past_winning_author (boolean)
true if this author claims to have won a past IOCCC, false if this
+author has NOT won before.NOTE: this has NO effect on whether you will win or not.
default_handle (boolean)
true if this default handle was accepted, false if one is provided
+by this author.author_handle (double quoted string)
NOTE: if you have won before, we ENCOURAGE you to use the same handle of +your previous winning entries, to help in organising the +authors.html page and the author JSON file. +See the +FAQ on “author handle” +and the +FAQ on “author_handle.json” +for more information.
author_number (number)
authors array.After the authors array the remaining of a .auth.json file holds:
formed_timestamp (number)
.auth.json was formed (seegettimeofday(2)`).
-See also the
+.auth.json was formed (see gettimeofday(2)). See also the
FAQ on “.info.json”
-for more inforation.NOTE: this MUST be greater than or equal to MIN_TIMESTAMP (see
soup/limit_ioccc.h
@@ -1104,6 +1107,9 @@ filed is in the file. In these cases (and any others that must be established as
valid by chkentry) your submission would be rejected for violating Rule
17 and in particular because chkentry would not
validate the .auth.json file.
If you wish to verify that your .auth.json file is valid JSON then see the
+validating JSON documents in the
+FAQ on “author_handle.json”.
.info.json file?info_JSON (double quoted string)
MUST be ".info.json", defined as INFO_JSON_FILENAME in
-soup/entry_util.h
-in the mkiocccentry repo, and
-it is the .info.json file that mkiocccentry forms.
-See the
-FAQ on “.info.json”
-for more information.NOTE: if this is NOT the case you stand a great chance of having your -submission rejected for violating Rule 17!
auth_JSON (double quoted string)
MUST be ".auth.json", defined as AUTH_JSON_FILENAME in
-soup/entry_util.h
-in the mkiocccentry repo, and
-it is the .auth.json file that mkiocccentry forms.
-See the
-FAQ on “.auth.json”
-for more inforation.NOTE: if this is NOT the case you stand a great chance of having your -submission rejected for violating Rule 17!
c_src (double quoted string)
MUST be "prog.c", defined as PROG_C_FILENAME in
-soup/entry_util.h
-in the mkiocccentry repo, and
-is your submission source code.NOTE: if this is NOT the case you stand a great chance of having your -submission rejected for violating Rule 17!
-NOTE: if you provide to mkiocccentry a different filename it will be
-copied to prog.c.
Makefile (double quoted string)
MUST be "Makefile", defined as MAKEFILE_FILENAME in
-soup/entry_util.h
-in the mkiocccentry repo, and
-is your Makefile file.
-See the
-FAQ on “Makefile”
-for more information.NOTE: if this is NOT the case you stand a great chance of having your -submission rejected for violating Rule 17!
-NOTE: if you provide to mkiocccentry a different filename it will be
-copied to Makefile.
remarks (double quoted string)
MUST be "remarks.md", defined as REMARKS_FILENAME in
-soup/entry_util.h
-in the mkiocccentry repo, and
-is your remarks.md] file.
-See the
-FAQ on “remarks.md”
-for more information.NOTE: if this is NOT the case you stand a great chance of having your -submission rejected for violating Rule 17!
-NOTE: if you provide to mkiocccentry a different filename it will be
-copied to remarks.md.
The manifest array also optionally has one or more of the field:
extra_file (double quoted string)
NOTE: this MUST NOT match a mandatory filename (see above list) and
-chkentry will verify this for you; it is also an error if it the
-filenames are not unique. In these cases you stand a great risk of having
-your submission rejected for violating Rule 17! On
-the other hand, ONLY mkiocccentry will verify that the files exist and
-can be read; txzchk(1) will NOT do this for you as it only LISTS
-the tarball: it does NOT extract it. Even so, the Judges
-WILL extract the tarball and if a file listed in the manifest does not
-exist your submission will very likely be rejected for not being as
-documented!
The file also contains the following details:
+for more information. +In order of the file’s contents we describe each required field, below:
no_comment (double quoted string)
Makefile_override (boolean)
true if the user overrides any warnings about an incomplete/incorrect
-Makefile file, elsefalse`.Makefile file, else false.NOTE: if the Makefile file has no problems and this is true then
you stand a good chance of having your submission rejected for violating
@@ -1427,6 +1351,9 @@ for more information.
true if the first rule in the Makefile file is all, else false.NOTE: if the Makefile file does NOT have an all rule or it is not
+first and this boolean is true then you stand a good chance of having your
+submission rejected for violating Rule 17!
See the FAQ on “Makefile” for more information.
@@ -1434,6 +1361,10 @@ for more information.true if the Makefile file has an all rule, else false.NOTE: if the Makefile file does NOT have an all rule and this
+boolean is true, or if it does NOT have an all rule but
+first_rule_is_all is true then you stand a good chance of having your
+submission rejected for violating Rule 17!
See the FAQ on “Makefile” for more information.
@@ -1441,6 +1372,9 @@ for more information.true if the Makefile file has a clean rule, else false.NOTE: 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!
See the FAQ on “Makefile” for more information.
@@ -1448,6 +1382,9 @@ for more information.true if the Makefile file has a clobber rule, else false.NOTE: 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!
See the FAQ on “Makefile” for more information.
@@ -1455,6 +1392,9 @@ for more information.true if the Makefile file has a try rule, else false.NOTE: if the Makefile file does NOT have an try rule and this
+boolean is true then you stand a good chance of having your submission
+rejected for violating Rule 17!
See the FAQ on “Makefile” for more information.
@@ -1464,6 +1404,93 @@ for more information.NOTE: if this is true then this may NOT be submitted to the
contest! Please do NOT email the Judges your submission!
Next comes the manifest array which MUST have AT LEAST the following.
+The mkiocccentry(1) tool will write it in this order:
info_JSON (double quoted string)
MUST be ".info.json", defined as INFO_JSON_FILENAME in
+soup/entry_util.h
+in the mkiocccentry repo, and
+it is the .info.json file that mkiocccentry forms.
+See the
+FAQ on “.info.json”
+for more information.NOTE: if this is NOT the case you stand a great chance of having your +submission rejected for violating Rule 17!
auth_JSON (double quoted string)
MUST be ".auth.json", defined as AUTH_JSON_FILENAME in
+soup/entry_util.h
+in the mkiocccentry repo, and
+it is the .auth.json file that mkiocccentry forms.
+See the
+FAQ on “.auth.json”
+for more information.NOTE: if this is NOT the case you stand a great chance of having your +submission rejected for violating Rule 17!
c_src (double quoted string)
MUST be "prog.c", defined as PROG_C_FILENAME in
+soup/entry_util.h
+in the mkiocccentry repo, and
+is your submission source code.NOTE: if this is NOT the case you stand a great chance of having your +submission rejected for violating Rule 17!
+NOTE: if you provide to mkiocccentry a different filename it will be
+copied to prog.c.
Makefile (double quoted string)
MUST be "Makefile", defined as MAKEFILE_FILENAME in
+soup/entry_util.h
+in the mkiocccentry repo, and
+is your Makefile file.
+See the
+FAQ on “Makefile”
+for more information.NOTE: if this is NOT the case you stand a great chance of having your +submission rejected for violating Rule 17!
+NOTE: if you provide to mkiocccentry a different filename it will be
+copied to Makefile.
remarks (double quoted string)
MUST be "remarks.md", defined as REMARKS_FILENAME in
+soup/entry_util.h
+in the mkiocccentry repo, and
+is your remarks.md] file.
+See the
+FAQ on “remarks.md”
+for more information.NOTE: if this is NOT the case you stand a great chance of having your +submission rejected for violating Rule 17!
+NOTE: if you provide to mkiocccentry a different filename it will be
+copied to remarks.md.
The manifest array also OPTIONALLY has one or more of the field:
extra_file (double quoted string)
NOTE: this MUST NOT match a mandatory filename (see above list) and
+chkentry will verify this for you; it is ALSO an error if the
+filenames are not unique. In these cases you stand a great risk of having
+your submission rejected for violating Rule 17! On
+the other hand, ONLY mkiocccentry will verify that the files exist and
+can be read; txzchk(1) will NOT do this for you as it only LISTS
+the tarball: it does NOT extract it. Even so, the Judges
+WILL extract the tarball and if a file listed in the manifest does not
+exist your submission will very likely be rejected for not being as
+documented!
Finally, after the manifest array, the following fields MUST exist:
formed_timestamp (number)
.auth.json or .info.json) file was formed (see gettimeofday(2)).This file will be verified with the chkentry(1) tool and if there are any
-problems it is an error. If there is an error the tarball will NOT be
-formed by mkiocccentry; otherwise the txzchk(1) tool will be executed on the
-tarball.
mkiocccentry; otherwise the txzchk(1) tool will be executed on the tarball.
The Judges WILL use chkentry(1) on this file during the
judging process and if it does not pass your submission WILL BE rejected.
An obvious example where chkentry would fail to validate .info.json is if
@@ -1517,6 +1543,9 @@ filed is in the file. In these cases (and any others that must be established as
valid by chkentry) your submission would be rejected for violating Rule
17 and in particular because chkentry would not
validate the .info.json file.
If you wish to verify that your .info.json file is valid JSON then see the
+validating JSON documents in the
+FAQ on “author_handle.json”.