Season the pigeon pieces with a little salt and pepper. Heat the oil in a heavy-based pan over a medium to high flame. Sauté the pigeon until lightly coloured, then transfer to a plate and set aside.
Add the butter to the pan then lower the heat and sweat the shallots, garlic, celery, and carrot until soft, but not coloured. Add the mushrooms to the pan, together with the bay leaf and thyme. Pour in sherry and red wine and simmer gently for 5 minutes to burn off the alcohol. Add the stock and cornflour paste and cook for another minute or until sauce begins to thicken. Remove from heat and leave to cool.
Grease a 1 ½ litre pudding basin. Set aside a quarter of the pastry for the lid of the pudding. Roll out the rest to form a large circle, no more than 1 cm thick, and use it to line the pudding basin. Arrange the pigeon pieces on the bottom of the dish then spoon the filling into the pudding, packing it fairly firmly. Roll out the pastry lid. Wet the edges and set it on top of the pudding. Press to seal well. Cover with baking paper and tie securely under the lip of the pudding basin (if you have one). Wrap the pudding in a tea towel and fasten with string at the top.
Place in a steamer, or if you don’t have a steamer, sit on a rack or small upturned plate in a saucepan. Pour in boiling water to come two-thirds up the side. Cover the steamer or saucepan with a tight-fitting lid and steam over a low-medium heat for 2 to 2 ½ hours. You will probably need to top up the water from time to time.
Carefully lift the pudding out of the water and leave for 5-10 minutes to rest before serving at the table.