[Python-ideas] BackupFile
Masklinn
masklinn at masklinn.net
Mon Jun 25 14:33:36 CEST 2012
On 2012-06-25, at 14:17 , Kim Gräsman wrote:
>
> - Would something like this be useful outside of my office?
I'm not sure I correctly understand the purpose of this, and if I do it
seems to be kind-of a hack for "fixing" kind-of crummy code: is it
correct that the goal is to temporarily edit a file (and restore it
later) to change the behavior of *other* pieces of code reading the same
file?
So essentially dynamically scoping the content of a file?
I find the idea rather troublesome/problematic, as it's completely
blind to (and unsafe under) concurrent access, and will be tricky to
handle cleanly wrt filesystem caches and commits.
The initial mail hinted at atomic file replacement *or* backuping a file
and restoring the backup on error, something along the lines of:
with Backup(settings_file):
alter_file()
alter_file_2()
alter_file_3()
# altered file
with Backup(settings_file):
alter_file()
alter_file_2()
raise Exception("boom")
alter_file_3()
# old file is back
in the same way e.g. Emacs will keep "~" files around during edition. That
could have been a ~+1 for me, but the behavior as I understood it
(understanding which may be incorrect, again) I'd be −1 on, it seems too
dangerous and too tied to other issues in the code.
More information about the Python-ideas
mailing list