id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 3949,"filesystem::rename() ""does not exist"" check is sometimes unwanted",Paul Pogonyshev ,Beman Dawes,"POSIX allows to rename/move a file over another, unlike Windows. Currently, Boost (according to source code) explicitly adds a check against this, using an exists() call. However, sometimes POSIX behavior is desired, to avoid extra remove() call. Moreover, since exist()/remove()/rename() is inherently non-atomic (as are all filesystem operation), this unnecessarily (on POSIX) creates another race-condition point. Request: change rename prototype to rename(from, to, overwrite = false) and adjust code accordingly. If 'overwrite' is false (default) it will work just as now, so the change is fully backward-compatible. If overwrite is 'true', POSIX implementation will just omit its exist() check, while Windows implementation will call remove(to) and catch errors.",Feature Requests,new,Boost 1.43.0,filesystem,Boost 1.42.0,Problem,,,