'Europe/London' should contain DST transition information, if it is
present in the zone files. So the first question is, where is your
tzdata coming from?
If you have not installed pytz as recommended by the docs, you are
relying on your database and OS to get things right.
For me, with pytz installed, 'Europe/London' has DST info:
>>> import pytz
>>> dt = pytz.timezone('Europe/London')
>>> pprint(dt._utc_transition_times)
[datetime.datetime(1, 1, 1, 0, 0),
datetime.datetime(1901, 12, 13, 20, 45, 52),
datetime.datetime(1916, 5, 21, 2, 0),
datetime.datetime(1916, 10, 1, 2, 0),
datetime.datetime(1917, 4, 8, 2, 0),
....
datetime.datetime(2036, 10, 26, 1, 0),
datetime.datetime(2037, 3, 29, 1, 0),
datetime.datetime(2037, 10, 25, 1, 0)]
Cheers
Tom