Differences between revisions 1 and 15 (spanning 14 versions)
Revision 1 as of 2009-01-25 10:37:54
Size: 1834
Editor: 234
Comment:
Revision 15 as of 2009-01-28 00:28:42
Size: 4406
Editor: IanBicking
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
This survey will be put online in a SurveyMonkey-like system whenever it is ready...
Line 4: Line 6:
Who are you ? (describe in a few sentence what do you do with
Python)
 * Who are you ? (describe in a few sentence what do you do with Python)
Line 7: Line 8:
<open question>   * <open question>
Line 9: Line 10:
How do you organize your application code ?  * How do you organize your application code most of the time ? (one answer)
Line 11: Line 12:
  - I put everything in one package
  - I create several packages and with one main package to launch the
    application
  - I create several packages and use a tool like zc.buildout or Paver to
    distribute the whole application
  1. I put everything in one package
  2. I create several packages and use a main package or script to launch the application
  3. I create several packages and use a tool like zc.buildout or Paver to distribute the whole application
  4. I use my own mechanism for aggregating packages into a single install.
Line 17: Line 17:
What are the tools you are using to package and distribute
your Python application ?
 * For libraries you don't distribute publicly, do you you create a setup.py script? (one answer)
Line 20: Line 19:
  - None
  - distutils
  - setuptools
  - zc.buildout and setuptools
  - zc.buildout and distutils
  - Paver and distutils
  - Paver and setuptools
  1. Yes
  2. No
Line 28: Line 22:
How do you install a package that does not provide an installer ?  * What is the main tool or combination of tools you are using to package and distribute your Python application ? (one answer)
Line 30: Line 24:
  - I use easy_install
  - I use pip
  - I download it and run manually the install command
  - I use the packaging tool provided in my system (apt, yum, etc)
  1. None
  2. distutils
  3. setuptools
  4. zc.buildout and setuptools
  5. zc.buildout and distutils
  6. Paver and distutils
  7. Paver and setuptools
  8. Other : <say which>
Line 35: Line 33:
How do you remove a package ?
Line 37: Line 34:
  - manually, by removing the folder and fixing the .pth files
  - using the packaging tool (apt, yum, etc)
  - I use one virtualenv per application, so the main python is not
    polluted
 * How do you install a package that does not provide an standalone installer (but provides a standard setup.py script) most of the time ? (one answer)
Line 42: Line 36:
Do you work with namespaced packages ?   1. I use easy_install
  2. I use pip
  3. I download it and run manually the install command
  4. I use the packaging tool provided in my system (apt, yum, etc)
  5. I move files around and create symlinks manually
  6. Other : <say which>
