Clarify Setting up remote access section in starter docs
No information change, but updated the title and added a paragraph to clarify some of details in words that are more understandable for people not used to navigating containers.
This extracts the parts of our current frontend configuration that need
access to a Launchpad payload. Once this is deployed, we can adjust the
frontend configuration to point to it using `ProxyPass`.
https://git.launchpad.net/launchpad/commit?id=4c62ec226f broke the
`--component` option to `populate-archive.py`, because the old-style
`quote` and `sqlvalues` functions no longer work to escape instances of
models that use native Storm rather than SQLObject emulation.
We should probably convert all of `PackageCloner` to use the Storm query
compiler at some point; but this makes a few more targeted changes to
get things working again in the meantime.
Refactor time zone name handling in DateTimeWidget
`DateTimeWidget` currently works out the time zone name to display by
calling `.tzname(None)` on a time zone object. This works with `pytz`,
but it won't work once we switch to `dateutil.tz`, and there doesn't
seem to be a reasonable way to get it to work with that time zone
provider without poking about in private attributes; the best we could
do would return a time zone abbreviation string rather than the original
time zone name the user asked for (e.g. "CET" rather than
"Europe/Paris"), which isn't very satisfactory.
Since the whole approach of expecting to be able to recover the original
time zone name from a time zone object seems fundamentally dodgy, a
better approach is to explicitly keep track of the original time zone
name to start with. This needs some changes to `LaunchBag`, but the
result should be much more robust and can easily be made to work with
any time zone provider.