##// END OF EJS Templates
only avoid clobbering corrupt dbs that have some content...
only avoid clobbering corrupt dbs that have some content this logic can be triggered by connection failures that do not mean the file is corrupt, so we don't want to lose data unnecessarily.

File last commit:

r22064:3b61f328
r22271:05e6b192
Show More
toollib.py
57 lines | 1.5 KiB | text/x-python | PythonLexer
"""Various utilities common to IPython release and maintenance tools.
"""
from __future__ import print_function
# Library imports
import os
# Useful shorthands
pjoin = os.path.join
cd = os.chdir
# Constants
# SSH root address of the archive site
archive_user = 'ipython@archive.ipython.org'
archive_dir = 'archive.ipython.org'
archive = '%s:%s' % (archive_user, archive_dir)
# Build commands
# Source dists
sdists = './setup.py sdist --formats=gztar,zip'
# Binary dists
def buildwheels():
for py in ('2', '3'):
sh('python%s setupegg.py bdist_wheel' % py)
# Utility functions
def sh(cmd):
"""Run system command in shell, raise SystemExit if it returns an error."""
print("$", cmd)
stat = os.system(cmd)
#stat = 0 # Uncomment this and comment previous to run in debug mode
if stat:
raise SystemExit("Command %s failed with code: %s" % (cmd, stat))
# Backwards compatibility
c = sh
def get_ipdir():
"""Get IPython directory from command line, or assume it's the one above."""
# Initialize arguments and check location
ipdir = pjoin(os.path.dirname(__file__), os.pardir)
ipdir = os.path.abspath(ipdir)
cd(ipdir)
if not os.path.isdir('IPython') and os.path.isfile('setup.py'):
raise SystemExit('Invalid ipython directory: %s' % ipdir)
return ipdir
try:
execfile = execfile
except NameError:
def execfile(fname, globs, locs=None):
locs = locs or globs
exec(compile(open(fname).read(), fname, "exec"), globs, locs)