How can I redirect users upon login sometimes but not break the "Forgot password?" function? I'm using Rules to redirect users with certain roles upon login using the Page Redirect action.  The "Force redirect" option is set to true (changing this to false does not fix the problem, and if it is false then users who log in from a block on the front page are taken back to the front page, which is not what I want).

My problem occurs when a user forgets their password and requests a one-time login link via e-mail. When the user clicks the link, he/she is taken to the login page.  From this page, pressing "Login" will redirect the user according to my custom rule instead of taking the user to the page where the password can be changed.

How can I redirect my users using Rules without breaking the forgot password function?
You can do that with a rule like that:

{ "rules_after_login_redirect_to_news" : {
    "LABEL" : "After login redirect to news.",
    "PLUGIN" : "reaction rule",
    "WEIGHT" : "0",
    "REQUIRES" : [ "rules" ],
    "ON" : [ "user_login" ],
    "IF" : [
      { "NOT text_matches" : {
          "text" : [ "site:current-page:path" ],
          "match" : "^user\/reset\/",
          "operation" : "regex"
        }
      }
    ],
    "DO" : [ { "redirect" : { "url" : "news" } } ]
  }
}