Differences between revisions 1 and 6 (spanning 5 versions)
Revision 1 as of 2007-08-04 18:10:52
Size: 577
Editor: PhilipJenvey
Comment: setuptools on jython status
Revision 6 as of 2007-08-04 22:34:20
Size: 1171
Editor: PhilipJenvey
Comment: meant java, not jython
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
Setuptools needs: Setuptools requirements:
Line 3: Line 3:
 * PEP 302 (added in Jython 2.2)  * PEP 302: added in Jython 2.2

We don't have:
Line 7: Line 10:
  - The Jython zipimport machinery is somewhat different: ZipFileImporter only imports zips if they're SyspathArchives: currently .zips and .jars   - The Jython zipimport machinery is different: ZipFileImporter only imports zips if they're SyspathArchives: currently .zips and .jars. How does CPython zipimport identify .eggs in sys.path as .zips? (needed for the ez_setup bootstrap process)
Line 10: Line 13:
 * tempfile.mkstemp
  - I've begun taking a look at implementing mkstemp/NamedTemporaryFile with Java's secure File.createTempFile
 * os.open is used for a small hack having to do with usage of tempfile.mkstemp
  - This is somewhat problematic because even the best Jython mkstemp implementation won't return a file descriptor (No raw file descriptors in java), but setuptools can possibly be patched to use NamedTemporaryFile instead
 * imp.acquire/release_lock

Setuptools requirements:

  • PEP 302: added in Jython 2.2

We don't have:

  • PEP 273 (the zipimport module)
    • - Jython's ZipFileImporter is somewhat different that the CPython zipimport module -- it's not a module, and it does not maintain its own _zip_importer_cache (which setuptools utilizes) apart from sys.path_importer_cache

      - The Jython zipimport machinery is different: ZipFileImporter only imports zips if they're SyspathArchives: currently .zips and .jars. How does CPython zipimport identify .eggs in sys.path as .zips? (needed for the ez_setup bootstrap process)

  • distutils
  • tempfile.mkstemp
    • - I've begun taking a look at implementing mkstemp/NamedTemporaryFile with Java's secure File.createTempFile
  • os.open is used for a small hack having to do with usage of tempfile.mkstemp
    • - This is somewhat problematic because even the best Jython mkstemp implementation won't return a file descriptor (No raw file descriptors in java), but setuptools can possibly be patched to use NamedTemporaryFile instead

  • imp.acquire/release_lock

SetuptoolsOnJython (last edited 2010-01-02 16:58:16 by AndrewKuchling)