As usual there was a bumper crop of by-elections in April and May as those councils without annual elections took advantage of the lighter evenings and the raised political temperature to fill their casual vacancies.
The results were consistent with the pattern that has been developing over the past several months - significant Conservative gains and Labour losses. Followers of local by-elections will have been not in the least surprised by the national tide against Labour on 4 May, however inconsistent it appeared to be with the government's still healthy opinion poll rating.
Close analysis of local by-elections can also be helpful in pinpointing examples of potentially significant electoral trends. The Liberal Democrats for example have been steadily losing seats to the Conservatives in most parts of England. Yet just
On 6 April the Lib Dems lost a seat to the Conservatives in Kennet DC apparently confirming the Tory recovery in its heartland areas. By contrast, just a week later and in an adjoining local authority, there was a dramatic 18% swing from the Conservatives to the Lib Dems in the Harewood ward of Test Valley BC.
That proved to be an uncanny foretaste of the parliamentary by-election result in Romsey, in which the ward is situated. A few days later the Lib Dems won a seat from the Conservatives in East Devon DC where they had not even fielded a candidate in the 1999 whole council elections.
In all three contests the Labour vote was squeezed, but in Test Valley and East Devon it was reduced to the derisory proportion of 3% or less. A key factor in securing that outcome was the Lib Dems' tightly focused local campaign featuring the traditional tools of community politics, such as targeted and personalised letters and election morning voting reminders.
Electors were left in no doubt that 'Labour has no chance', and many will have been persuaded to vote Lib Dem to thwart a Conservative victory. The same tactics, on a larger and better resourced scale, paid off in Romsey too.
All this begs the question whether these results will be a more accurate guide to how the Lib Dems perform at the next general election than those in say Torbay Council, where the party was routed by the Conservatives on 4 May.
There seems some evidence that the Conservatives have made considerable strides in urban areas right along the south coast from Southend-on-Sea BC in the east to Plymouth City Council in the west.
But further inland, and especially in the expanding communities of the various so-called 'silicon' and 'dot-com' corridors, the Lib Dems have been able to hang on to their support. They comfortably retained control in Eastleigh BC, Winchester City Council and West Berkshire Council last month, and with that gavenew confidence to the sitting Lib Dem MPs in those localities.
The strong likelihood remains that there will be an overall swing from the Lib Dems to the Conservatives at the next general election. Nonetheless, expect the Lib Dems to have learned the lessons of Test Valley BC and East Devon DC and emerge with more seats at Westminster than predicted by those pundits who simply apply a slide rule across the country.
The Lib Dems have also been making waves, this time against Labour, in annual and by-election contests alike at the other end of the country. Gaining control of Oldham MBC was the headline achievement of 4 May, but in by-elections in successive weeks since they have taken seats from Labour in York to deprive the party of its previous very narrow majority.
To an outside observer it seemed the height of folly for Labour to try to defend seats in such circumstances. The party is finding it difficult enough as it is to persuade its core voters to turn out, without allowing its main local rival the luxury of doing what they do best - concentrating their resources in one area, one campaign at a time. If both the York elections in question had been held on the same day, Labour might have retained at least one of its seats - as it was they were soundly beaten following swings of 17% and 24%.
The dilemma such a situation presents to challenging parties was neatly illustrated last month when two vacancies occurred on the same day in Vale of Glamorgan Council. Despite finishing in last place in both wards in 1999, the Lib Dems threw all their resources at one of the wards and effectively ignored the other. In their target area they doubled their share of the vote and won - in the other ward their vote slumped by more than half. How Labour must wish a similar opportunity had arisen in York.
Kennet DCWest SelkleyCon gain from Lib Dem6.8 over Lib Dem37.8
Staffordshire Moorlands DCBiddulph EastLab held 52.9 over Lib Dem19.3
Suffolk Coastal DCPeninsulaLib Dem held38.3 over Con32.0
Blyth Valley BCCowpenLab held18.5 over Lib Dem14.7
Bromsgrove DCFurlongsCon held56.8 over Lab22.0
Cornwall CCSt. Day And LannerInd gain from Lib Dem10.8 over Lib Dem27.6
Derbyshire CCMelbourneCon held4.9 over Lab28.7
Dover DCSt. Margarets- At- CliffeCon held53.0 over Lab35.2
Kerrier DCSt Day And LannerInd gain from Lib Dem18.4 over Con27.6
Hertfordshire CCOffaCon gain from Lab14.1 over Lab27.9
Leeds CityHarehillsLib Dem gain from Lab5.3 over Lab31.5
South Lanarkshire Woodhead/Meikle EarnockLab held19.1 over SNP28.7
StirlingHighlandCon gain from SNP25.8 over SNP43.0
Test Valley BCHarewoodCon held10.8 over Lib Dem49.0
Uttlesford DCStort ValleyLib Dem held11.5 over Con48.7
Western Isles Manor ParkInd gain from Lab38.7 over SNP67.0
East Devon DCPattesonLib Dem gain from Con3.3 over Con40.0
Melton BCBottesfordCon gain from Lab11.8 over Lab42.0
Bridgend CBCPendreLib Dem gain from Lab14.9 over Lab35.0
Clackmannanshire Delph & CambusSNP gain from Lab18.9 over Lab46.3
Ealing LBCValeLab held3.1 over Con24.6
City of EdinburghFirrhillLab held11.2 over SNP37.3
Teignbridge DCCollegeLib Dem held15.5 over Con22.0
Teignbridge DCPowderhamLib Dem gain from Lab14.5 over Lab28.4
Aylesbury Vale DCWingCon gain from Lib Dem0.9 over Lib Dem44.3
Ashfield DCHucknall CentralLab held1.8 over Con28.1
Babergh DCGreat Cornard NorthLab held12.8 over UKIND19.5
Bath & North East SomersetLansdownCon held17.4 over Lib Dem39.9
Blaby DCFlamvilleCon held29.6 over Lib Dem29.7
Bournemouth BCMoordownCon gain from Lib Dem1.6 over Lib Dem23.2
Bournemouth BCWestbourneCon held58.6 over Lib Dem30.7
Cherwell DCGosfordCon held2.4 over Lib Dem47.6
Copeland BCMirehouseLab held59.4 over Con29.5
Croydon LBCNew AddingtonLab held8.8 over Con26.8
Gloucestershire CCHesters WayLib Dem held35.8 over Con21.7
Greenwich LBCTrafalgarLab held14.4 over Lib Dem40.4
Hampshire CCBasingstoke NorthLab held22.6 over Con20.2
Hart DCHookCon held12.3 over Lib Dem26.7
Hertfordshire CCBushey HeathCon held29.7 over Lib Dem32.7
Hertfordshire CCShephallLab held43.5 over Con25.5
Kensington & Chelsea LBCEarls CourtCon held17.3 over Lab28.7
Lancashire CCSouth Ribble SouthLib Dem held 14.7 over Lab32.0
Lancashire CCWest Lancashire SouthCon held41.2 over Lab30.4
Macclesfield BCKnutsford Norbury BoothsCon held59.1 over Lab31.8
North Kesteven DCBrant BroughtonCon gain from Lib Dem19.2 over Lib Dem44.0
Rushcliffe BCMalkinCon held30.4 over Lab38.5
Salisbury DCWhiteparishCon held5.6 over Lib Dem59.8
Scarborough BCStreonshalh1 Lib Dem gain from Lab; 33.0
1 Ind gain from Lab
South GloucestershireStoke Gifford2 Con gain from Lab 33.7
Suffolk Coastal DCBramfield And CratfieldCon held27.4 over Lib Dem40.0
Tonbridge & Malling BCWrothamCon held20.9 over Lib Dem45.1
West Devon DCMilton FordCon gain from Ind4.1 over Lib Dem41.0
Westminster CityChurch StreetLab held25.0 over Con32.0
Westminster CityHarrow Road2 Lab held 34.5
Vale of Glamorgan Dinas PowysPC held3.6 over Con38.4
Vale of Glamorgan LlandoughLib Dem gain from Lab8.3 over Lab48.4
City of York BoothamLib Dem gain from Lab10.4 over Lab35.3
Caradon DCLansallosLib Dem gain from Ind23.0 over Con41.0
Dover DCCastleCon held38.5 over Lab34.1
Forest of Dean DCBroadwellLab held21.1 over Con40.7
City of York MonkLib Dem gain from Lab18.8 over Lab42.0
Harrow LBCWealdstoneLab held30.9 over Lib Dem26.1
Carmarthenshire CCPontyberemPC gain from Ind Lab23.6 over Lab50.1
Ceredigion CCAberystwyth EastPC held12.3 over Lib Dem38.0
Thurrock BCAveley Con gain from Lab29.5 over Green12.5
Tynedale DCHexham GilesgateCon gain from Lab12.5 over Lab53.0