Daniel Holth committed 3850a56

copy license-file from setup.cfg into .dist-info

Comments (0)

Files changed (2)

     keyring; extra == 'signatures'
     dirspec; sys.platform != 'win32' and extra == 'signatures'
     ed25519ll; extra == 'faster-signatures'
+license-file = LICENSE.txt
 universal=1 # use py2.py3 tag for pure-python dist


                                          '%s.dist-info' % self.wheel_dist_name)
+        # XXX heuristically copy any LICENSE/LICENSE.txt?
+        license = self.license_file()
+        if license:
+            shutil.copy(license, os.path.join(self.distinfo_dir, 'LICENSE.txt'))
         metadata_path = os.path.join(self.distinfo_dir, 'METADATA')
         return pkg_info
+    def license_file(self):
+        """Return license filename from a license-file key in setup.cfg, or None."""
+        metadata = self.distribution.get_option_dict('metadata')
+        if not 'license_file' in metadata:
+            return None
+        return metadata['license_file'][1]
     def setupcfg_requirements(self):
         """Generate requirements from setup.cfg as 
         ('Requires-Dist', 'requirement; qualifier') tuples. From a metadata
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.