Main change is that 'unversioned.qbk' now has null release_data. Will
result in a change to the qbk_hash, but I'll manually handle that. This
means that its no longer a 'release' but still want it to appear on
history page.
Was updating it every time an item was updated, this was unnecessarily
slow. Typically, only a very small number of items are updated per run,
so it shouldn't make much of a difference, but a lot faster if many
items are updated.
Pretty large development merge. Including:
- More robust PHP error handling.
- Automatically update release data from various sources. Manually
updating a json file was too error prone.
- Normalize hashes of release notes, so that they won't need to be
manually updated so often.
- Small improvements to quickbook page data.
- Cache html generated from quickbook - so no need to reparse when
changing release data. Much of the site can now be rebuilt without
installing quickbook, although changes in quickbook won't be included.
- Scripts in site-tools have are more consistent at the command line,
and all support '--help' (although some have very little information).
- Automatically update more of the site for new releases.
Previously was using the quickbook file's pub_date, By using the date
the release script was run on, can release without updating the
quickbook file. So the release manger won't need to have quickbook
installed. At least in theory!
This code was added for transitioning from the old data format, now that
it is no longer in use, probably isn't needed any more. At some point
older version will stop working anyway as I'm not testing for full
backwards compatability. But I'll leave it in for a little while longer.
The problem is that if a beta had been released, then when the next
beta, or the final release was first added it would override the beta.
This would then set the status to unreleased. The whole release_status
mechanism is a bit messy and may need to be reconsidered.
So that the hah values remain the same as they are on master.
Probably more effort than was required to manually fix the hashes every
time they change, but I was getting a bit fed up of that. Although I
suspect some reason will still come up so that I'll have to manually fix
the hashes again.
Currently no way to update it (apart from manually, which is awkward),
but the plan is to do so automatically.
This messes up the hashes again. Probably best to resolve manually,
although it might be possible to emulate the old hashes.