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.
Typo fixes and change 'download entry source' to 'download entry' as
it's the tarball, not the source itself.
Rebuilt .entry.json and index.html files for all entries.
Fix bogus USAGE debug messages in `bin/md2html.sh`.
Allow "about to run" debug messages for `-v 3` and higher
for `bin/gen-other-html.sh`.
In `bin/md2html.sh` changed VERSION from "1.1.2 2024-03-26"
to "1.1.3 2024-03-28".
In `bin/gen-other-html.sh` changed VERSION from "1.0.2 2024-03-26"
to "1.0.3 2024-03-28".
Tested the above using `make www` under Linux and macOS.
It turns out that `sed -i ''` is not portable. **sigh** Replaced use of
`sed -i ''` with other portable commands in `bin/tar-year.sh`.
Changed `bin/tar-entry.sh` VERSION from "1.3.4 2024-03-27"
to "1.3.5 2024-03-28".
Changed `bin/tar-year.sh` VERSION from "1.2 2024-03-27"
to "1.2.1 2024-03-28".
Changed `bin/gen-year-index.sh` VERSION from "1.0.4 2024-03-26"
to "1.0.5 2024-03-28".
Changed `bin/sort.gitignore.sh` VERSION from "1.1.3 2024-03-26"
to "1.1.4 2024-03-28".
Added new `bin/untar-year.sh` bin tool.
Tested `make untar_year_tarball` under Linux.
Added `make sort_gitignore` to sort entry `.gitignore` files.
The `make quick_www` and `make www` actions perform `make sort_gitignore`.
Added notes to `bin/README.md` (and thus to `bin/index.html` with
recommendations of top level Makefile actions that use selected bin
tools over all entries or years).
Tested `make www form_entry_tarball form_year_tarball untar_entry_tarball
untar_year_tarball` under Linux.
TODO: Retest `make www form_entry_tarball form_year_tarball
untar_entry_tarball untar_year_tarball` under macOS.
Eliminated the need for the `.tar.tstamp` files. It became intractable
to produce a tarball that was byte-for-byte identical to a tarball
on another platform. We further simplified the process used by the
`bin/tar-year.sh` tool to no longer need `.tar.tstamp` files.
Removed `.tar.tstamp` files and updated the manifest.
Sorry (tm Canada 🇨🇦) for the "flip-flop".
The `bin/tar-year.sh` tool now uses a similar algorithm to how
`bin/tar-entry.sh` determines if a compressed tarball needs to be
rebuilt.
Changed `bin/tar-entry.sh` VERSION from "1.3.3 2024-03-27"
to "1.3.4 2024-03-27".
Changed `bin/tar-year.sh` VERSION from "1.1.3 2024-03-27"
to "1.2 2024-03-27".
Performed `make www` and `make form_entry_tarball`
and `make form_year_tarball` to complete the above
actions and test these changes under macOS.
TODO: Test the `bin/tar-year.sh` tool under Linux.
TODO: Address issues with building the top level `ioccc.tar.bz2`
and the `bin/tar-all.sh` tool and the `make form_all_tarball` rule.
NOTE: The `bin/tar-all.sh` tool and the `make form_all_tarball` rule
and the `make tar` should **NOT** be used at this time.
Use of `sort(1)` with -u appears to be problematic.
As an example, using `sort -d -u` for both "c11" and "c++11"
will produce only "c11". This where we do not strictly
need to do so, we do not use -u with `sort(1)`.
With the above, fixed `bin/chk-entry.sh -v 3 2018/burton2`
under Linux.
Changed `bin/chk-entry.sh` VERSION from "1.1.4 2024-03-26"
to "1.1.5 2024-03-27".
Changed `bin/gen-sitemap.sh` VERSION from "1.3.3 2024-03-26"
to "1.3.4 2024-03-27".
Changed `bin/output-index-inventory.sh` VERSION from "1.2.3 2024-03-26"
to "1.2.4 2024-03-27".
Changed `bin/tar-all.sh` VERSION from "1.1.2 2024-03-26"
to "1.1.3 2024-03-27".
Changed `bin/tar-year.sh` VERSION from "1.1.2 2024-03-26"
to "1.1.3 2024-03-27".
Ran `make www` to test the above. The `index.html` for the
`2018/burton2` entry was updated.
Ran `make form_entry_tarball` to test the above. Some recently
updated entries plus the `2018/burton2` entry was updated.
TODO: Test the results under Linux.
TODO: Update `bin/tar-year.sh`. Update year level compressed tarballs.
TODO: Update `bin/tar-all.sh`. Update top level compressed tarball.
TODO: Write `bin/untar-year.sh` and `bin/untar-all.sh`.
We export shell variables where needed.
We print debug messages of shell variables in the order they were
exported or declared, except for the USAGE shell variable, for those
shell variables that were exported or declared prior to the set of
debug messages of shell variables.
Changed `bin/chk-entry.sh` VERSION from "1.1.3 2024-03-18"
to "1.1.4 2024-03-26".
Changed `bin/gen-authors.sh` VERSION from "1.3.1 2024-03-18"
to "1.3.2 2024-03-26".
Changed `bin/gen-location.sh` VERSION from "1.1.1 2024-03-18"
to "1.1.2 2024-03-26".
Changed `bin/gen-other-html.sh` VERSION from "1.0.1 2024-03-08"
to "1.0.2 2024-03-26".
Changed `bin/gen-sitemap.sh` VERSION from "1.3.2 2024-03-18"
to "1.3.3 2024-03-26".
Changed `bin/gen-status.sh` VERSION from "1.1.1 2024-03-18"
to "1.1.2 2024-03-26".
Changed `bin/gen-years.sh` VERSION from "1.0.2 2024-03-13"
to "1.0.3 2024-03-26".
Changed `bin/md2html.sh` VERSION from "1.1.1 2024-03-09"
to "1.1.2 2024-03-26".
Changed `bin/output-index-author.sh` VERSION from "1.5.1 2024-03-19"
to "1.5.2 2024-03-26".
Changed `bin/output-index-inventory.sh` VERSION from "1.2.2 2024-03-19"
to "1.2.3 2024-03-26".
Changed `bin/output-year-index.sh` VERSION from "1.1.1 2024-03-19"
to "1.1.2 2024-03-26".
Changed `bin/pandoc-wrapper.sh` VERSION from "1.5.2 2024-03-19"
to "1.5.3 2024-03-26".
Changed `bin/quick-readme2index.sh` VERSION from "1.1.2 2024-03-08"
to "1.1.3 2024-03-26".
Changed `bin/readme2index.sh` VERSION from "1.2.1 2024-02-23"
to "1.2.2 2024-02-26".
Changed `bin/sort.gitignore.sh` VERSION from "1.1.2 2024-03-18"
to "1.1.3 2024-03-26".
Changed `bin/status2html.sh` VERSION from "1.1.1 2024-03-19"
to "1.1.2 2024-03-26".
Changed `bin/subst.default.sh` VERSION from "1.2.1 2024-02-23"
to "1.2.2 2024-02-26".
Changed `bin/subst.entry-index.sh` VERSION from "1.3.1 2024-03-19"
to "1.3.2 2024-03-26".
Changed `bin/tar-all.sh` VERSION from "1.1.1 2024-03-18"
to "1.1.2 2024-03-26".
Changed `bin/tar-entry.sh` VERSION from "1.3.1 2024-03-25"
to "1.3.2 2024-03-26".
Changed `bin/tar-year.sh` VERSION from "1.1.1 2024-03-18"
to "1.1.2 2024-03-26".
Changed `bin/all-years.sh` VERSION from "1.0.1 2024-02-23"
to "1.0.2 2024-02-26".
Changed `bin/gen-top-html.sh` VERSION from "1.2.1 2024-03-08"
to "1.2.2 2024-03-26".
Changed `bin/gen-year-index.sh` VERSION from "1.0.3 2024-03-09"
to "1.0.4 2024-03-26".
Changed `bin/subst.year-index.sh` VERSION from "1.1.1 2024-03-19"
to "1.1.2 2024-03-26".
Changed `bin/untar-entry.sh` VERSION from "1.0 2024-03-25"
to "1.0.1 2024-03-26".
The files 2020/ferguson1/chocolate-cake.html and
2020/ferguson2/recode.html have been regenerated for the updates to the
markdown files as per commit fc42571dc9.
In 2020/ferguson1 the chocolate-cake.md file has been updated with a
suggestion that those who try it let me know how they like it and
sharing pictures (on mastodon).
In 2020/ferguson2 all chocolate cake related files have been removed. A
new file encrypted.html has been added with a new task one might wish to
try since the cake recipe is in 2020/ferguson1.
The make clobber rule in 2020/ferguson2 removes decrypted.html (the
recode.md file now shows how one might decrypt the encrypted.html in the
file decrypted.html but this file should not be committed and is now in,
along with a few others, .gitignore).
The html files have NOT been updated as manifest issues have to be
resolved first.
Fixed when the `.tar.tstamp` file is updated
by `bin/tar-entry.sh`.
Changed `bin/tar-entry.sh` VERSION from "1.3 2024-03-22"
to "1.3.1 2024-03-25".
Performed `make form_entry_tarball` to complete the test of the above.
TODO: Test the results under Linux.
TODO: Update `bin/tar-year.sh`. Update year level compressed tarballs.
TODO: Update `bin/tar-all.sh`. Update top level compressed tarball.
TODO: Write `bin/untar-year.sh` and `bin/untar-all.sh`.
We rewrote the `bin/tar-entry.sh` algorithm so that we do NOT have
to require Linux to produce a compressed tarball that is byte-for-byte
identical to a macOS compressed tarball for the same entry.
Changed `bin/tar-entry.sh` VERSION from "1.2 2024-03-22"
to "1.3 2024-03-25".
Added `bin/untar-entry.sh` to untar an entry from the
compressed tarball.
Added `make untar_entry_tarball` to untar all entry files.
Added `make untar_year_tarball` and `make untar_all_tarball`
stub Makefile rules. The core it referred to does not yet exist.
Updated IOCCC manifest. Updated `.entry.json` for `2004/sds`.
Performed `make www` to update web pages. In most cases the
entry `index.html` added an inventory link for the new `.tar.tstamp` file.
Performed `form_entry_tarball` to complete the test of the above.
TODO: Test the results under Linux.
TODO: Update `bin/tar-year.sh`. Update year level compressed tarballs.
TODO: Update `bin/tar-all.sh`. Update top level compressed tarball.
TODO: Write `bin/untar-year.sh` and `bin/untar-all.sh`.
Commit cbc022d864 which edited
2004/sds/README.md broke the functionality of one of the features of the
code so the previous revision of README.md was copied to README_sds.md
and the script now uses that file.
This does mean the manifest is out of date and that will have to be
fixed another time but now the script works okay. Without this one of
the files to be compiled does not compile at all and it seems better
this way than to tamper with the code especially given what the entry
does and because it would take more time to fix anyway.
Updated `bin/tar-entry.sh` to build entry compressed tarballs using
`.tar.tstamp` timestamps.
Updated `bin/tar-entry.sh` VERSION from "1.1.1 2024-03-18"
to "1.2 2024-03-22".
Performed `make form_entry_tarball` to perform the above and test
it under macOS.
TODO: Test under RHEL 9.
These `.tar.tstamp` files will be used, along with the entry
`.tar.tstamp` files, to form compressed tarballs that
can be reproduced exactly the same way, down to the byte,
under both macOS and Linux.
Stay tuned ... :-)
We added a `.tar.tstamp` file to all entries which will
hold the timestamp for use when forming entry compressed tarballs.
These entry `.tar.tstamp` files will be part of a fix to
build compressed tarballs that both macOS and Linux agree on.
We wanted to push out this update now so that it won't
conflict future changes to the IOCCC manifest.
The problem it had is that it was reverted back to trying to compile the
very unsafe file name without deleting it after the ${CC} line. Thus the ${RM}
part was moved back to the end of the rule. I added the file (or a glob
that will match the file) to .gitignore a long time ago possibly when I
added the alt code.
The thanks file was fixed to account for the fact that the Makefile no
longer automatically builds the alt version if the code fails to
compile.
NOTE: The `make update` action should only be done by IOCCC judges.
We performed a `make update` as a test.
As it was sometimes said over the radio in the past: ""This is only a test." :-)
Under macOS, this test was successful!
The doesn't work with some platforms is wrong. It's the perl version and
the author noted this.
There is however a bug that was noted in the bugs file that was not in
the README.md file. This has been moved in the bugs.md file and
README.md file to above the INABIAF part.
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.
By improving how padding is applied to the right column
and footer, the rendered HTML looks better.
There are still issues, but at least it does not
_suck_ as bad. :-)
Remove markdown where test is both bold and code.
This double formatting produces undesirable effects in HTML.
One should make something **bold** or something `code`.
but not both. The stacking of these two options produces bad
effects when rendered.
Helped clarify how some tools are indirectly invoked by improving
some of the leading comments in selected bin tools.
Changed `bin/output-index-author.sh` VERSION from "1.5 2024-03-04"
to "1.5.1 2024-03-19".
Changed `bin/output-index-inventory.sh` VERSION from "1.2.1 2024-03-18"
to "1.2.2 2024-03-19".
Changed `bin/output-year-index.sh` VERSION from "1.1 2024-02-27"
to "1.1.1 2024-03-19".
Changed `bin/pandoc-wrapper.sh` VERSION from "1.5.1 2024-03-18"
to "1.5.2 2024-03-19".
Changed `bin/status2html.sh` VERSION from "1.1 2024-03-10"
to "1.1.1 2024-03-19".
Changed `bin/subst.entry-index.sh` VERSION from "1.3 2024-03-02"
to "1.3.1 2024-03-19".
Changed `bin/subst.year-index.sh` VERSION from "1.1 2024-03-02"
to "1.1.1 2024-03-19".
Ran `make www` to check tools and `1984/decot/index.html` was updated.
In particular although main() has to have two args don't do (void)argc
as that was not in the code.
To make it more consistent with other added functions (that I had to do
in other entries for instance and for the same reason) I made the
function poke() (r short of poker) pain() instead.
The thanks file was modified for this entry too, improving it a bit
(hopefully making certain points clearer too).