On Apr 12, 2010, at 12:39 PM, Jonathan Lundell wrote:

> On Apr 12, 2010, at 12:17 PM, Yarko Tymciurak wrote:
> 
>> On Apr 12, 2:15 pm, Jonathan Lundell <jlund...@pobox.com> wrote:
>>> On Apr 12, 2010, at 11:52 AM, DenesL wrote:
>>> 
>>>> In 1.76.3, and probably others, model files can not end with a comment
>>>> line:
>>> 
>>>> Traceback (most recent call last):
>>>> File "D:\web2py\hg\gluon\restricted.py", line 171, in restricted
>>>>   ccode = compile(code.replace('\r\n', '\n'), layer, 'exec')
>>>> File "D:/web2py/hg/applications/mssqltest/models/db.py", line 111
>>>>   #
>>>>   ^
>>>> SyntaxError: invalid syntax
>>> 
>>>> Adding an empty line fixes the problem but figuring that out is a
>>>> waste of time.
>>> 
>>> FWIW, compile() requires at least one terminal newline. Perhaps it'd be 
>>> reasonable to append one (along the the \r\n conversion).
>> 
>> hmmm..... I am not able to reproce this;  I even ensured that the
>> model file I tested with actually had NO newline after the comment:
>> 
>> $ od -c mymodel.py
>> ...
>> 0001640   t   i   o   n       t   o   o   l   "  \n   #
>> 0001654
>> 
>> Mine runs fine.
>> 
>> I wonder if this is a platform, or python version specific thing...
>> 
>> Can you provide more details?
> 
> I ran into it a week or two ago on OS X, Python 2.6.4.
> 
> http://docs.python.org/library/functions.html
> 
>> Note When compiling a string with multi-line code, line endings must be 
>> represented by a single newline character ('\n'), and the input must be 
>> terminated by at least one newline character. If line endings are 
>> represented by '\r\n', usestr.replace() to change them into '\n'.

...or maybe it was Linux. I forget.



-- 
To unsubscribe, reply using "remove me" as the subject.

Reply via email to