Its not a matter of easy, but more a matter of it even being a possibility. There is no way to know where you intended to place the pass statement.
-- Thadeus On Mon, Aug 2, 2010 at 11:47 AM, Michael Ellis <michael.f.el...@gmail.com> wrote: > Ok, think I know what was going on: > 1. I did have a missing pass statement > 2. I had not restarted web2py after updating from tip this morning. > It's probably not fair to expect web2py to show the correct errors after > repairing the engine while the motor's still running :-} > So I immediately got the missing pass error after restarting. FWIW it would > be really helpful if the template parser could give some indication of which > loop or conditional might responsible. I know that's not as easy as it > sounds, though. > Thanks for the help! > Mike > > > On Mon, Aug 2, 2010 at 12:32 PM, Jonathan Lundell <jlund...@pobox.com> > wrote: >> >> On Aug 2, 2010, at 9:21 AM, Michael Ellis wrote: >> >> > I'm pretty sure it does because I've fixed several instances during >> > the past two days by correcting pass statements. I'll try to create >> > a minimal example to post here. >> >> That would be good. Whatever it is, it's leading to rocket seeing an empty >> request from the client. If it's possible to cause that from a view, then >> hopefully it'll be possible to catch the error earlier and raise a more >> helpful exception. >> >> >> > >> > On Aug 2, 12:13 pm, Thadeus Burgess <thade...@thadeusb.com> wrote: >> >> The template system actually emits an error that says "Missing pass in >> >> view" or "too many pass in view". >> >> >> >> This has to do with cron / rocket failing, nothing to do with template. >> >> >> >> -- >> >> Thadeus >> >> >> >> On Mon, Aug 2, 2010 at 10:57 AM, Michael Ellis >> >> >> >> >> >> >> >> <michael.f.el...@gmail.com> wrote: >> >>> One of my views has a number of if else clauses to control what the >> >>> user sees depending on context. I'm finding it painfully difficult to >> >>> debug because omitting a pass statement generates a not very helpful >> >>> error: >> >> >> >>> Traceback (most recent call last): >> >>> File "/Users/mellis/w2ptip/gluon/rocket.py", line 871, in run >> >>> self.run_app(conn) >> >>> File "/Users/mellis/w2ptip/gluon/rocket.py", line 1281, in run_app >> >>> self.environ = environ = self.build_environ(sock_file, conn) >> >>> File "/Users/mellis/w2ptip/gluon/rocket.py", line 1114, in >> >>> build_environ >> >>> request = self.read_request_line(sock_file) >> >>> File "/Users/mellis/w2ptip/gluon/rocket.py", line 942, in >> >>> read_request_line >> >>> raise SocketClosed('Client closed socket.') >> >>> SocketClosed: Client closed socket. >> >> >> >>> Usually I can spot the problem visually, but I've been stuck for over >> >>> an hour just now and can't find what's wrong. Are there errors other >> >>> than missing pass statements that will cause this? Also, where would >> >>> I need to set a breakpoint to step through template parsing (and is >> >>> that a useful thing to do) ? >> >> >> >>> I'm working at tip. >> >> >> >>> Thanks, >> >>> Mike >> >> > >