merge from trac:r12225
merge from trac:r12303
merge from trac:r12448
merge from trac:r12357
merge from trac:r12358
merge from trac:r12479
merge from trac:r12480
merge from trac:r12503
merge from trac:r12504
merge from trac:r12518