LEAGUE Two leaders Swindon's nine-match unbeaten run came to an end with a surprise 2-0 defeat at mid-table Port Vale.

Scott Burgess, with his first goal since September, and Jake Taylor scored either side of the break to inflict on Richie Wellens' side a first league defeat since October and end Vale's own six-match winless run.

Town stay two points in front of second-placed Exeter, who were held to a 2-2 draw by fellow promotion chasers Colchester at the JobServe Community Stadium.

United conceded an eighth-minute goal to Jake Taylor but went in front thanks to strikes from Harry Pell and Theo Robinson.

Exeter levelled in the 77th minute when Colchester's Tom Lapslie was dismissed for denying a goalscoring opportunity after a foul in the area on substitute Ryan Bowman, who scored from the spot.

Crewe stay third after returning to winning ways with a 3-1 victory over Scunthorpe at Gresty Road.

Daniel Powell's double and a tap-in from Paul Green ensured a 12th win of the season for the Railwaymen, with Lee Novak getting Scunthorpe's only goal late on.

Northampton's six-game winning run came to an end when they were held to a 1-1 draw at home by Cheltenham.

The visitors took the lead after just two minutes with a penalty from Conor Thomas after George Lloyd was bundled to the ground by Jordan Turnbull but Northampton equalised before half-time as Scott Flinders parried Nicky Adams' free-kick out to Vadaine Oliver, who teed up Turnbull for a simple finish.

Robins substitute Alex Addai was shown a late red card following an altercation with Charlie Goode.

Salford were the division's top scorers as they produced a slick attacking performance to hammer local rivals Oldham 4-1 at Boundary Park.

Jake Jervis and Brandon Thomas-Asante both scored twice as the visitors led 4-0 and Chris Neal saved a penalty from Oldham's former Bantam, Filipe Morais, before the home side grabbed a consolation though Desire Segbe Azankpo.

Stevenage stay bottom after Plymouth central defender Niall Canavan bundled in a stoppage-time winner to condemn them to a 2-1 defeat at Home Park.

Argyle, who climb to seventh in the table, had taken a 23rd-minute lead through Byron Moore but Boro levelled through Elliott List and thought they had secured a precious point until Canavan struck in the sixth minute of added time.

Morecambe are just a point above Stevenage after going down to a 1-0 defeat at Cambridge, where Jack Roles scored the winner on 57 minutes.

Farrend Rawson's second-half header enabled Forest Green to bring their seven-game winless run to an end with a 1-0 home victory over Macclesfield.

Harry McKirdy's stoppage-time header handed Chris Beech his first league win as Carlisle manager as the Cumbrians won 2-1 at 10-man Walsall.

Saddlers striker Elijah Adebayo cancelled out Nathan Thomas' opener but skipper James Clarke saw red for Walsall before McKirdy looped home a last-gasp winner.

Newport's winless run of nine games continued as they were held to a 1-1 draw by Leyton Orient at Rodney Parade.

A first-minute goal by Ruel Sotiriou put the visitors ahead before Padraig Amond equalised with eight minutes to go.

Elsewhere Grimsby and Crawley ended the decade with a low-key draw in their clash at Blundell Park.

Jake Hessenthaler opened the scoring for the home side after two minutes while Ashley Nadesan equalised for Crawley.