Mercurial > hg > mercurial-crew-with-dirclash
view contrib/mercurial.spec @ 4508:0026ccc2bf23
Remove atomicfile class.
The interface provided by opener(atomic=True) is inherently unsafe:
if an exception is raised in the code using the atomic file, the
possibly incomplete file will be renamed to its final destination,
defeating the whole purpose of atomic files.
To get around this, we would either need some bad hacks involving
sys.exc_info (to make sure things work in except: blocks), or an
interface to say "file is complete; rename it".
This is the exact interface provided by atomictempfile. Since there
are no remaining users of the atomicfile class, just remove it.
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Tue, 05 Jun 2007 19:55:27 -0300 |
parents | 1ef8ada4370f |
children | 87a35bb58b88 |
line wrap: on
line source
Summary: Mercurial -- a distributed SCM Name: mercurial Version: snapshot Release: 0 License: GPL Group: Development/Tools Source: http://www.selenic.com/mercurial/release/%{name}-%{version}.tar.gz URL: http://www.selenic.com/mercurial BuildRoot: /tmp/build.%{name}-%{version}-%{release} %define pythonver %(python -c 'import sys;print ".".join(map(str, sys.version_info[:2]))') %define pythonlib %{_libdir}/python%{pythonver}/site-packages/%{name} %define hgext %{_libdir}/python%{pythonver}/site-packages/hgext %description Mercurial is a fast, lightweight source control management system designed for efficient handling of very large distributed projects. %prep rm -rf $RPM_BUILD_ROOT %setup -q %build python setup.py build %install python setup.py install --root $RPM_BUILD_ROOT %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root,-) %doc doc/* *.cgi %dir %{pythonlib} %dir %{hgext} %{_bindir}/hgmerge %{_bindir}/hg %{pythonlib}/templates %{pythonlib}/*.py* %{pythonlib}/hgweb/*.py* %{pythonlib}/*.so %{hgext}/*.py*