This is triggered by an environment variable that points at a file that
is used to cache polling results. If the variable is not specified just
use all mirror links as usual. This way, for random builds when people
try things out there is no problem, while the nightly builds (and my
manual builds when there are changes) do the right thing.
The file holds information about the polls, and verifies that the
download exists -- if not, the link is not shown. If it is, then it
tries to get the size of the remote file (via HEAD or via FTP), and if
it doesn't match our download information, then drop it too. If no size
informaion is available, include it, but re-poll after a few days. Even
if the size matches, a re-poll will be done after a month, so stale
mirrors will not stick.
Not too much, but already tests large parts of sensitive code. Caught a
bug where ,top would use (enter! #f) but enter grabbed the wrong
namespace since it was instantiated in the wrong namespace.
The problem is that it spits out a warning message on stderr whenever it
can't find a git repository to extract release announcements (from
annotated tags). Resolving this will require some way to (a) tell drdr
to ignore such output, (b) make it run the code with a $GIT_DIR
environment variable set to the git tree, or (c) make it set some
environment variable so the web build will avoid such messages. (I
prefer the first most, and the last least.)
See in-code comments for how this is just a rough feature to be used if
needed (and improved when it becomes necessary). That can just as well
go to the FIXME of using a string constant.
* Add captcha url (unused, yet)
* The second argument to `call/input-url' can be a one-argument function
since the call doesn't send it any headers.
Still needs to be done: check the HTTP response for an error status, and
make it fail as a result (currently it just assumes that any response is
fine, which can change in case of a captcha failure). Then, add a
captcha challenge if one is found, otherwise ignore.
This makes it correspond to the license page we have on downloads that
talks about the "lesser" GPL rather than the "library" one.
Also, change the file name to have a more friendly .txt suffix, and add
some more responsible properties for things in doc/release-notes.
Also get rid of the defunct "chronology" link at the bottom of the
community page. It was a very old (pre-svn/git) leftover from a time
where that was relevant for people who want to participate.