Line 44: Line 43:
  - Yes
  - No

 * How do you remove a package ? (check all that apply)

  1. manually, by removing the folder and fixing the .pth files
  2. using the packaging tool (apt, yum, etc)
  3. I use one virtualenv per application, so the main python is never polluted, and only remove entire environments
  4. I change PYTHONPATH to include a directory of the packages used by my application, then remove just that directory
  5. I don't know / I fail at uninstallation

 * How do you manage using more than one version of a library on a system? (check all that apply)

  1. I don't use multiple versions of a library
  2. I use setuptools' multi-version features
  3. I use virtualenv
  4. I use zc.buildout
  5. I build fresh Python interpreter from source for each project
  6. I set PYTHONPATH to select particular libraries
  7. I set sys.path in my scripts
  8. Other: <say what>

 * Do you work with setuptools' namespaced packages ? A namespace package is a package that may be split across multiple project distributions. For example, Zope 3's zope package is a namespace package, because subpackages like zope.interface and zope.publisher may be distributed separately (see http://peak.telecommunity.com/DevCenter/setuptools) (one answer)

  1. Yes
  2. No

 * Has PyPI become mandatory in your everyday work (if you use zc.buildout for exampel) ? (one answer)

  1. Yes
  2. No


 * If you previously answered Yes, did you set up an alternative solution (mirror, cache..) in case PyPI is down ? (one answer)

  1. Yes
  2. No

 * Do you register your packages to PyPI ? (one answer)

  1. Yes
  2. No


 * Do you upload your package to PyPI ? (one answer)

  1. Yes
  2. No


 * If you previously answered No, how do you distribute your packages ? (one answer)

  1. One my own website, using simple links
  2. One my own website, using a PyPI-like server
  3. On a forge, like sourceforge

 * Where are you located ?

  * <open question>
Line 49: Line 104:
What are in your opinion, the 5 most important problems (bad behaviors
or lacks) in Distutils today ?
 * What are in your opinion, the 5 most important problems (bad behaviors or missing features) in Distutils today ?
Line 52: Line 106:
<open question>   * <open question>
Line 54: Line 108:
Would you like to see Python's Distutils package provide an uninstall command that removes just the files installed, and cleanup the .pth, even if it does undesirable things ?  * Would you like to see Python's Distutils package provide an uninstall command that removes just the files installed, and cleans up .pth files, even if it does undesirable things ? (one answer)
Line 56: Line 110:
  - Yes
  - No
  1. Yes
  2. No
Line 59: Line 113:
What are the 5 most important features that exists in third-party tools,
you would like to see included by the Python standard Library ?
 * Would you like to see Python's Distutils package provide an uninstall command that correctly removes the files installed by a package (without taking care of possible side-effect) **effects to be listed here** ? (one answer)
Line 62: Line 115:
<open question>   1. Yes
  2. No
Line 64: Line 118:
What are the other things you like to say in order to help
building Distutils roadmap ?
 * What are the 5 most important features that exists in third-party tools, you would like to see included by the Python standard Library ?
Line 67: Line 120:
<open question>   * <open question>


 * What are the other things you like to say in order to help building Distutils roadmap ?

  * <open question>

This survey will be put online in a SurveyMonkey-like system whenever it is ready...

Part 1, how do you work ?

  • Who are you ? (describe in a few sentence what do you do with Python)
    • <open question>

  • How do you organize your application code most of the time ? (one answer)
    1. I put everything in one package
    2. I create several packages and use a main package or script to launch the application
    3. I create several packages and use a tool like zc.buildout or Paver to distribute the whole application
    4. I use my own mechanism for aggregating packages into a single install.
  • For libraries you don't distribute publicly, do you you create a setup.py script? (one answer)
    1. Yes
    2. No
  • What is the main tool or combination of tools you are using to package and distribute your Python application ? (one answer)
    1. None
    2. distutils
    3. setuptools
    4. zc.buildout and setuptools
    5. zc.buildout and distutils
    6. Paver and distutils
    7. Paver and setuptools
    8. Other : <say which>

  • How do you install a package that does not provide an standalone installer (but provides a standard setup.py script) most of the time ? (one answer)
    1. I use easy_install
    2. I use pip
    3. I download it and run manually the install command
    4. I use the packaging tool provided in my system (apt, yum, etc)
    5. I move files around and create symlinks manually
    6. Other : <say which>

  • How do you remove a package ? (check all that apply)
    1. manually, by removing the folder and fixing the .pth files
    2. using the packaging tool (apt, yum, etc)
    3. I use one virtualenv per application, so the main python is never polluted, and only remove entire environments
    4. I change PYTHONPATH to include a directory of the packages used by my application, then remove just that directory
    5. I don't know / I fail at uninstallation
  • How do you manage using more than one version of a library on a system? (check all that apply)
    1. I don't use multiple versions of a library
    2. I use setuptools' multi-version features
    3. I use virtualenv
    4. I use zc.buildout
    5. I build fresh Python interpreter from source for each project
    6. I set PYTHONPATH to select particular libraries
    7. I set sys.path in my scripts
    8. Other: <say what>

  • Do you work with setuptools' namespaced packages ? A namespace package is a package that may be split across multiple project distributions. For example, Zope 3's zope package is a namespace package, because subpackages like zope.interface and zope.publisher may be distributed separately (see http://peak.telecommunity.com/DevCenter/setuptools) (one answer)

    1. Yes
    2. No
  • Has PyPI become mandatory in your everyday work (if you use zc.buildout for exampel) ? (one answer)
    1. Yes
    2. No
  • If you previously answered Yes, did you set up an alternative solution (mirror, cache..) in case PyPI is down ? (one answer)
    1. Yes
    2. No
  • Do you register your packages to PyPI ? (one answer)
    1. Yes
    2. No
  • Do you upload your package to PyPI ? (one answer)
    1. Yes
    2. No
  • If you previously answered No, how do you distribute your packages ? (one answer)
    1. One my own website, using simple links
    2. One my own website, using a PyPI-like server
    3. On a forge, like sourceforge
  • Where are you located ?
    • <open question>

Part 2, What's missing ? What is wrong ?

  • What are in your opinion, the 5 most important problems (bad behaviors or missing features) in Distutils today ?
    • <open question>

  • Would you like to see Python's Distutils package provide an uninstall command that removes just the files installed, and cleans up .pth files, even if it does undesirable things ? (one answer)
    1. Yes
    2. No
  • Would you like to see Python's Distutils package provide an uninstall command that correctly removes the files installed by a package (without taking care of possible side-effect) **effects to be listed here** ? (one answer)
    1. Yes
    2. No
  • What are the 5 most important features that exists in third-party tools, you would like to see included by the Python standard Library ?
    • <open question>

  • What are the other things you like to say in order to help building Distutils roadmap ?
    • <open question>

Packaging Survey (last edited 2009-03-08 12:35:09 by tarek)

Unable to edit the page? See the FrontPage for instructions.