D1 => D2 request->referer in LIST context has changed
If there is *no* referrer then @z = request->referer; used to return an 'undef' Now it returns and empty list. This blew up in my code that had %h = ( ref => request->referer, .... ); so I'll have to replace that code with %h = ( ref => scalar request->referer, .... ); or with %h = ( ref => ( request->referer // ''), .... ); I understand that the D2 behaves "more correctly" than D1 did, but I'd like to verify. Is this change is also intentional? Could you point out where else has this change happened? regards Gabor
Hey, Let me copy the reply I gave on the issue on Github regarding this for whoever isn't following Github issues: That's a good catch! We changed `referer` to simply use `Plack::Request`'s `referer` method. This makes it more consistent with another publicly-known interface to a Plack request (the canonical one, in fact). I'm sorry to hear you had code depending on it which now failed. Here is the relevant commit: 738b4f15ea3ae72900c17763044cd1ac143d13b3 There was a small mistake there that was fixed in the commit after: 3f885d0d8ca173e5620354be1d5a12802930add7 S. On Wed, Dec 10, 2014 at 8:34 PM, Gabor Szabo <gabor@szabgab.com> wrote:
If there is *no* referrer then
@z = request->referer; used to return an 'undef'
Now it returns and empty list.
This blew up in my code that had
%h = ( ref => request->referer, .... );
so I'll have to replace that code with
%h = ( ref => scalar request->referer, .... );
or with
%h = ( ref => ( request->referer // ''), .... );
I understand that the D2 behaves "more correctly" than D1 did, but I'd like to verify. Is this change is also intentional? Could you point out where else has this change happened?
regards Gabor
_______________________________________________ dancer-users mailing list dancer-users@dancer.pm http://lists.preshweb.co.uk/mailman/listinfo/dancer-users
participants (2)
-
Gabor Szabo -
Sawyer X