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.