Preheat oven to 180 °C (350°F). Grease 38x26 cm (15x10 inch) baking pan with butter, then line it with baking paper so the cake seamlessly releases. Grease the baking paper too.
Sift the flour, cocoa powder, baking powder and salt into a large bowl bowl.
Using a hand mixer or a stand mixer beat the egg whites with a pinch of salt on high speed for 5 minutes or until stiff peaks form. Set aside.
In another bowl, beat the egg yolks, sugar and vanilla extract until pale, about 2 minutes. Add in oil and beat 30 seconds. Add in half of dry ingredients and mix until incorporated. Using rubber spatula gently fold in egg whites until half-incorporated, then gently fold in rest of dry ingredients until fully combined and there is no visible streaks of flour or egg whites. Avoid over-mixing.
Spread batter evenly into prepared pan. Bake for 10 minutes or until top of cake springs back when touched.
Place a kitchen towel on a a flat surface and cover it with a piece of baking paper dusted with powdered sugar or cocoa powder. Gently turn baked cake onto prepared kitchen towel, peel of the top layer of baking paper. Slowly roll the cake with kitchen towel, rolling from the short end to the other short end. Let the cake cool completely.
For the cranberry filling: Cook cranberries, sugar, orange zest and juice in medium saucepan over medium-low heat, mashing occasionally with potato masher, until cranberries have mostly broken down, 10 to 12 minutes. Strain cranberry mixture through fine-mesh strainer into bowl, pressing on solids with rubber spatula to extract as much puree as possible. Discard solids.
In a small bowl whisk vigorously egg, egg yolk and cornstarch, then add in cranberry mixture and whisk well. Return mixture to saucepan and cook over medium-low heat, stirring constantly with rubber spatula, 5 to 7 minutes. Remove from heat, and stir in the butter. Transfer curd to bowl, press piece of plastic wrap directly onto surface of curd, and refrigerate for at least 3 hours. Whip heavy cream until soft peaks form and mix in cranberry curd.
Gently unroll the cooled cake, and spread the filling into an even layer onto top (you may not spend all the filling, I have had a few tablespoons left). Then carefully re-roll the cake, without the towel this time. Wrap the chocolate roll in plastic wrap and refrigerate at least 2-3 hours. I always cool my cake overnight.
Once cooled, pour ganache all over the cake roll, or simply dust it with powdered sugar.
For ganache: Place chopped chocolate and honey, if using, in a bowl. Heat the cream in a small saucepan until it begins to gently simmer, then pour it over the chocolate. Let it sit for 2-3 minutes to gently soften the chocolate, then stir until smooth. You should get a smooth runny ganache that's easily pourable.
Pour ganache all over cake roll. Refrigerate for at least 30-60 minutes before slicing and serving.
Store it in refrigerator in air-tight container for up to 3-4 days.