MCPcopy Create free account
hub / github.com/numpy/numpy / make_hg_version_py

Method make_hg_version_py

numpy/distutils/misc_util.py:2068–2106  ·  view source on GitHub ↗

Appends a data function to the data_files list that will generate __hg_version__.py file to the current package directory. Generate package __hg_version__.py file from Mercurial revision, it will be removed after python exits but will be available when sdist, etc com

(self, delete=True)

Source from the content-addressed store, hash-verified

2066 self.add_data_files(('', generate_svn_version_py()))
2067
2068 def make_hg_version_py(self, delete=True):
2069 """Appends a data function to the data_files list that will generate
2070 __hg_version__.py file to the current package directory.
2071
2072 Generate package __hg_version__.py file from Mercurial revision,
2073 it will be removed after python exits but will be available
2074 when sdist, etc commands are executed.
2075
2076 Notes
2077 -----
2078 If __hg_version__.py existed before, nothing is done.
2079
2080 This is intended for working with source directories that are
2081 in an Mercurial repository.
2082 """
2083 target = njoin(self.local_path, '__hg_version__.py')
2084 revision = self._get_hg_revision(self.local_path)
2085 if os.path.isfile(target) or revision is None:
2086 return
2087 else:
2088 def generate_hg_version_py():
2089 if not os.path.isfile(target):
2090 version = str(revision)
2091 self.info('Creating %s (version=%r)' % (target, version))
2092 with open(target, 'w') as f:
2093 f.write('version = %r\n' % (version))
2094
2095 def rm_file(f=target,p=self.info):
2096 if delete:
2097 try: os.remove(f); p('removed '+f)
2098 except OSError: pass
2099 try: os.remove(f+'c'); p('removed '+f+'c')
2100 except OSError: pass
2101
2102 atexit.register(rm_file)
2103
2104 return target
2105
2106 self.add_data_files(('', generate_hg_version_py()))
2107
2108 def make_config_py(self,name='__config__'):
2109 """Generate package __config__.py file containing system_info

Callers

nothing calls this directly

Calls 3

_get_hg_revisionMethod · 0.95
add_data_filesMethod · 0.95
njoinFunction · 0.85

Tested by

no test coverage detected