Heat oil in a medium saucepan over medium heat. Add shallot, and cook, stirring occasionally, until tender, about 3 minutes. Add rice, and cook for 1 minute. Add chicken stock, and bring to a boil. Reduce heat, and simmer, covered, until rice is tender and starting to burst, 45 to 50 minutes. Drain any excess liquid. Transfer to a bowl.
While rice cooks, preheat oven to 400 degrees. Arrange pecans on a rimmed baking sheet, and toast until browned and fragrant, about 8 minutes. Let cool. Coarsely chop pecans.
Add toasted pecans, cranberries, raisins, and parsley to rice. Season with salt and pepper. Serve warm or at room temperature.
This dish is best the day it's made but can be prepared a few hours ahead. Let stand at room temperature until you're ready to serve it.