Why does "Step in" behave like "Resume"?

When the debugger stops at the highlighted line and I click on “Step Over”, everything works as expected.

When I click on “Step In”, the execution continues as if I had clicked on “Resume”.

Is this normal?

image

1 Like

the next line of code would execute outside of the scope of your app’s modules
i.e. in the anvil.tables module
we don’t currently support stepping into code that your app doesn’t own
either in dependency code or in anvil modules

Better support for viewing dependency code in the IDE is on our list
supporting anvil modules is less easy
some anvil modules are defined in javascript

1 Like

You mean this limitation affects the normal behavior of Step In?

I’m not expecting the debugger to step into the anvil.tables module, but I would expect Step In to skip over that internal module and move to the next line in my current module, similar to what Step Over would do.

1 Like

Yes I’d expect it to go to the next line of execution in your app.

If you can create a minimal example we’ll take a look.

Create an app with:

  1. A form with this:
    image

  2. A server module with this:
    image

  3. A table with this:
    image

Set breakpoints on the two lines x = 5 and x = 2, then run the app.

When execution pauses at x = 2, pressing Step In or Step Over twice should move through app_tables.table_1.get and stop at x = 3.

While Step Over behaves as expected, Step In instead acts like Resume: it continues execution, leaves the current scope, and jumps to the next breakpoint at x = 5.

Here is the clone link:

2 Likes

thanks for that, moved to bug reports. We’ll ship a fix soon

1 Like