This typo ended up with a wrong command (in an echo telling what to do
with modern systems - there was a space between the / and what
translates to mullender.alt).
New FAQ on what the minimum versions are (this should be updated every
contest or updated to refer to the result of the issue I opened at the
other repo - post IOCCC28) for each tool.
Added details about the new (soon to be released) version of the tools
that now search under $PATH.
This commit updated the FAQ, the guidelines and the quick start guide.
As a reminder you do NOT need to use the upcoming release of the tools
and not doing so will not invalidate any of your submissions as it is
based on a minimum version, not an exact version.
The new options to mkiocccentry are -x to delete the submission
directory if if it already exists and the -u uuidfile and -U uuidstr
options.
NOTE: it is NOT required to update the tools for this IOCCC and you do
NOT have to read the updated guidelines to follow the guidelines for
this IOCCC.
The warnings highbit_warning, wordbuf_warning and first_rule_is_all are
no longer used and will be removed for IOCCC29 and beyond. Thus the
tools no longer care about them.
There were other additions to mkiocccentry like the useful -u uuid
option to read in your UUID from a file so you don't have to copy paste
it per submission. Although that would be useful in the guidelines to
do that would require the version update which is problematic in an open
contest. Thus it can be added for IOCCC29 after this one.
IMPORTANT NOTE: you do NOT have to update the tools unless you want to!
The submit server will no longer flag submissions with those booleans
set to true and when the judges run the tools they won't flag them
either. So if you are just fine with what you're doing, and if the
recent fixes do not have an impact on your work you are perfectly fine
using the current versions you have as version requirements are no
longer a single value but a range. Of course you might still wish to
check that you weren't flagged for some other issue but you no longer
have to worry about those three warnings.
After my final commit and merge in mkiocccentry pre-release a pull did
not get the tag. I had to do:
git fetch --all --tags
instead. So to make sure everyone has the correct tag I have added this
to the FAQ (replacing the 'git fetch' by itself).
Regenerated faq.html.
Renamed some FAQs (typos and/or other things).
Fix a number of typos in various files (including markdown format
errors).
Rules and guidelines should be relatively good although as there is a
lot to get through and not much time left maybe I missed something (I
also kind of cheated doing the final checks with the guidelines rather
than going through them all again).
The next/try.sh and next/try.alt.sh scripts have had updates as well and
the next/Makefile.example was modified too.
The index.html page now has an anchor for goals of the contest so that
the goals in the rules could simply link to it in index.html.
Although some text had to be added (and some corrected) a reasonable
amount of text was also removed as it was elsewhere or was extraneous in
some way.
The file next/remarks.example.md has been renamed next/remarks.md.
From this file a new html file, next/remarks.html, is generated. The
first part of the instructions say to download the markdown file and
copy it to your submission's directory.
The rest is mostly the same but this way one can look at the website and
also be aware of the file (and it'll be linked to in the rules and/or
guidelines as well).
This required updating bin/gen-top-html.sh an bin/md2html.cfg and the
Makefile was updated too (with a typo fix also).
Without the @ before the comments (which are informative and to be
removed by contestants) it shows the comments when running 'make'. Even
worse is without doing $${CHMOD} it would not evaluate to anything so it
looked bizarre.
Thus the @ was added to the comments like the rest of the file (comments
in rules).
In the case of html void elements (not having the trailing '/') I have
merged the 'no thank you' and 'instead use'. At the same time I fixed a
typo where one 'no thank you' referred to the wrong 'instead use' (in
particular it was '<hr/>' -> '<br>' rather than '<hr/>' -> '<hr>').
The three important files, next/{register,submit,pw-change}.{md,html}
no longer have images in them (besides the logo at the top of the image
which has nothing to do with registering, submitting or changing
passwords); instead the text in the images are actual text (in some
cases, just the relevant parts and in others all or almost all).
The png/register.* and png/submit.* images were removed.
Some images are no longer used but they still exist here for the time
being. Text is used instead though based on some discussion text might
have to change.
Adjusted alt text of some images a bit.
A more thorough look at the way these updates look must still be done.
The screenshots are more recent (including some new ones).
The welcome email images have not been updated as some things have to be
answered before that can be done.
The current files were renamed to be shorter as well.
A choice was made a while back to use website and not web site so
changed all new references of 'web site' to 'website':
sgit -e 's/web site/website/g' '*.md' '*.html'
As this also occurs in the FAQ and there were some minor mods (just
textual, including some fun, not a new FAQ) these are included too.
This addresses most (if not all) of the recent changes to chkentry(1)
though a more thorough check will be made later after the mkiocccentry
code freeze.
The minimum version for cvt-submission of chkentry is 1.1.5, the most
recent version.
Technically the previous version would work too but 1.1.5 renamed some
variables to make it more consistent with the mkiocccentry terminology
so it's better to have 1.1.5.
Not only were some commands (multiple cp commands) referencing the wrong
file but the move of template/try.*sh to next/ caused an error.
Additionally the chkentry(1) tool no longer has the two file arg syntax
but instead just one arg, the directory.
I was able to test up to the creation of the index.html file but I got
an error. I believe this is due to something else not being set up (I
did have to temporarily modify .top to test this out - as one example -
but I surely missed some things).
I have thought of and plugged additional holes in the process (same with
txzchk but that's beyond the scope of the document) so the FAQ was
updated for this.
Also because it is a long list of steps there is now a TL;DR part above
it.
There was an order issue in the list as well.
The FAQ stated (due to a mistake in the issue in the mkiocccentry repo)
that the submission directory (under workdir) has the timestamp in it
but that is not true. Instead the tarball filename has the timestamp.
Typo fix in guidelines.
The list now details every step taken and the question was also changed
to help make it easier to find (one need not read this but if they want
to it is now in the correct order).
It is highly recommended that you run the tool from either the repo
directory itself (making sure you have the most up to date version of
course) or make sure you have installed it (also making sure you have
the most recent version). Not doing this will cause issues with checks
and in the case of out of date versions the submission would be rejected
due to violating rule 17. One can specify the options to mkiocccentry
for the tools required but if you forget or don't have the most up to
date version you will very likely run into problems.
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.
Since only try.sh and try.alt.sh files may be executable in submission
tarballs, the Makefile.example now notes this and shows how one can
adjust this if they need to. This is also in the guidelines, rules and
FAQ but those cannot be committed yet.
The FAQ and guidelines need to be improved in this regard but the quick
start guide is now consistent with the syntax found in mkiocccentry
(which is noted in the FAQ).
The next/remarks.example.md filename is kind of a misnomer but it was
named this way to match Makefile.example. It has brief instructions
along with a link to the FAQ about what one should put in their
remarks.md file (and the FAQ links to the new file as a starting point
as it has instructions).
The markdown guidelines were updated to note that if one does use
sections in remarks.md file they should start out at heading level 3
(###) and for each subsection increment it by one (up to level 6).
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 includes typos, fixing terms (according to the new terminology used
by the IOCCC) and various other types of fixes.
Although I have gone through the entire file more does need to be done
to make sure it all reads okay and that all links are correct.
Reworded some things.
Brought up how the IOCCC has moved away from spoilers.
As part of the section on the Makefile I have additionally added to the
Makefile.example a 'try.alt' rule in the case of someone having
alternate code. It is not required, of course.
Deleted feature request as that has to do with the website which is more
or less the same as an enhancement (now a website enhancement).
Improved/fixed labels.
The FAQ, guidelines and rules have been updated to reflect recent
discussions and modifications to the maximum number of files.
A new FAQ entry has been added. The guidelines talk about including
extra tarballs and rule 17 has been updated as well. Some of this was
copied directly from discussion with Landon.
Some minor other fixes were made in the guidelines and rules (mostly
wording).
Winning entries include var.mk and that sets the variables CLANG and
GCC. Without this the findstring check in the Makefile (on ${CC})
matches the first one and uses the wrong warning options.
This commit resolves this problem.
This includes the include files inc/guidelines.pending.hdr and
inc/rules.pending.hdr.
Rebuilt html files as well.
This does not include the other pending fixes and it does not include
the updates about mkiocccentry now allowing subdirectories. That'll come
in another commit either later today or if not then hopefully this
weekend.
The status showed 'The IOCCC is not yet open' to indicate it is in
pending status. But it would be better to match the actual status
itself especially as the status.html file explains pending status, not
'not yet open'. At a quick glance it is easy to miss especially for
those of us who have worked on the repo for a long time and in
particular those who worked on the status.html file a lot.
This updated files in inc/, bin/ and next/ but I cheated and used sgit
to do this. I then rebuilt the html files. A previous minor grammar
problem in rules was fixed as well.
The menu in all html pages for the FAQ was fixed to link to the step 0
(of how to enter the contest) and also it was renamed ('Enter the
IOCCC').
I also went through the most important sections of the FAQ (how to
enter and the mkiocccentry related questions) and checked the
register.html, pw-change.html and submit.html pages. It is possible I
have missed something but I think it's in pretty good shape nonetheless.
Some broken links were fixed in some of the files like next/index.html,
next/pw-change.html, next/index.html and status.html.
Some wrong images were used in next/submit.html (or at least referred to
wrong if not wrong image).
Useful update to FAQ about the answers file in mkiocccentry.
There might have been other things.
This might be all that is needed for next/ wrt the register/change
password/submit but it's possible something has slipped through.
Make lines beginning (in markdown files) 'BTW' bold. Rebuilt the
respective html pages.
Slight update to abstract in two entries (1985/shapiro and
1994/shapiro). One is changing 'defines' to '#defines' and the other was
a typo fix.
Fixed make gen_next: added missing new files.
Various fixes in next/register.html (typos and other things).
Typo/format fixes were made in next/pw-change.html, next/register.html,
next/submit.html.
The screenshot for register step 6 (welcome email) was updated to
reflect a typo I had reported (after it was fixed). The html file still
has to be checked for rendering and that will be done soon.
1985/sicherman now has an abstract of: rot13 w/strange #defines that
create comment headers etc.
I note that this is longer than what I believe was what was desired.
However it is the same length as it was before, only that it now has #defines
instead of #defs.
1988/phillipps has: 12 Days of Christmas recursive main() calls w/tables
instead of 'days of christmas heavily main() calling with tables'. The
rewording was necessary to keep the length the same but to be more
clear. I just remembered however, that to fix it for modern systems, a
new function had to be added which is the recursive function, so it no
longer is strictly true that it it is recursive main() calls. It might
be better to keep it main(), however, as that was the original award.
The difference here is that it is now a bit more correct in the output.