We set dates and times for when IOCCC28 will go into pending state,
open state, and judging state. These dates are subject to change until
the content enters the open state.
Modified both `next/guidelines.md` and `next/rules.md` as per the
IOCCC28 dates and times.
Improve the `next/guidelines.md` and `next/rules.md` text around IOCCC28 dates and times.
We processed the XXX's in markdown files that needed processing.
Fixed a minor typo in `bin/cvt-submission.sh`.
Made some minor formatting improvements to `faq.md`, `next/register.md`,
`next/rules.md`, `next/guidelines.md`, `README.md` and `index.md`.
Updated "Rule 3" in `next/rules.md` in regards to the above.
Updated "Rule 8" in `next/rules.md` in regards to the above.
Changed `faq.md` version from **28.1.8 2024-12-07**
to **28.2.0 2024-12-28**.
Changed `next/guidelines.md` version from **28.29 2024-12-27**
to **28.30 2024-12-28**.
Changed `next/rules.md` version from **28.14 2024-12-07**
to **28.15 2024-12-28**.
TODO: Review these changes.
As per the TODO:
- [ ] Verify the markdown code blocks are properly indented
```sh
find . -name '*.md' ! -name markdown.md -print0 | xargs -0 pcregrep -M '^``.*\n[^|`\n \t]'
```
Fixed `1998/dorssel/dorssel.md` and `thanks-for-help.md`.
Performed `make quick_www` to process the above.
It turned out that `next/rules.md` was modified in the section marked
between:
```html
<!-- START: this line starts content from: inc/rules.closed.hdr -->
```
and:
```html
<!-- END: the next line ends content from: inc/rules.closed.hdr -->
```
Instead, `inc/{guidelines,rules}.*.hdr` should be modified as
`make gen_status` uses these files to form this content.
We added some images to `next/register.md` and thus to
`next/register.html`.
We modified FAQ 0.0 with these 2 new steps:
3. Wait for your submit server username and initial password
4. Login to the submit server and change your password
This is just a checkpoint: these need to be improved but
we are too tired.
NEEDED TODO: Create a new `next/chpw.html` page and move the images
and text from the new FAQ 0.0 step 4 into this new place.
This will keep the step of FAQ 0.0 shorter to read while
keeping the details and images in a separate web page.
We make the note about something changing the subject to be more generic
so that it may both better "stand the test of time" (as the expression
goes) and be more generic to be better "future proof" (as the expression
also goes).
Performed `make quick_www` to update the HTML pages.
TODO: Add images and/oor text blocks to steps in `next/register.md`.
We added lettered steps to `next/register.md` as part of our
configuring the mailing list for IOCCC28.
Change "IOCCC Judges" to the more commonly used "IOCCC judges"
and made it a HTML link in `2014/README.md`, `2015/README.md`,
and `faq.md`.
Added a reference to "first time login" in `next/submit.md`.
Improved some text in Step 3 of FAQ 0.0 of `faq.md`.
Performed `make quick_www` to update the HTML pages.
TODO: Need to add images to the lettered steps in `next/register.md.
Added a new `next/submit.html` to move the "how to submit" form "in-line"
of the top FAQ entry into a new page managed by `next/submit.md`.
Thus, `next/submit.html` is a parallel to `next/register.html`
and `next/submit.md` is a parallel to `next/register.md`.
Changed the FAQ "faq.html#submit" and into "faq.html#enter".
Added individual tags for the steps in FAQ0.0.
Moved "faq.html#register" down to FAQ 0.0 step 2.
Added "faq.html#submit" for FAQ 0.0 step 5,
however elsewhere often "next/submit.html" is used.
Changed references for "faq.html#upload" to "next/submit.html".
We made a number of changes to the following markdown files to reflect the above:
- `about.md`
- `faq.md`
- `index.md`
- `markdown.md`
- `next/README.md`
- `next/README.md`
- `next/guidelines.md`
- `next/register.md`
- `next/rules.md`
- `nojs-menu.md`
- `status.md`
as well as these files:
- `bin/gen-top-html.sh`
- `bin/md2html.cfg`
and added:
- `next/submit.html`
- `next/submit.md`
Perform `make www` and `make gen_status` to perform the above and test under macOS.
TODO: Add images about the mailing list to `next/register.md`. See the line:
```
XXX - **put images and other details about joining the mailing list here** - XXX
```
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.
We improved the rules language around `make clobber` to not insist,
but instead request actions to restore the state of the submission.
Updated `inc/rules.closed.hdr` and `inc/guidelines.closed.hdr` to clarify
the tentative nature of the rules and guidelines without implying
that they might be massively changed before the IOCCC re-opened.
The `next/rules.md` and `next/guidelines.md` have been updated to
include the `inc/rules.closed.hdr` and `inc/guidelines.closed.hdr`
content respectively.
The top level warning that the rules and guidelines are out of date
have been removed.
Performed `make rules guidelines` to update the HTML pages.
We move the "_Thanks for the help_" out from under the "Entries"
menu and under the "About" menu to better balance the menus.
Besides, "_Thanks for the help_" is more **about** the IOCCC itself.
We fixed some of minor inconsistencies in the `faq.md` markdown.
We added "Q x.y:" to the Table of Contents and FAQ titles,
in part to verify the order, and in part to help someone find
their way while inside the FAQ content.
Reduced several FAQ titles that were wrapping onto a 2nd line
at the standard window width.
Perform `make faq` to perform the above and test under macOS.
The faq entries have been reordered to match the same order
as the Table of Contents.
Added missing "Why were some filenames changed?" FAQ to the
Table of Contents.
Fixed a number of FAQ headers to use the "Q:" at the start.
Added double 1/2 lines between sections.
Made use of double empty lines consistent.
Added some missing "Jump to top" lines.
Shortened 2 very long FAQ long titles.
Perform `make faq` to perform the above and test under macOS.
TODO: Check the HTML with the link checker.
The `bin/entry2csv.sh` too was modified to leave \uxxxx
in awards alone and to NOT convert it.
Changed `bin/entry2csv.sh` VERSION from "1.5.1 2024-10-10"
to "1.6 2024-10-14".
Performed `make entry2csv` and `make csv2entry` to test the above
under macOS.
We now use `jstrdecode -N` without the need for
using `-T` with `bin/jval-wrapper.sh`.
Now depending on `jstrdecode(1)` with a minimum version
of "1.2.3" (was "1.2.0").
Added information about bin tools missing from `bin/README.md`.
Changed `bin/entry2csv.sh` VERSION from "1.5 2024-10-08"
to "1.5.1 2024-10-10".
Changed `bin/gen-authors.sh` VERSION from "1.14 2024-10-08"
to "1.14.1 2024-10-10".
Changed `bin/gen-location.sh` VERSION from "1.8 2024-10-08"
to "1.8.1 2024-10-10".
Changed `bin/gen-years.sh` VERSION from "1.6 2024-10-08"
to "1.6.1 2024-10-10".
Changed `bin/output-index-author.sh` VERSION from "1.10 2024-10-08"
to "1.10.1 2024-10-10".
Changed `bin/output-year-index.sh` VERSION from "1.6 2024-10-08"
to "1.6.1 2024-10-10".
Changed `bin/subst.entry-index.sh` VERSION from "1.8 2024-10-08"
to "1.8.1 2024-10-10".
Perform `make all_jfmt` to format canoncailly, all `entry.json`
and all `author/author_handle.json` files. A side effect of this
is to replace all of the fancy non-ASCII characters within
JSON strings with their "bashslash-u hex hex hex hex" equivalent.
Thanks to the newly fixed `jstrdecode(1)` tool, there was
no change in the HTML output.
Perform `make www` to perform the above and test under macOS.
Use ``jstrdecode(1)` to decode certain JSON strings,
such as "Full Name", "Abstract", "Award" and "Organization".
We now rely on a correctly decoding `jstrdecode(1)`. The bin tools
now rely on `jstrdecode` with the following version or later:
> jstrdecode version: 1.0.6 2024-10-08
> JSON parser version: 1.1.7 2024-10-08
Removed `bin/unicode-fix.sed` and `bin/unicode-chk.sh`.
Removed `make unicode_chk`.
Fixed a few rule dependencies on `Makefile`.
Added information about `bin/jval-wrapper.sh` in `bin/README.md`.
Changed `bin/csv2entry.sh` VERSION from "1.4 2024-09-27"
to "1.5 2024-10-08".
Changed `bin/entry2csv.sh` VERSION from "1.4 2024-09-27"
to "1.5 2024-10-08".
Changed `bin/gen-authors.sh` VERSION from "1.13 2024-09-23"
to "1.14 2024-10-08".
Changed `bin/gen-location.sh` VERSION from "1.7 2024-09-23"
to "1.8 2024-10-08".
Changed `bin/gen-years.sh` VERSION from "1.5 2024-09-23"
to "1.6 2024-10-08".
Changed `bin/jfmt-wrapper.sh` VERSION from "1.2 2024-09-23"
to "1.3 2024-10-08".
Changed `bin/jprint-wrapper.sh` VERSION from "1.3 2024-09-23"
to "1.4 2024-10-08".
Changed `bin/jval-wrapper.sh` VERSION from "1.1 2024-09-23"
to "1.2 2024-10-08".
Changed `bin/output-index-author.sh` VERSION from "1.9 2024-09-23"
to "1.10 2024-10-08".
Changed `bin/output-year-index.sh` VERSION from "1.5 2024-09-23"
to "1.6 2024-10-08".
Changed `bin/subst.entry-index.sh` VERSION from "1.7 2024-09-27"
to "1.8 2024-10-08".
Perform `make www` to perform the above and test under macOS.
We add an initial "_title_" and "_abstract_" to all entry `.entry.json` files.
The `bin/csv2entry.sh` tool reads the `summary.csv` file and
loads the "_title_" and "_abstract_" to entry `.entry.json` files.
Changed `bin/csv2entry.sh` VERSION from "1.3 2024-09-23"
to "1.4 2024-09-27".
Perform `make csv2entry` to perform the above and test under macOS.
The `bin/cvt-submission.sh` tool adds "_title_" and "_abstract_" to the
.entry.json based on the `.info.json` file.
Changed `bin/cvt-submission.sh` VERSION from "1.2 2024-09-23"
to "1.3 2024-09-27".
The `bin/entry2csv.sh` tool forms the `summary.csv` file
based on the "_title_" and "_abstract_" fields found in .entry.json files.
Changed `bin/entry2csv.sh` VERSION from "1.3 2024-09-23"
to "1.4 2024-09-27".
Perform `make entry2csv` to perform the above and test under macOS.
Added `-H` and `header=with-header-3` to the `bin/md2html.cfg`
for the configuration entry for `[12][0-9][0-9][0-9]/*/README.md`.
Changed `bin/md2html.sh` VERSION from "1.6 2024-08-17"
to "1.7 2024-09-27".
All entry `index.html` files now list the "_abstract_" in a new
`<h3>abstract</h3>` header.
Changed `bin/subst.entry-index.sh` VERSION from "1.6 2024-09-23"
to "1.7 2024-09-27".
Removed `summary.csv`.
Added `summary.csv` and `summary.numbers` to `.gitignore`.
Sorted the result with `bin/sgi.sh`.
Perform `make quick_www` to perform the above and test under macOS.
Perform `make www` to perform the above and test under macOS.
When viewed on GitHub,
[summary.csv](https://github.com/ioccc-src/temp-test-ioccc/blob/master/summary.csv)
reported:
> We can make this file beautiful and searchable if this error is corrected: Illegal quoting in line 16.
This is an attempt to fix that problem.
NOTE: We are not sure what is wrong with the quotes on line 16.
Perhaps any quotes with the file is a problem and GitHub just reported
the first problem?
This file will go away, but is a good start for the
title and abstract for entries.
The contents started from
[summary.txt](https://github.com/ioccc-src/winner/blob/master/all/summary.txt).
We converted the contents into a CSV format. Moreover the abstract was
limited to no more than 63 characters. All comma's (",") within the
abstract were removed to make converting to CSV easier.
NOTE: This is a tempory file that will **GO AWAY** once the all of the
`.entry.json` files have been updated with a title and abstract.
We add `make unicode_chk` to run `bin/unicode-chk.sh` to check all
`.entry.json` and all `author/author_handle.json` files.
Added a JSON format check by `jparse(1)` to `bin/unicode-chk.sh`.
Changed `bin/unicode-chk.sh` VERSION from "1.0 2024-09-23"
to "1.1 2024-09-24".
Performed `make unicode_chk` to test the above under macOS.
If the [jsp tool](https://github.com/kjozsa/jsp) is
installed, it will be used in favor of the [JSONPath.sh
tool](https://github.com/lcn2/JSONPath.sh).
Updated `bin/jfmt-wrapper.sh`, `bin/jprint-wrapper.sh`, and
`bin/jval-wrapper.sh` to use jsp if found. These 3 tools may be given
`-t tool` where tool is either "_jsp_" or "_JSONPath.sh_" for force the
use of the tool. They also use `-Q` to perform a quick check tool using
trivial input.
The `bin/jval-wrapper.sh` tool had been simplified. The `-w`,
`-i` and `-u` options are gone. Instead it has:
```
-b print only values (def: print both JSON member and JSON value)
-q remove enclosing double quotes (def: keep any enclosing double quotes)
```
Add `make all_jfmt` to Makefile to canonically format all entry and
author handle JSON files.
A sed script `bin/unicode-fix.sed` has been added that converts
JSON string "_\u[0-9A-Fa-f]{4}_" encoding that may arise from known
JSON data. This is done as a work-a-round for [Unicode / UTF-8
issues](https://github.com/xexyl/jparse/issues/13) with `jstrdecode(1)`.
The `bin/unicode-chk.sh` tool, if given on file arguments, scans
all `.entry.json` and `author/author_handle.json` JSON files to be
sure that, after `bin/unicode-fix.sed` processing, no JSON string
"_\u[0-9A-Fa-f]{4}_" encodings remain.
Removed all `-j jparse` args from commands. Instead the `jparse(1)`
tool is looked for along $PATH.
Added `combine_author_handle.sh` tool to transform all of the
`author/author_handle.json` files into a temporary as a single JSON
file so that `bin/jval-wrapper.sh` tool may be used to extract all
"_sort_word_" or all "_entry_id_" values.
Changed `bin/all-jfmt.sh` VERSION from "1.0 2024-08-31"
to "1.1 2024-09-24".
Changed `bin/csv2entry.sh` VERSION from "1.2.3 2024-08-30"
to "1.3 2024-09-23".
Changed `bin/cvt-submission.sh` VERSION from "1.1 2024-08-31"
to "1.2 2024-09-23".
Changed `bin/entry2csv.sh` VERSION from "1.2.1 2024-08-17"
to "1.3 2024-09-23".
Changed `bin/gen-authors.sh` VERSION from "1.12 2024-08-18"
to "1.13 2024-09-23".
Changed `bin/gen-location.sh` VERSION from "1.6 2024-08-18"
to "1.7 2024-09-23".
Changed `bin/gen-status.sh` VERSION from "1.6 2024-08-17"
to "1.7 2024-09-23".
Changed `bin/gen-years.sh` VERSION from "1.4 2024-08-17"
to "1.5 2024-09-23".
Changed `bin/jfmt-wrapper.sh` VERSION from "1.1 2024-08-20"
to "1.2 2024-09-23".
Changed `bin/jprint-wrapper.sh` VERSION from "1.1 2024-08-20"
to "1.3 2024-09-23".
Changed `bin/jval-wrapper.sh` VERSION from "1.0.4 2024-08-20"
to "1.1 2024-09-23".
Changed `bin/manifest.entry.json.awk` VERSION from "1.1.2 2024-07-28"
to "1.2 2024-09-17".
Changed `bin/output-index-author.sh` VERSION from "1.8 2024-08-17"
to "1.9 2024-09-23".
Changed `bin/output-year-index.sh` VERSION from "1.4.4 2024-08-05"
to "1.5 2024-09-23".
Changed `bin/subst.entry-index.sh` VERSION from "1.5 2024-08-13"
to "1.6 2024-09-23".
Added `bin/combine_author_handle.sh` VERSION "1.0 2024-09-23".
Added `bin/unicode-chk.sh` VERSION "1.0 2024-09-23".
Added `bin/unicode-fix.sed` VERSION "1.0 2024-09-23".
Perform `make www` to perform the above and test under macOS.
FYI: On our MacBook Pro, `make www` took:
```
make www 631.79s user 264.95s system 94% cpu 15:53.71 total
```
FYI: On our MacBook Pro, `make quick_www` took:
```
make quick_www 81.43s user 58.26s system 102% cpu 2:16.02 total
```
We added ._.DS_Store to `.gitignore`, and generalized the `/archive/historic/`
year sub-directories into a single pattern line.
We fix `bin/sgi.sh` to properly sort, canonically, `.gitignore` files
including `._.DS_Store` lines. The tool now stories stdin content
into a temporary file, then prints 6 classes of files from the
temporary file to stdout.
Changed `bin/sgi.sh` VERSION from "1.1.3 2024-08-18"
to "1.2 2024-09-05".
Fixed a bug in `bin/sort.gitignore.sh` that prevented it from
finding the `bin/sgi.sh` tool.
Changed `bin/sort.gitignore.sh` VERSION from "1.1.8 2024-07-28"
to "1.2 2024-09-05".
Performed `make sort_gitignore` to test the above under macOS.
NOTE: The above canonically sorted:
- 2004/hibachi/.gitignore
- 2005/mynx/.gitignore
- 2011/vik/.gitignore
- 2013/dlowe/.gitignore
- 2020/otterness/.gitignore
Added a new "FAQ 1.4 - What is the **Great Fork Merge**?"
and a new "FAQ 6.18 - I do not understand the IOCCC, can you explain it
to me?".
Updated "FAQ 0.11: How can I validate any JSON document?"
with new jparse info.
Performed `make gen_top_html` to accomplish the above and to test under macOS.
Added `bin/all-jfmt.sh` tool.
Added `make all_jfmt` rule to `Makefile`.
Added `make all_jfmt` to `make www`.
NOTE: Because the `bin/all-jfmt.sh` tool is slow, we did not
add `make all_jfmt` to `make quick_www`.
NOTE: Once the `jprint(1)` tool, as described in [issue
repo](https://github.com/xexyl/jparse), this tool (and a number of other
tools) will run **MUCH FASTER**.
Performed `make www` to accomplish the above and to test under macOS.
FYI: The `make www` takes:
make www 396.29s user 523.94s system 102% cpu 15:00.82 total
This command will become somewhat faster when the `jprint(1)` tool is ready.
It will become **MUCH** faster when the `jval(1)` tool is ready.
As a comparison, `make quick_www` takes only:
make quick_www 43.63s user 53.87s system 109% cpu 1:29.17 total
The `bin/cvt-submission.sh` tool is now complete.
Changed `bin/cvt-submission.sh` VERSION from "1.0.5 2024-08-17"
to "1.1 2024-08-31".
Make minor error message fix to `bin/csv2entry.sh`.
Performed `make quick_www` to accomplish the above and to test under macOS.
TODO: Complete the `bin/csv2entry.sh` tool.
We fixed `bin/csv2entry.sh` to output entry `.entry.json`
files in JSON canonical form.
Changed `bin/csv2entry.sh` VERSION from "1.2.2 2024-08-17"
to "1.2.3 2024-08-30".
Performed `make quick_www` to accomplish the above and to test under macOS.
The PR #2662 introduced TAB characters into entry `.entry.json` files
and mal-formatted `author_handle` JSON members.
To restore canonical JSON formatting, we did:
```sh
find [12][90][89012][0-9] -name .entry.json -print | xargs -n 1 bin/jfmt-wrapper.sh -v 1
```
BTW: We have written a tool, currently untested, to do this. We plan to also
add a new fix JSON format rule to the top level `Makefile`.
Performed `make www` to accomplish the above and to test under macOS.
The core of `bin/gen-other-html.sh` code that converts entry non-README.md
into HTML has been moved into a new tool: `bin/othermd2html.sh`.
The `bin/othermd2html.sh` tool will be useful to the `bin/cvt-submission.sh`
tool that is under development.
Added info about `bin/othermd2html.sh` to `bin/README.md`.
Changed `bin/gen-other-html.sh` VERSION from "1.4.1 2024-08-18"
to "1.5 2024-08-27".
HTML produced by `bin/gen-other-html.sh` now uses a "jump to" mid-bar
test now shows the `YYYY/dir/index.html` link text (with `YYYY/dir/` added).
Performed `make gen_other_html` to accomplish the above and to test under macOS.
Performed `make gen_top_html` to accomplish the above and to test under macOS.
For some reason, PR #2646 was made on top of the code base for pr #2645.
If we accept PR #2646 as is, we perform PR #2645 that was previously
rejected. This change is an attempt to avoid this.
A number of rules have been moved from entry `Makefile`s into the
`1337.mk` include file to make it easier for these common rules to be
updated or modified globally (by modifying the `1337.mk` include file).
The entry level `Makefile`s are now similar in form to the
/Makefile.example](https://github.com/ioccc-src/mkiocccentry/blob/master/Makefile.example)
file from the other repo.
The following make rules were moved into the `1337.mk` include file:
- `make indent.c`
- `make install`
- `make diff_orig_prog`
- `make diff_prog_orig`
- `make diff_alt_prog`
- `make diff_prog_alt`
This simplifies the entry level `Makefile`s so that they mostly reflect
the specifics of the particular entry.
Mentioned in FAQ 4.2, that the make diff rules are in the `1337.mk` include file.
Fixed invalid TAB character in `faq.md`.
Removed `make clean` directives that removed `indent.c`. This file is now
removed via `make indent_clean`, a clean rule that also removes `indent.c`.
Removed `make clobber` directives that removed sandwich, This file is now
removed via `make indent_clobber`, a clean rule that also removes `sandwich`.
Added `make indent_clean` and `make indent_clobber` rules into the top level
`Makefile` and the year level `YYYY/Makefile`.
Performed `make quick_www` to accomplish the above and to test under macOS.
We add links to jump to the top of the file at the bottom of FAQ
sections.
Improved Makefile samples for FAQ 0.3.
Performed `make faq` to accomplish the above and to test under macOS.
There is also a fix that fixes a format problem with
the `author_set`.
Used `bn/jfmt-wrapper.sh` to reformat JSON with:
```sh
find * -name '*.json' -print0 | xargs0 -n1 -t bin/jfmt-wrapper.sh
```
In keeping with [GH-issues 931](https://github.com/ioccc-src/mkiocccentry/issues/931),
we remove the use of `-T` from the `JSONPATH.sh` tool. This will implement JSON
formatting using multiples of 4 ASCII spaces and without TABs.
Changed `bin/jfmt-wrapper.sh` VERSION form "1.0.2 2024-08-08"
to "1.1 2024-08-20".
Changed `bin/jprint-wrapper.sh` VERSION form "1.0.2 2024-08-08"
to "1.1 2024-08-20".
Changed `bin/jval-wrapper.sh` VERSION form "1.0.3 2024-08-11"
to "1.0.4 2024-08-20".
Fixed how `-Q` quick mode works in `bin/gen-other-html.sh`
so that the target HTML file is not touched needlessly.
Changed `bin/gen-other-html.sh` VERSION from "1.4 2024-08-17"
to 1.4.1 2024-08-18".
Performed `quick_other_html` to test the above under macOS.
Performed `gen_other_html` to test the above under macOS.
We use the `bin/jval-wrapper.sh` tool to obtain information from JSON
files instead of attempting using a "GROSS HACK" that involved using
`grep(1)` (and friends) as those "GROSS HACK"s assumed that the layout of
the JSON was canonical. The `bin/jval-wrapper.sh` tool is able to deal
with various layouts of JSON including non-canonical layouts. Moreover,
by using the `bin/jval-wrapper.sh` tool we greatly reduce the places in
bin tools that contain "GROSS HACK"s.
Adjusted `bin/gen-status.sh` to use `bin/jval-wrapper.sh`.
Changed `bin/gen-status.sh` VERSION from "1.5.8 2024-08-05"
to "1.6 2024-08-17".
Performed `make gen_status` to test the above under macOS.
Adjusted `bin/gen-years.sh` to use `bin/jval-wrapper.sh`.
Changed `bin/gen-years.sh` VERSION from "1.3.7 2024-08-05"
to "1.4 2024-08-17".
Performed `make gen_years` to test the above under macOS.
Adjusted `bin/output-index-author.sh` to use `bin/jval-wrapper.sh`.
Changed `bin/output-index-author.sh` VERSION from "1.7.3 2024-08-05"
to "1.8 2024-08-17".
Performed `make entry_index` to test the above under macOS.
Added `make quick_year_index` to generate year level index.html files
when year level `YYYY/README.md` is newer.
The `make quick_www` calls `quick_year_index` instead of `make gen_year_index`.
The `bin` directory is now sat as `BIN_PATH=$TOPDIR/bin`, where
`$TOPDIR` is determined by top of the git repo (as determined by
the command: `git rev-parse --is-inside-work-tree`) and potentially
modified by `-d topdir`. After `cd $TOPDIR`, we set `BIN_DIR=bin`.
All tools from this repo are now assumed to under "$BIN_DIR". Removed
command like options such as `-T md2html.sh`, and `-p tool` that used
to be able to change the location of a `bin` tool.
Changed `bin/gen-authors.sh` VERSION from "1.11 2024-08-13"
to "1.12 2024-08-18".
Changed `bin/gen-location.sh` VERSION from "1.5 2024-08-17"
to "1.6 2024-08-18".
Changed `bin/readme2index.sh` VERSION from "1.2.7 2024-08-05"
to "1.3 2024-08-17".
Modified `bin/all-run.sh` to use the `bin` directory mechanism.
Modified `bin/all-years.sh` to use the `bin` directory mechanism.
Modified `bin/gen-other-html.sh` to use the `bin` directory mechanism.
Modified `bin/gen-year-index.sh` to use the `bin` directory mechanism.
Modified `bin/md2html.sh` to use the `bin` directory mechanism.
Modified `bin/quick-readme2index.sh` to use the `bin` directory mechanism.
Modified `bin/readme2index.sh` to use the `bin` directory mechanism.
Changed `bin/all-run.sh` VERSION from "1.3.6 2024-08-05"
to "1.4 2024-08-17".
Changed `bin/all-years.sh` VERSION from "1.0.5 2024-08-05"
to "1.1 2024-08-17".
Changed `bin/gen-other-html.sh` VERSION from "1.3 2024-08-11"
to "1.4 2024-08-17".
Changed `bin/gen-year-index.sh` VERSION from "1.1.2 2024-08-05"
to "1.2 2024-08-17".
Changed `bin/quick-readme2index.sh` VERSION from "1.1.7 2024-08-05"
to "1.2 2024-08-17".
Changed `bin/md2html.sh` VERSION from "1.5.5 2024-08-05"
to "1.6 2024-08-17".
Added some whitespace in the form of empty lines to tools.
Made checks for tools under `bin` directory more consistent.
When using `-Q` (quick mode) and the prerequisite files are newer,
we force the target to be touched so that a later run will not
have to build the target HTML file.
Performed `make quick_www` to test the above under macOS.
Performed `make www` to test the above under macOS.
We use the `bin/jval-wrapper.sh` tool to obtain information from JSON
files instead of attempting using a "GROSS HACK" that involved using
`grep(1)` (and friends) as those "GROSS HACK"s assumed that the layout of
the JSON was canonical. The `bin/jval-wrapper.sh` tool is able to deal
with various layouts of JSON including non-canonical layouts. Moreover,
by using the `bin/jval-wrapper.sh` tool we greatly reduce the places in
bin tools that contain "GROSS HACK"s.
Adjusted `bin/gen-location.sh` to use `bin/jval-wrapper.sh`.
Added `-Q` option to `bin/gen-location.sh` to not form
`location.html` when the `location.html` file is newer than all
`author/author_handle.json` files.
Changed `bin/gen-location.sh` VERSION from "1.4.5 2024-08-05"
to "1.5 2024-08-15".
Performed `make location` to test the above under macOS.
Added `make quick_location` rule to the top level `Makefile`
to run `bin/gen-location.sh` with `-Q`.
Changed `make quick_www` use `make quick_location`.
Performed `make quick_location` to test the above under macOS.
Performed `make quick_www` to test the above under macOS.
Performed `make www` to test the above under macOS.
We make sure that when we uniq, we sort with `LC_ALL=C` as in:
> LC_ALL=C uniq ...
Changed `bin/csv2entry.sh` VERSION from "1.2.1 2024-08-17"
to "1.2.2 2024-08-17".
Performed `make csv2entry` to test the above under macOS.
We make sure that when we sort, we sort with `LC_ALL=C` as in:
> LC_ALL=C sort ...
Changed `bin/entry2csv.sh` VERSION from "1.2 2024-08-13"
to "1.2.1 2024-08-17".
Performed `make entry2csv` to test the above under macOS.
Changed `bin/csv2entry.sh` VERSION from "1.2 2024-08-13"
to "1.2.1 2024-08-17".
Performed `make csv2entry` to test the above under macOS.
Changed `bin/cvt-submission.sh` VERSION from "1.0.4 2024-08-11"
to "1.0.5 2024-08-17".
Changed `bin/gen-sitemap.sh` VERSION from "1.3.13 2024-08-05"
to "1.3.14 2024-08-19".
Changed `bin/new-dir.sh` VERSION from "1.3.1 2024-08-11"
to "1.3.2 2024-08-17".
Performed `make www` to test the above under macOS.
We use the `bin/jval-wrapper.sh` tool to obtain information from JSON
files instead of attempting using a "GROSS HACK" that involved using
`grep(1)` (and friends) as those "GROSS HACK"s assumed that the layout of
the JSON was canonical. The `bin/jval-wrapper.sh` tool is able to deal
with various layouts of JSON including non-canonical layouts. Moreover,
by using the `bin/jval-wrapper.sh` tool we greatly reduce the places in
bin tools that contain "GROSS HACK"s.
Adjusted `bin/subst.entry-index.sh` to use `bin/jval-wrapper.sh`.
Changed `bin/subst.entry-index.sh` VERSION from "1.4 2024-08-09"
to "1.5 2024-08-13".
Adjusted `bin/entry2csv.sh` to use `bin/jval-wrapper.sh`.
Changed `bin/entry2csv.sh` VERSION from "1.1.1 2024-07-22"
to "1.2 2024-08-13".
Performed `make entry2csv` to test the above under macOS.
Adjusted `bin/csv2entry.sh` to use `bin/jval-wrapper.sh`.
Changed `bin/entry2csv.sh` VERSION from "1.1.1 2024-07-22"
to "1.2 2024-08-13".
Performed `make csv2entry` to test the above under macOS.
We use the `bin/jval-wrapper.sh` tool to obtain information from JSON
files instead of attempting using a "GROSS HACK" that involved using
`grep(1)` (and friends) as those "GROSS HACK"s assumed that the layout of
the JSON was canonical. The `bin/jval-wrapper.sh` tool is able to deal
with various layouts of JSON including non-canonical layouts. Moreover,
by using the `bin/jval-wrapper.sh` tool we greatly reduce the places in
bin tools that contain "GROSS HACK"s.
Improve `-v 1` debug messages for `bin/gen-authors.sh` to give some
level of progress instead of a long pause. Improve `-v 3` as well.
While the `bin/jval-wrapper.sh` tool is slower, it is also more accurate
in that various non-canonical JSON layouts will not confuse the tool.
Apologies for the slowdown. Once the `jval(1)` tool is ready, it should
be faster than the `JSONPath.sh` tool that `bin/jval-wrapper.sh` uses now.
Added `-Q` to `bin/jval-wrapper.sh` tool to perform a quick exit if
`authors.html` is newer than all `author/author_handle.json` files.
Updated the top level `Makefile` by adding `make quick_authors` rule
that will invoke `bin/gen-authors.sh -Q`. Also changed `make quick_www`
to call `make quick_authors` instead of `make authors`.
Changed `bin/gen-authors.sh` VERSION from "1.10.7 2024-08-05"
to "1.11 2024-08-13".
Make a minor improvement in the usage message for `bin/gen-other-html.sh`.
Performed `make www` to test the above under macOS.
Performed `make quick_www` to test the above under macOS.
This is a checkpoint on `bin/cvt-submission.sh` development.
The `bin/cvt-submission.sh` tool now forms a compressed tarball
to contain submission files that will be modified or removed
by the tool. The compressed tarball formed will be of the form
`/var/tmp/YYYY_dir.save.YYYYMMDD.hhmmss.tar.bz2`.
Added `-u` facility to `bin/jval-wrapper.sh` to strip unnecessary
leading path elements.
Changed `bin/jval-wrapper.sh` VERSION from "1.0.2 2024-08-08"
to "1.0.3 2024-08-11".
Changed `bin/cvt-submission.sh` VERSION from "1.0.3 2024-08-09"
to "1.0.4 2024-08-11".
Performed `make quick_www` to test the above under macOS.
We changed `author/README.md` to refer to FAQs instead
of trying to duplicate FAQ information.
Added `author/README.md` to `bin/md2html.cfg`.
Changed `bin/gen-top-html.sh` VERSION from "1.4.8 2024-08-05"
to "1.4.9 2024-08-11".
Performed `make gen_top_html` to accomplish the above and to test under macOS.
We add `-Q` to `bin/gen-other-html.sh` to add a mode
that will only update an entry non-index.html if it
is missing or out of date.
Added `make quick_other_html` that calls `bin/gen-other-html.sh`
with the `-Q` quick mode option.
Changed `bin/gen-other-html.sh` VERSION from "1.2.6 2024-08-05"
to "1.3 2024-08-11".
We improve debug messages in `bin/new-dir.sh`.
Updated `bin/README.md` with more information about
the recently added utilities.
Changed `bin/new-dir.sh` VERSION from "1.3 2024-08-11"
to "1.3.1 2024-08-11".
Performed `make quick_www` to accomplish the above and to test under macOS.
We rename `bin/add-dir.sh` to `bin/new-dir.sh`.
The `bin/README.md` is updated accordingly.
Changed `bin/new-dir.sh` VERSION from "1.2 2024-08-09"
to "1.3 2024-08-11".
Performed `make www` to accomplish the above and to test under macOS.
We improve `bin/add-dir.sh` by calling `make genpath` so
that the `.allyear` will be up to date.
Changed `bin/add-dir.sh` VERSION from "1.1.1 2024-07-28"
to "1.2 2024-08-09".
Checkpoint `bin/cvt-submission.sh`: a work in progress.
Added more files to `template/entry` in support of the
checkpoint of the `bin/cvt-submission.sh` tool.
Changed `bin/cvt-submission.sh` VERSION from "1.0.2 2024-08-05"
to "1.0.3 2024-08-09".
Performed `make www` to accomplish the above and to test under macOS.
We improve entry `index.html` navbar links by allowing the
next and previous to link across years.
The `make genpath` now forms `.allyear`, which is a
sorted contamination of all YYY level `.year` files.
Updated `make help` to reflect the `make genpath` functionality.
Updated FAQ 6.8 to talk about the `.allyear` file.
Fixed links to `.top` and `.allyear' to refer to GitHub.
Changed `bin/subst.entry-navbar.awk` VERSION from "1.2 2024-03-02"
to "1.3 2024-08-02".
Changed `bin/subst.entry-index.sh` VERSION from "1.3.5 2024-08-05"
to "1.4 2024-08-09".
Performed `make www` to accomplish the above and to test under macOS.
The JSON related wrapper tools do not need to cd to topdir, so we
removed ahe code that finds and cd's to the top directory of the repo.
The tools that will call JSON related wrapper tools will have already
have moved to the top directory (topdir) of the repo.
Changed `bin/jfmt-wrapper.sh` VERSION from "1.0.1 2024-08-05"
to "1.0.2 2024-08-08".
Changed `bin/jprint-wrapper.sh` VERSION from "1.0.1 2024-08-05"
to "1.0.2 2024-08-08".
Changed `bin/jval-wrapper.sh` VERSION from "1.0.1 2024-08-05"
to "1.0.2 2024-08-08".
Performed `make quick_www` to accomplish the above and to test under macOS.
Converted `bin/jfmt-wrapper.sh` to use the `jfmt(1)` tool
now that the debug message problem was fixed.
Changed `bin/jfmt-wrapper.sh` VERSION from "1.0.1 2024-08-05"
to "1.1 2024-08-08".
Performed `make quick_www` to accomplish the above and to test under macOS.
With only 1 arg, `bin/jval-wrapper.sh` will print all JSON values found.
Changed `bin/jval-wrapper.sh` VERSION from "1.0 2024-08-05"
to "1.0.1 2024-08-05".
Added checkpoint for `bin/cvt-submission.sh` as the code
is in development.
Changed `bin/cvt-submission.sh` VERSION from "1.0.1 2024-07-28"
to "1.0.2 2024-08-05".
We have removed `-u repo_top_url` from tools. When it comes time
to perform the **Great Fork Merge**, we will have to modify
the `$REPO_TOP_URL` variable default, so `-u repo_top_url` won't
help with the transition.
Changed `bin/all-run.sh` VERSION from "1.3.5 2024-07-28"
to "1.3.6 2024-08-05".
Changed `bin/all-years.sh` VERSION from "1.0.4 2024-07-28"
to "1.0.5 2024-08-05".
Changed `bin/chk-entry.sh` VERSION from to "1.1.9 2024-07-28"
to "1.1.10 2024-08-05".
Changed `bin/gen-authors.sh` VERSION from "1.10.6 2024-07-28"
to "1.10.7 2024-08-05".
Changed `bin/gen-location.sh` VERSION from "1.4.4 2024-07-28"
to "1.4.5 2024-08-05".
Changed `bin/gen-other-html.sh` VERSION from "1.2.5 2024-07-28"
to "1.2.6 2024-08-05".
Changed `bin/gen-sitemap.sh` VERSION from "1.3.12 2024-07-28"
to "1.3.13 2024-08-05".
Changed `bin/gen-status.sh` VERSION from "1.5.7 2024-07-28"
to "1.5.8 2024-08-05".
Changed `bin/gen-top-html.sh` VERSION from "1.4.7 2024-07-28"
to "1.4.8 2024-08-05".
Changed `bin/gen-year-index.sh` VERSION from "1.1.1 2024-07-28"
to "1.1.2 2024-08-05".
Changed `bin/gen-years.sh` VERSION from "1.3.6 2024-07-28"
to "1.3.7 2024-08-05".
Changed `jfmt-wrapper.sh` VERSION from "1.3.7 2024-08-05"
to "1.0.1 2024-08-05".
Changed `bin/jprint-wrapper.sh` VERSION from "1.0 2024-07-28"
to "1.0.1 2024-08-05".
Changed `bin/md2html.sh` VERSION from "1.5.4 2024-07-28"
to "1.5.5 2024-08-05".
Changed `bin/output-index-author.sh` VERSION from "1.7.2 2024-07-28"
to "1.7.3 2024-08-05".
Changed `bin/output-index-inventory.sh` VERSION from "1.4.2 2024-07-28"
to "1.4.3 2024-08-05".
Changed `bin/output-year-index.sh` VERSION from "1.4.3 2024-07-28"
to "1.4.4 2024-08-05".
Changed `bin/pandoc-wrapper.sh` VERSION from "1.7.1 2024-07-28"
to "1.7.2 2024-08-05".
Changed `bin/quick-readme2index.sh` VERSION from "1.1.6 2024-07-28"
to "1.1.7 2024-08-05".
Changed `bin/readme2index.sh` VERSION from "1.2.6 2024-07-28"
to "1.2.7 2024-08-05".
Changed `bin/status2html.sh` VERSION from "1.4.2 2024-07-28"
to "1.4.3 2024-08-05".
Changed `bin/subst.default.sh` VERSION from "1.3.1 2024-07-28"
to "1.3.2 2024-08-05".
Changed `bin/subst.entry-index.sh` VERSION from "1.3.4 2024-07-28"
to "1.3.5 2024-08-05".
Changed `bin/subst.year-index.sh` VERSION from "1.1.4 2024-07-28"
to "1.1.5 2024-08-05".
Changed `bin/tar-entry.sh` VERSION from "1.3.9 2024-07-28"
to "1.3.10 2024-08-05".
Changed `bin/tar-year.sh` VERSION from "1.2.7 2024-07-28"
to "1.2.8 2024-08-05".
Changed `bin/untar-year.sh` VERSION from "1.0.3 2024-07-28"
to "1.0.4 2024-08-05".
Changed `bin/untar-entry.sh` VERSION from "1.0.3 2024-07-28"
to "1.0.4 2024-08-05".
Performed `make www` to accomplish the above and to test under macOS.
We form a wrapper for the `jval(1)`, a tool that allow the printing of JSON values.
We propose that the grammar used by JSONPath.sh(1):
> https://github.com/lcn2/JSONPath.sh
becomes the model for how `jval(1)` prints JSON values. Consider, for, example:
> JSONPath.sh -w -f 1984/mullender/.entry.json '$author_set..author_handle'
and in particular:
> JSONPath.sh -w -b -f 1984/mullender/.entry.json '$author_set..author_handle'
as a model of printing the `author_handle` values from the JSON `author_set` array.
See the following URL for more information.
> https://github.com/lcn2/JSONPath.sh?tab=readme-ov-file#jsonpath-patterns-and-extensions