> (3) Nobody answered my question, what are the rules for making API deprecated. If we don't have clear simple rules, we can easily spend a lot of time on details.

Actually, I answered in the thread. Here are the strategies I propose for deprecating functions (see at the bottom): https://etherpad.mozilla.org/firebug-lib-rewrite

By the way, the try-catch (hypothetically) stops the function when there is an exception. Shouldn't the function continue iterating even when an exception is raised ?

Florent