Time#change throws exception with an out-of-range :usec

https://github.com/rails/rails/commit/98b46bf5e201307cae56ee14bf41363a539779c5
did not properly handled out-of-range `:usec`s.

Passing a `:usec` that's out of range now throws an `ArgumentError` as it
should.

Fixes #16759.
Move variable assignment within logging block.
cover all cases of `For not` --> `Do not`, related to #16804
Merge pull request #16809 from akshay-vishnoi/for_not_to_do_not

Cover all cases of `For not` --> `Do not`, related to #16804
correct rdoc [ci skip]
Merge pull request #16813 from seuros/rdoc

Fix ActiveJob rdoc `enqueue` -> `perform_later` [ci skip]
Merge pull request #16765 from Agis-/time-change-bug

Time#change throws exception with an out-of-range :usec
Merge pull request #16807 from tgxworld/carry_out_assignment_within_block

Move variable assignment within logging block.