Backport #28454 (the only conflict is caused by some comments) * Close #24483 * Close #28123 * Close #23682 * Close #23149 (cherry picked from commit a3f403f438) Conflicts: modules/setting/ui.go trivial context conflict
a3f403f438