Prepare for the winners of **IOCCC28**. > However these are not the 2024 droids you are looking for. :-) The HTML menu (both JavaScript and non-JavaScript) has been updated. The `Status -> Rules and guidelines' have been replaced with two separate menus `Status -> IOCCC rules` and `Status -> IOCCC guidelines`. Added a new top level `social.html` page: built from a new `social.md`. Sorted rules for building specific web pages in the top level `Makefile`. Added `make social` to make the `social.html` page from `social.md`. The `bin/gen-top-html.sh` now is able to process a argument of **social** to process the new top level `social.html` page. Changed `bin/gen-top-html.sh` VERSION from "2.0.0 2025-03-13" to "2.0.1 2025-07-25". Below `About -> Home page` a new `About -> IOCCC social media` menu item as added. Because the menu change touched every HTML file, we changed the general copyright date range for HTML files from "1984-2024" to "1984-2025" due to the extensive changes made for **IOCCC28**. Those markdown files that were modified in 2025 had their copyright date range also changed from "1984-2024" to "1984-2025". Rebuilt tarballs and sitemap due to the extensive HTML rebuilding. Ran `make update` to perform the above.
199 lines
7.5 KiB
Markdown
199 lines
7.5 KiB
Markdown
Use mkiocccentry to rebuild# How to upload your submission to the IOCCC
|
|
|
|
**IMPORTANT NOTE**: The [IOCCC submit server](https://submit.ioccc.org)
|
|
is only ready for submissions
|
|
**ONLY WHEN THE CONTEST IS [open](../faq.html#open)**.
|
|
|
|
See [current status of the IOCCC](../status.html) for details on the contest status.
|
|
**IMPORTANT NOTE**: When the contest is [closed](../faq.html#closed), the
|
|
[IOCCC submit server](https://submit.ioccc.org)
|
|
might be offline and unreachable as a website.
|
|
|
|
To login, open [https://submit.ioccc.org](https://submit.ioccc.org)
|
|
in your browser. Fill in your login credentials and click "Login".
|
|
|
|
**NOTE**: if the contest is NOT open you will see something like this instead:
|
|
|
|
> The contest is NOT yet open for submissions.<br>
|
|
> Sorry (tm Canada 🇨🇦), the IOCCC is not yet open.<br>
|
|
> The IOCCC is scheduled to open at 2025-03-05 23:19:17.131107 UTC.<br>
|
|
>
|
|
> Message(s):<br>
|
|
> The IOCCC is not yet open for submissions.
|
|
|
|
Assuming it is open, and if you've not logged in before, you'll have to change
|
|
your password first. See the file [pw-change.html](pw-change.html) for more
|
|
details. After that you will have to log back in.
|
|
|
|
Once you've logged in, you will see submit slots. Each slot is for one
|
|
submission so if you update a submission, make sure you choose the right one so
|
|
you do not replace the wrong one!
|
|
|
|
It will show text and radio buttons for each row (up to 10 numbered `0` through
|
|
`9`). Here is a text version of the table showing what the first few lines would
|
|
look like:
|
|
|
|
```
|
|
| Select | Slot Information |
|
|
| -------| --------------------
|
|
| 0: [●] | Status: slot empty |
|
|
| 1: [ ] | Status: slot empty |
|
|
| 1: [ ] | Status: slot empty |
|
|
```
|
|
|
|
The `●` is a ticked radio button whereas the `[ ]` is an unticked. Tick that to
|
|
select that slot.
|
|
|
|
Then further down the page you'll see the text along the lines
|
|
of:
|
|
|
|
> IMPORTANT: Upload only XZ compressed tarballs whose filename is:
|
|
>
|
|
> `submit.00000000-0000-4000-0000-000000000000-SLOT.TIMESTAMP.txz`
|
|
>
|
|
> where `SLOT` is a slot number, and `TIMESTAMP` is the build time as a [Unix
|
|
timestamp](https://unixtime.org/).
|
|
>
|
|
> We highly recommend that you use `mkiocccentry(1)` to create your submit file as
|
|
it must pass the `txzchk(1)` sanity checks, and when the uncompressed tarball is
|
|
untarred, the resulting directory must pass `chkentry(1)`.
|
|
|
|
**NOTE**: the `00000000-0000-4000-0000-000000000000` is your UUID. **MAKE SURE
|
|
YOU CHANGE IT TO YOUR UUID**!
|
|
|
|
**NOTE**: the `SLOT` and `TIMESTAMP` **in the filename** are generated based on
|
|
your input in `mkiocccentry(1)`.
|
|
|
|
Now select the slot you need and then scroll down and click the link that says:
|
|
`Choose File`. A file select option in your browser should open up. Browse for
|
|
your **XZ compressed tarball** that was **generated by `mkiocccentry(1)`** and
|
|
then click whatever button your browser has to upload the file.
|
|
|
|
You can see the filename of your **XZ compressed tarball` that was **generated
|
|
by `mkiocccentry(1)`** you're about to upload if you mouseover it and wait
|
|
a moment; if you have made a mistake in your file selection, you may click the
|
|
link that says `Choose File` again. Fix your mistake by choosing the correct
|
|
file in the file selection pop-up in your browser.
|
|
|
|
Once you're certain you have selected the correct file, click "Submit", below
|
|
the file selection step.
|
|
|
|
When it's uploaded it should say something like:
|
|
|
|
> • Uploaded file: submit.00000000-0000-4000-0000-000000000000-5.1740838915.txz
|
|
|
|
And in the slot it will give you important details like:
|
|
|
|
- the status of the submission
|
|
- the filename, which will be in the correct format, assuming you used
|
|
`mkiocccentry(1)` which is **HIGHLY** recommended so that you do not break [Rule
|
|
17](rules.html#rule17)!
|
|
- the file length, which `txzchk(1)` will also verify (the file itself and the
|
|
tarball listing).
|
|
- the upload date.
|
|
- the SHA256 hash of the file.
|
|
|
|
Again the `00000000-0000-4000-0000-000000000000` is your UUID, the `SLOT` is the
|
|
slot number and `TIMESTAMP` is the build time as a [Unix
|
|
timestamp](https://unixtime.org/).
|
|
|
|
Now if you're done, log out.
|
|
|
|
If, on the other hand, you upload a file that is too big you will see something like:
|
|
|
|
> The file size of N exceeds the maximum size of 3999971.
|
|
|
|
And if you try uploading an empty file you'll instead see:
|
|
|
|
> The must not be empty.
|
|
|
|
And if you see something like:
|
|
|
|
> Filename for slot: `5` must match this regular expression: `^submit\.00000000-0000-4000-0000-000000000000-5\.[1-9][0-9]{9,}\.txz`
|
|
|
|
You uploaded the wrong filename into a slot.
|
|
|
|
For example, for the user `00000000-0000-4000-0000-000000000000`, slot `5`, a valid filename to upload would be:
|
|
|
|
> submit.00000000-0000-4000-0000-000000000000-5.1740838915.txz
|
|
|
|
where `1740838915` is a timestamp created by the `mkiocccentry(1)` tool.
|
|
|
|
You **MUST** upload a properly named XZ compressed tarball, **MAKING SURE** you
|
|
package it with `mkiocccentry`!
|
|
|
|
If, however, the slot status shows:
|
|
|
|
> **Status: file successfully uploaded into slot.**
|
|
|
|
Then you are successfully uploaded a file into the slot.
|
|
|
|
At this point you may upload another submission file into a different slot, or you're done, log out.
|
|
|
|
**Please note:** The status page will **NOT** auto-refresh. After you are uploaded a file into a slot, **DO NOT RELOAD**
|
|
the page as this may cause your browser to needlessly reload the same file to the same slot.
|
|
|
|
After you fir finished uploading submissions into slots, please logout.
|
|
To see any status updates, you should logout and log back in later.
|
|
|
|
|
|
## Checking on the status of your submission
|
|
|
|
You may check on the status of your submission later on, after you logout by logging back in an looking at the slot status.
|
|
|
|
**Please note:** The status page will **NOT** auto-refresh.
|
|
|
|
When the system begins to process your file (which could be an hour or two later), you might see:
|
|
|
|
> **Status: file fetched. The format test is pending.**
|
|
|
|
After the format test is complete, if you see an error such as:
|
|
|
|
> **Status: submit file failed the txzchk test! Use mkiocccentry to rebuild and resubmit to this slot.**
|
|
|
|
Or:
|
|
|
|
> **Status: submit file failed the chkentry test! Use mkiocccentry to rebuild and resubmit to this slot.**
|
|
|
|
... or **ANY** other error then you **MUST FIX** your submission, repackage your
|
|
tarball with `mkiocccentry` and upload to the same slot again! If you do not fix
|
|
this your submission **WILL BE REJECTED** for violating [Rule
|
|
17](rules.html#rule17)!
|
|
|
|
If the format test went well, then you will see:
|
|
|
|
> **Status: submit file received by the IOCCC judges. Passed both txzchk and chkentry tests.**
|
|
|
|
**IMPORTANT**: this does **NOT** mean that your submission does not violate the
|
|
rules or that everything is OK once the tarball is extracted; it simply means
|
|
the tests performed by the tools passed. If you find a flaw in a tool and
|
|
abuse it and the tests pass then you stand a significant chance of having your
|
|
submission rejected for violating [Rule 17](rules.html#rule17), even if the
|
|
tests passed.
|
|
|
|
For details on `txzchk`, see the
|
|
FAQ on "[txzchk](../faq.html#txzchk)".
|
|
|
|
For details on `chkentry`, see the
|
|
FAQ on "[chkentry](../faq.html#chkentry)".
|
|
|
|
If you need more information on the two JSON files, see
|
|
FAQ on the [".info.json file](../faq.html#info_json)"
|
|
and the
|
|
FAQ on the "[.auth.json file](../faq.html#auth_json)".
|
|
|
|
|
|
<!--
|
|
|
|
Copyright © 1984-2025 by Landon Curt Noll. All Rights Reserved.
|
|
|
|
You are free to share and adapt this file under the terms of this license:
|
|
|
|
Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
|
|
|
|
For more information, see:
|
|
|
|
https://creativecommons.org/licenses/by-sa/4.0/
|
|
|
|
-->
|