[dancer-users] Failing to send a file in iso-8859-1

Stefan Hornburg (Racke) racke at linuxia.de
Fri Oct 7 07:58:11 BST 2016


On 10/07/2016 08:47 AM, Lutz Gehlen wrote:
> Hi Pete,
> 
> On Thursday 06.10.2016 15:32:05 Peter Mottram wrote:
>> On 06/10/16 15:03, Stefan Hornburg (Racke) wrote:
>>> On 10/06/2016 02:56 PM, Lutz Gehlen wrote:
>>>> On Wednesday 05.10.2016 20:58:22 WK wrote:
>>>>> 2016-10-05 19:59 GMT+03:00 Lutz Gehlen <lrg_ml at gmx.net>:
>>>>>> send_file(
>>>>>>
>>>>>>     \$str,
>>>>>>     content_type => 'text/csv',
>>>>>>     filename     => 'foo.csv',
>>>>>>
>>>>>> );
>>>>>>
>>>>>> The problem is that external requirements force me to send the file
>>>>>> in iso-8859-1 and it seems that I cannot manage to achieve that.
>>>>>
>>>>> As far as I understand, the charset is set in config, so you could
>>>>> try to override the setting in your route like:
>>>>>
>>>>> set 'charset'      => 'iso-8859-1;
>>>>>
>>>>> Never tried, but it should work.
>>>>
>>>> Yes. this works. However, it changes charset permanently (for the
>>>> current process) and I don't get the chance to change it back
>>>> because send_file does not return. Is there no way to set it
>>>> temporarily just for this send_file?
>>>
>>> you could (re)set the charset in the "before" hook to the normal one.
>>>
>>
>> There ought to be a way to set charset as an option to send_file.
>>
>> I've created an issue: https://github.com/PerlDancer/Dancer2/issues/1260
> 
> You have created the issue in the Dancer2 project, is this intended?
> 
>> Lutz: could you please check this issue and add further comment if
>> needed? Also let us know if you'd like to have a go at a PR. If not I'll
>> create a patch.
> 
> Thank you for encouraging me to implement this myself. I'd like to give it 
> a try. I might need some assistance with the pull request, though. I am 
> familiar with git and have an account on github, but I have never submitted 
> a pull request before.
> 
> I guess that I will fork https://github.com/PerlDancer/Dancer to my github 
> account, then do my work, and then somehow submit a pull request. Is this 
> the correct procedure?

You are doing your work in a branch on your fork, e.g. pr/send-file-charset
and push that branch to your fork.

After that PR will be offered to create on the Github website.

> 
> How should I go about it with respect to Dancer1/Dancer2? I myself need the 
> feature in Dancer1. Should I implement it there? Or both? Or is Dancer1 
> even somewhat feature-frozen?
> 

Dancer1 is somewhat feature frozen, but this would be bugfix IMHO.
At any rate, David Precious as Dancer 1 maintainer will determine whether
to apply it.

Regards
	Racke


-- 
Ecommerce and Linux consulting + Perl and web application programming.
Debian and Sympa administration.


More information about the dancer-users mailing list