Heat oven to 180C/160C fan/gas 4. Rinse the turkey inside and out, then pat dry with kitchen paper. Weigh it to calculate the cooking time, allowing 40 mins per kg for the first 4kg, then 45 mins for each 1kg over that weight. Finely grate 1 tsp zest from the lemon and set aside for the stuffing. Cut the lemon into 4-6 wedges and tuck into the turkey cavity with the shallots and herb sprigs. Rub the turkey all over with the butter, then season with salt and pepper. Put the onion wedges in the middle of a large roasting tin and sit the turkey on top. Cover with a loose tent of foil, then roast following your calculated time.
Make the stuffing. Chop just over half the pecans and reserve the remaining. Line the base of a baking tray or sheet (big enough to take 16 stuffing balls) with baking parchment. Heat the oil and butter in a frying pan, tip in the shallots and garlic, and fry for a few mins until softened. Stir in the chestnuts and chopped pecans, then tip into a large bowl and cool. Squeeze the sausages from their casings and add to the bowl with the nut mixture. Add the remaining stuffing ingredients, including the reserved lemon zest, and season with salt and pepper. Shape the stuffing mixture into 16 balls. Break the remaining pecans into big pieces and press a piece into top of each ball. Arrange balls on the prepared tray, cover with buttered baking parchment and chill until ready to cook. Can be made 1 day ahead and chilled.
Make the glaze. Mix the honey, mustard, remaining 1 tbsp butter and soy sauce in a small bowl and set aside. Thirty mins before the end of the cooking time, remove the turkey and increase oven to 200C/180C fan/gas 6. Remove the foil, then return the bird to the oven for a further 10 mins. Remove again, brush the turkey with the glaze, then roast for another 20 mins until golden. If you are roasting potatoes, put them in now. To test if the turkey is cooked, pierce the fattest part of the thigh with a skewer – the juices should run clear, not pink. If they are pink, continue to roast, checking at 10 min intervals.
Remove the turkey from the oven, transfer to a warm serving platter and rest, covered loosely with foil so it doesn’t stick to the glaze, for up to 1 hr before carving. Meanwhile, cook the stuffing balls and shallots. Increase oven to 220C/200C fan/gas 7. Bake stuffing balls in the oven for 25-30 mins, removing the paper for the last 5 mins if they need browning.
Make the shallots. Put the shallots in a small roasting tin, toss in the oil, scatter over a few thyme and sage sprigs, and season with salt and pepper. Roast for 25-30 mins, turning half way, until shallots are nicely caramelised.
Make the gravy. Pour off any excess fat from the roasting tin but leave the juices and onions. Sprinkle in the flour, set tin over a medium heat and cook, stirring for a couple of mins to cook the flour, scraping up any sticky bits from the bottom of the tin. Gradually pour in the stock, along with any resting juices from the turkey, and continue to stir until slightly thickened. Simmer gently for about 10-15 mins or until reduced to your liking. Season with salt and pepper if needed. Strain gravy into a pan, warm through, pour into a jug and serve with the turkey. Serve the turkey surrounded with stuffing balls, roasted shallots, and thyme and sage sprigs.