I'm curious whether anyone else is experiencing this...
I have an Apache server local to my mac and I have the docroot of the server mapped directly to the docroot of my project. I have a project php file that's autoloaded by a custom autoloader. It is not namepsaced. The physical path to the file does not match the 'logical' path because the autoloader is remapping the class location. In other words a request for the class 'Template' is mapped to 'lib/template.php' (I don't know if this is actually the source of the problem). PhpStorm will stop at a breakpoint in index.php and also stop at a breakpoint in any file required by index.php directly. But it breeezes right past the breakpoints in lib/template.php. I know the file is being parsed because an xdebug_break() inserted in the same location as the phpstorm breakpoint does insert a break.
So this looks like a mapping problem. If I setup a server in preferences, turn on mapping, and insert an xdebug_break() in lib/template.php, PhpStorm stops at the breakpoint and tells me that the path isn't mapped properly. I jump into the server path mapping and setup the path for lib/template.php for both the server and the local file (remember that they're on the same machine, same path, no symlinks) to be exactly the same path. Now if I remove the xdebug_break() the PhpStorm breakpoints are hit, but only in lib/template.php. I have to do this for every file I wish to debug and the path for both the 'server' and the local file are always exactly the same.
I've checked the ability to set a dynamic breakpoint in Codebug, Sublime Text 2 and NetBeans 7.3 and the breakpoints work in all of them without additional mapping, so I assume that it's not an xdebug problem. Only in PhpStorm do they not work.
Is this something not configured correctly in PhpStorm or a bug?
Is anyone else seeing this?