Preheat the oven to 375 degrees F.
Line a 15 x 10-inch jelly-roll pan with parchment paper, leaving an extra 1-inch parchment sticking on the sides of the pan so that you can easily lift the cake from the baking sheet.
In a large bowl whisk together flour, cinnamon, baking powder, ginger, salt, nutmeg.
In a separate large bowl, whisk together eggs and sugars for 1 minute until combined. Whisk in the oil, vanilla, ground walnuts, shredded carrots, and whisk just until combined.
After that, fold in the dry ingredients with a rubber spatula, and stir together until just combined. Do not overmix.
Spread the batter evenly into the prepared pan. Bake for 10 to 13 minutes, or until the top of the cake springs back when lightly pushed.
Remove the cake from the oven and immediately carefully lift the cake from the pan and onto a flat surface.
Then slowly, roll the cake from the short end to the short end. Place it onto a wire rack to cool until it reaches room temperature.
In a mixing bowl beat butter until creamy, add cream cheese, sugar, and vanilla. Beat until smooth and combined, scraping the sides and bottom of the bowl.
When the cake has reached room temperature, transfer it to a flat surface, and carefully unroll it until it is flat again with the ends curled up just a bit.
Spread the cream cheese frosting evenly over the cake, leaving about a 1-inch border on all sides. Sprinkled on the raisins if using, or chocolate chips.
Carefully and gently re-roll the cake, peel away the parchment paper.
Tightly wrap the carrot cake swiss roll in plastic wrap and refrigerate for a few hours for best results.
Remove and unwrap the carrot cake roll and transfer it to your serving dish. Dust it on all sides with powdered sugar.
Slice and serve.
