Usually the atomicity I care about is with regard to newpath: I either observe no file/previous file at newpath, or I observe the new file at newpath. This is in opposition to a copy for example, where I might observe a partially-written file.
This is a great point though, when taking oldpath into account the operation is not atomic. TIL
This is a great point though, when taking oldpath into account the operation is not atomic. TIL