Mercurial > hg > PaInt
comparison paint/info.py @ 67:8f39ba642531
random stubbing
| author | Jeff Hammel <jhammel@mozilla.com> |
|---|---|
| date | Fri, 25 Jan 2013 15:56:26 -0800 |
| parents | 1234bfb1f1f0 |
| children | d001017d5870 |
comparison
equal
deleted
inserted
replaced
| 66:af7609457dc6 | 67:8f39ba642531 |
|---|---|
| 17 # {'entry_points': '\n', 'description': 'a dummy package', 'license': '', 'author': 'Jeff Hammel', 'install_requires': [], 'include_package_data': True, 'classifiers': [], 'url': 'http://example.com/', 'author_email': 'jhammel@mozilla.com', 'version': '0.1', 'zip_safe': False, 'packages': ['dummy'], 'long_description': 'dummy\n===========\n\na dummy package\n\n----\n\nJeff Hammel\n\nhttp://example.com/\n\n', 'name': 'dummy'} | 17 # {'entry_points': '\n', 'description': 'a dummy package', 'license': '', 'author': 'Jeff Hammel', 'install_requires': [], 'include_package_data': True, 'classifiers': [], 'url': 'http://example.com/', 'author_email': 'jhammel@mozilla.com', 'version': '0.1', 'zip_safe': False, 'packages': ['dummy'], 'long_description': 'dummy\n===========\n\na dummy package\n\n----\n\nJeff Hammel\n\nhttp://example.com/\n\n', 'name': 'dummy'} |
| 18 | 18 |
| 19 # EggInfo: | 19 # EggInfo: |
| 20 # {'Name': 'dummy', 'License': 'UNKNOWN', 'Author': 'Jeff Hammel', 'Metadata-Version': '1.0', 'Home-page': 'http://example.com/', 'Summary': 'a dummy package', 'Platform': 'UNKNOWN', 'Version': '0.1', 'Author-email': 'jhammel@mozilla.com', 'Description': 'dummy'} | 20 # {'Name': 'dummy', 'License': 'UNKNOWN', 'Author': 'Jeff Hammel', 'Metadata-Version': '1.0', 'Home-page': 'http://example.com/', 'Summary': 'a dummy package', 'Platform': 'UNKNOWN', 'Version': '0.1', 'Author-email': 'jhammel@mozilla.com', 'Description': 'dummy'} |
| 21 | 21 |
| 22 # see http://www.python.org/dev/peps/pep-0314/ : | |
| 23 # Metadata for Python Software Packages | |
| 22 | 24 |
| 23 class PackageInfo(object): | 25 class PackageInfo(object): |
| 24 """abstract base class of package info""" | 26 """abstract base class of package info""" |
| 25 def __init__(self, path): | 27 def __init__(self, path): |
| 26 """ | 28 """ |
| 33 | 35 |
| 34 def __call__(self): | 36 def __call__(self): |
| 35 """returns dictionary of package info""" | 37 """returns dictionary of package info""" |
| 36 raise NotImplementedError("abstract base class") | 38 raise NotImplementedError("abstract base class") |
| 37 | 39 |
| 40 | |
| 38 class SetupOverridePackageInfo(PackageInfo): | 41 class SetupOverridePackageInfo(PackageInfo): |
| 39 """ | 42 """ |
| 40 gather setup.py information by overriding the function | 43 gather setup.py information by overriding the function |
| 41 """ | 44 """ |
| 45 # TODO: override distutils.core.setup as well | |
| 46 # http://docs.python.org/2/distutils/index.html#distutils-index | |
| 42 | 47 |
| 43 def __call__(self): | 48 def __call__(self): |
| 44 setuptools = sys.modules.get('setuptools') | 49 setuptools = sys.modules.get('setuptools') |
| 45 sys.modules['setuptools'] = sys.modules[__name__] | 50 sys.modules['setuptools'] = sys.modules[__name__] |
| 46 globals()['setup'] = self._setup | 51 globals()['setup'] = self._setup |
| 53 globals().pop('setup') | 58 globals().pop('setup') |
| 54 return self.__dict__.pop('_info') | 59 return self.__dict__.pop('_info') |
| 55 | 60 |
| 56 def _setup(self, **kwargs): | 61 def _setup(self, **kwargs): |
| 57 self._info = kwargs | 62 self._info = kwargs |
| 63 | |
| 58 | 64 |
| 59 class EggInfo(PackageInfo): | 65 class EggInfo(PackageInfo): |
| 60 """ | 66 """ |
| 61 use `python setup.py egg_info` to gather package information | 67 use `python setup.py egg_info` to gather package information |
| 62 """ | 68 """ |
