~samkenx/launchpad/+git/launchpad-2:master

Last commit made on 2023-06-15
Get this branch:
git clone -b master https://git.launchpad.net/~samkenx/launchpad/+git/launchpad-2
Only SamKenXStream can upload to this branch. If you are SamKenXStream please log in for upload directions.

Branch merges

Branch information

Name:
master
Repository:
lp:~samkenx/launchpad/+git/launchpad-2

Recent commits

bc4bd6a... by Colin Watson

charm/launchpad-assets: Add http interface support

Merged from https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/444384

Succeeded
[SUCCEEDED] docs:0 (build)
[SUCCEEDED] lint:0 (build)
[SUCCEEDED] mypy:0 (build)
13 of 3 results
822d773... by Colin Watson

Avoid showing memory addresses in API errors

Merged from https://code.launchpad.net/~cjwatson/launchpad/+git/security/+merge/444818

43e1699... by Colin Watson

Remove direct dependencies on pytz

Merged from https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/444821

fd0eaf0... by Colin Watson

Fix update-pkgcache crash due to binary deletion

Merged from https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/444768

c22c48b... by Colin Watson

Fall back to UTC if time zone name is invalid

Fixes a type discrepancy spotted by `mypy`.

a8c5f51... by Colin Watson

Remove direct dependencies on pytz

`dateutil.tz` is a better fit for Python's modern timezone provider
interface, and has fewer footguns as a result.

The only significant downside is that we have to reimplement something
similar to `pytz.common_timezones` for use by our timezone vocabulary.
Fortunately this isn't too difficult.

5f00d80... by Colin Watson

Avoid showing memory addresses in API errors

The `__repr__` for a number of Launchpad objects included their memory
addresses. I've never found this useful for debugging, and, since these
sometimes show up in error messages on the webservice API, they could
potentially allow bypassing ASLR in attacks on the appserver. Remove
memory addresses from `__repr__` throughout.

Reported by halfdog.

LP: #1635787

37ad5d5... by Colin Watson

Fix update-pkgcache crash due to binary deletion

The `update-pkgcache` script started crashing on production about a week
ago, and mysteriously started working again today without us changing
anything. Based on code inspection, the only way I can see for this
particular crash to happen is if a binary was deleted between
`DistroSeriesPackageCache.findCurrentBinaryPackageNames` and
`DistroSeriesPackageCache._update` (`update-pkgcache` is slow enough
that it makes many commits along the way, so this is possible), and
simulating that in a test reproduces the same crash.

It seems safe to skip the affected binary in such cases, since
`DistroSeriesPackageCache.removeOld` will eventually clean up its cache
entries.

LP: #2023698

fa9c350... by Ines Almeida

Add notes about workflow to follow to build a charm for launchpad

Merged from https://code.launchpad.net/~ines-almeida/launchpad/+git/launchpad/+merge/444047

Succeeded
[SUCCEEDED] docs:0 (build)
[SUCCEEDED] lint:0 (build)
[SUCCEEDED] mypy:0 (build)
13 of 3 results
b7e3c6b... by Ines Almeida

Update 'how to build a LP charm' docs

Fix identation issues