The IOCCC28 will now open on **2025-03-05 23:19:17.131107 UTC**
and enter the judging state on **2025-06-05 04:03:02.010099 UTC**.
Updated sitemap, added news for 2025-02-12, and updated the status.
Performed `make www gen_status gen_sitemap timestamp` on macOS to complete the above.
The IOCCC now has a [Discord server](https://discord.gg/2hVYnv83DD)!
Click the link to join the [IOCCC Discord server](https://discord.gg/2hVYnv83DD).
Fans of the IOCCC, hopeful **IOCCC28** contestants, and past winners of the IOCCC
are all encouraged to stop by and say hello.
Based on user input and suggestions, we have been working on some new
functionality for the [mkiocccentry tool set](faq.html#mkiocccentry).
In order to complete and fully test this new functionality, we need
additional time. Therefore the **IOCCC28 open** date as been **moved
forward for 19 days**. Moreover, and also by request, the contest will
remain **open for an additional month**.
The [40th anniversary of the IOCCC](faq.html#ioccc_start), which started
on **2024-12-29 23:58:13.213455 UTC**, is now scheduled to be **open**
from **2025-02-19 23:19:17.130705 UTC** to **2025-05-19 23:29:31.374143
UTC**. We will update the [IOCCC rules](next/rules.html) and
[IOCCC guidelines](next/guidelines.html) accordingly, before the contest opens.
Fixed link in `inc/guidelines.pending.hdr`.
Improved link in `inc/rules.open.hdr`.
Updated timestamps and sitemap with `make gen_status gen_sitemap timestamp`.
Changed `bin/status2html.sh` VERSION from "1.4.3 2024-08-05"
to "1.4.4 2024-12-29".
Performed `make quick_www` on macOS to complete the above.
Added a new `next/register.html` that is required by the mailing list server.
The `next/register.md` still contains a big **XXX - put more data here - XXX**
as a placeholder for information about the mailing list registration process.
Improved the status text for `faq.html`, `next/index.html` and `status.html`
via `faq.md`, `next/README.md` and `status.md`. We also removed the
excessive links to IOCCC and instead use the term "contest" where applicable.
IMPORTANT CHANGE: Registration be available when the contest is both pending and open.
We made a number of changes to `faq.md`, `next/README.md` in an attempt to
reflect the above.
Changed `bin/gen-status.sh` VERSION from "1.7 2024-09-23"
to "1.8 2024-11-23".
Changed `bin/gen-top-html.sh` VERSION from "1.4.9 2024-08-11"
to "1.4.10 2024-11-23".
Perform `make www` and `make gen_status` to perform the above and test under macOS.
TODO: Change **XXX - put more data here - XXX** in `next/register.md` for information
about how to join the mailing list.
For the improvements to the script, besides a typo, a link to the FAQ
(for submitting entries) has been added and a link to the GitHub issues
page (the new issue page) has been added in the case where an unknown
status appears in the status.json file.
The news update is that more progress has been made in that one of the
longer files to check for invalid links is done (thanks file) and that
two long files are left but that instead of looking at those two first
the other html files will be looked at first as it's quite possible that
both will have to be updated in some way or another as the other files
are being edited. Indeed this has happened numerous times already. This
way will save time and prevent having to look at those files a second
time. It also notes that some of the top level html files have also been
reviewed (see below) and a link was fixed (added a <div id="news"> for a
link that was linked to). I am fairly certain that I also fixed some
formatting problems and some links were fixed as well.
The status.md/status.html file has been updated with some links added,
more div blocks (for each section describing the status.json file),
which are used, slight formatting updates and possibly some other things
as well. As for some of the links we might say that it's 'statuses all
the way down' :-)
With this commit I am happy to report that some other top level files
have also been verified for invalid links:
judges.html
news.html
status.html
As the news.html file will be updated it is entirely possible that some
fixes will have to be made but the links up to and including 08 June
2024 (unless more changes are made today of course) need not be checked
again.
More top level html files (which include those in next/ and other
subdirectories that are not of the entries) also have to be checked but
these should also go relatively quickly.
Regenerated status.json file as the news has been updated.
The `bin/gen-status.sh` will report that the given markdown file
(`next/rules.md` or `next/guidelines.md`) is the source of the
generated HTML file. This is so that the HTML produced by either
`make gen_status` or `make gen_top_html` will generated the same
HTML comments. Moreover the comments in `next/rules.html` and
`next/guidelines.html` refer to the markdown file as the source of
the information instead of a tool such as `bin/gen-status.sh`.
Changed `bin/gen-status.sh` VERSION from "1.5.1 2024-04-28"
to "1.5.2 2024-04-30".
Added news for 2024-04-30 into `news.md`.
Make news dates "less shouty".
Ran `make www` to perform the above.
Added `bin/find-missing-links.sh` tool to check for
markdown links to missing local files.
Regarding the missing link tool:
```
Here be extended regular expression magic dragons! :-)
```
Added `make find_missing_links` to the top level Makefile.
Added `make find_missing_links` to `make www` and `make quick_www`.
Ran `make www` to perform the above.
TODO: Fix markdown links to missing local files.
Added "2024-04-20" news update.
Fixed format for "2023-05-22" news.
Fixed bad links to `judges.html`.
Add "Jump to: top" near the bottom.
The `make gen_top_html` no longer builds `next/rules.html`
nor `next/guidelines.html`. This is being done by
the `bin/gen-status.sh` tool and `make gen_status`.
Moved `make gen_top_html` after `make gen_status` in the top level
Makefile rules for `make www` and `make quick_www` because
`bin/gen-status.sh` uses the modification date of `news.html` (that
make gen_top_html might modify) when forming `status.json`.
Added FAQ 6.12 for "What is Mastodon and why does IOCCC use it?".
Simplified `contact.html` mastodon info to refer the above FAQ
for further mastodon information.
Changed `bin/gen-top-html.sh` VERSION from "1.4.2 2024-04-21"
to "1.4.3 2024-04-21".
The `bin/gen-status.sh` tool will build `next/rules.html` and/or
`next/guidelines.html` if they are missing or empty.
Changed `bin/gen-status.sh` VERSION from "1.3 2024-04-14"
to "1.4 2024-04-21".
Run `make gen_top_html gen_status` to perform the above.
The contents of `status.json` is now indented when
forming `status.html.
Changed `bin/status2html.sh` VERSION from to "1.3.1 2024-04-16"
to "1.4 2024-04-18".
Run `make gen_status` to perform the above.
We added a space between the markdown triple code mark
and language that was enclosed in HTML comments.
So a line of the form:
````
```<!---c--->
````
became:
````
``` <!---c--->
````
This was done to **help** some code see that the HTML comment
string was not a markdown code specifier. Not all code
understands this after this changed. For example, `pandoc(1)`
still forms HTML classes of the form "<!---c-->"
when it encounters the above mentioned change.
We also fixed a problem with `2019/dogon/README.md` regarding
a markdown code block.
We also fixed a problem with `2020/yang/README.md` regarding
a markdown code block.
When language is specified in a markdown code block such as:
````
```c
printf("Hello, world!\n");
```
````
is used, the resulting HTML as produced by `pandoc(1)` combined
with our revised `ioccc.css` is not intent the code block well.
A temporary "_hack-a-round_" is to turn the "markdown code language
specifier" into an HTML comment. For example:
````
```<!---c-->
printf("Hello, world!\n");
```
````
This commits turns off existing markdown code language specifiers
for now, while preserving our ability to restore them in the future
when a better "_hack-a-round_" to the "markdown code language
specifier" problem is found.
The HTML impact if this "_hack-a-round_" is to produce HTML that
looks like this:
```
<pre class="<!---c-->"><code> .. </code></pre>
```
We might be able to create a complex set of classes for each markdown
code language (there won't be very many) in `ioccc.css`, or we might
find a more general CSS (or maybe `pandoc(1)`?) solution.
For now, this hack-a-round will have to do.
All code blocks in markdown have been intended by at least 4 spaces.
We add `--tab-stop=8` to all `pandoc(1)` executions in order to set
a better tab stop indentation, especially for tab intended code blocks.
Changed `bin/pandoc-wrapper.sh` VERSION from "1.5.3 2024-03-26"
to "1.6 2024-03-31".
Fixed `1991/brnstnd/sorta.README.md` so that the sorta code
is code blocks.
Removed unneeded paragraph group in copyright in `inc/footer.default.html`.
Fixed excess whitespace after list Author on entry `index.html` page.
Changed `bin/output-index-author.sh` VERSION from "1.5.2 2024-03-26"
to "1.6 2024-03-31".
Performed `make www` to perform the above and test under macOS.
TODO: Fix the problem of the initial line of code being extra intended.
TODO: Fix excess whitespace around code that is inline.
We add `--tab-stop=8` to all `pandoc(1)` executions in order to set
a better tab stop indentation, especially for tab intended code blocks.
Changed `bin/pandoc-wrapper.sh` VERSION "1.5.3 2024-03-26"
to "1.6 2024-03-31".
Fixed `1991/brnstnd/sorta.README.md` so that the sorta code
is code blocks.
Removed unneeded paragraph group in copyright in `inc/footer.default.html`.
Performed `make www` to perform the above and test under macOS.
Renamed `ioccc.ico` to `favicon.ico`.
Correctly added use of `favicon.ico` to all constructed HTML headers.
Fixed the smart quote in HTML elements problem.
Moved HTML "DO NOT EDIT" comments down below at the bottom of the
HTML phase 1 section. According to to the Nu Html Checker, a charset
attribute on a meta element found after the first 1024 bytes.
Changed `bin/md2html.sh` VERSION from "1.1.3 2024-03-28"
to "1.2 2024-03-30".
Improved `bin/gen-status.sh` to adjust the "status_update" value
only when the "contest_status" is changed.
Performed a `make www` to perform and test the above under macOS.
Fixed links to year level compressed tarballs.
Added an "Inventory" of year-level compressed tarballs to the
generated `years.html` web page.
In `bin/gen-years.sh` changed VERSION from "1.0.3 2024-03-26"
to "1.1 2024-03-30".
In `bin/output-year-index.sh` changed VERSION from "1.1.2 2024-03-26"
to "1.2 2024-03-30".
Added `inc/topnav.empty.html` for an empty narrow topnav bar.
Changed references from "topnav=." to "topnav=empty" in `inc/md2html.cfg`.
Removed top level `ioccc.tar.bz2` compressed tarball. NOTE: Sorry
(tm Canada 🇨🇦) to remove the top level `ioccc.tar.bz2` file. We
will look into [Git Large File Storage [Git-LFS](https://git-lfs.com/).
If Git-LFS works well and does not have undesirable side effects,
we will consider restoring `ioccc.tar.bz2`.
Removed top level Makefile rules for "untar_all_tarball" and
"form_all_tarball". Removed `bin/tar-all.sh`.
Added `make gen_status` to `make quick_www` and `make www` in the
top level `Makefile`.
Ran `make www` to perform the above and test under macOS.
The inc/footer.default.html now has a common Copyright and CC BY-SA
4.0 License section for all generated HTML files.
All markdown files have a similar Copyright and CC
at the bottom in the form of an HTML comment.
The `bin/pandoc-wrapper.sh` tool will verify that the ssytem
has a recent enough version of `pandoc(1)`.
We explain why we insist on `pandoc(1)`. version >= 3.1.12.2
in comments where the $PANDOC_MIN_VERSION is set.
Added `--wrap=preserve` as a default argument to `pandoc(1)`.
While this change will impact every HTML file generated,
we believe this will improve the ability of someone to look
at the generated HTML and correlate with the original markdown.
Changed `bin/pandoc-wrapper.sh` VERSION from "1.4.2 2024-03-17"
to "1.4.3 2024-03-18".
Performed `make www` to achieve all of the above and to generate
HTML using the new `--wrap=preserve` `pandoc(1)` mode.
Changed `bin/gen-status.sh` VERSION from "1.0 2024-03-09"
to "1.1 2024-03-10".
Changed `bin/status2html.sh` VERSION from "1.0 2024-03-09"
to "1.1 2024-03-10".
Improved for explanatory text added near the top of the
`index.html` page by `bin/status2html.sh`.
While `bin/status2html.sh` in intended as tool that is internally
called only, we allowed for a 0 arg use for those who are simply
curious as to what it does.
Tested various _contest_status_ values with `bin/gen-status.sh`.
This resulted in a forced change of _status_update_ in `status.json`.
Removed extraneous whitespace from `bin/output-index-author.sh`.
Performed `make www` to finalize all of the above, although a
`make gen_status` followed by `make gen_sitemap` would have
been sufficient.
Changed the model of `status.json` model.
Updated `status.json` IOCCC_status_version from "0.2 2023-05-22"
to "1.0 2024-03-09".
Updated FAQ 2.6, improving how IOCCC entries announced.
Moved `bin/ioccc-status.sh` to `tmp/ioccc-status.sh`
now that we have a new status.json model for
which this tool no longer fits (sorry tm Canada 🇨🇦).
Added `status.md` markdown to explain the `status.json` model.
Added `status.html` to both display the contents of `status.json`
and render the contents of `status.md` as HTML.
Added `bin/status2html.sh` to convert `status.json`
into HTML for the `status.html` file.
Added `bin/gen-status.sh` to form `status.json`
and `status.html` files.
Added `make gen_status` to top level Makefile.
Performed `make www` to complete all of the above.