Update 3.0.x release branch for 3.0.6
This PR cherry picks the changes from the following PRs onto the release/3.0.x branch to finalise the 3.0.6 release:
- #1636
- #1649
- #1654
- #1661
- #1676
- #1677
This PR cherry picks the changes from the following PRs onto the release/3.0.x branch to finalise the 3.0.6 release: