I don't know at what version they started doing a Build as part of the Upload but it was probably before Version 0017 when they added the rebuilding of linked libraries to the build. (Back in 0008 they forced a re-build of all libraries whenever a Board with a different processor was selected.)
You can tell when to release the Reset button because you see the "Binary sketch size:" message in the IDE when the build completes.