| Size: 1834 Comment:  | Size: 4571 Comment: "manually run the `python setup.py install` command" | 
| 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 ? (one answer) | 
| Line 7: | Line 8: | 
| <open question> | 1. Professional developer using Python exclusively. 2. Professional developer using Python sometimes. 3. Professional developer using Python unable to use Python "at work". 4. Hobbyist using Python. | 
| Line 9: | Line 13: | 
| How do you organize your application code ? | * How do you organize your application code most of the time ? (one answer) | 
| Line 11: | Line 15: | 
| - 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 20: | 
| 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 22: | 
| - None - distutils - setuptools - zc.buildout and setuptools - zc.buildout and distutils - Paver and distutils - Paver and setuptools | 1. Yes 2. No | 
| Line 28: | Line 25: | 
| 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 27: | 
| - 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 36: | 
| How do you remove a package ? | |
| Line 37: | Line 37: | 
| - 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 39: | 
| Do you work with namespaced packages ? | 1. I use easy_install 2. I use pip 3. I download it and manually run the `python setup.py 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 46: | 
| - 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 107: | 
| 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 109: | 
| <open question> | * <open question> | 
| Line 54: | Line 111: | 
| 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 113: | 
| - Yes - No | 1. Yes 2. No | 
| Line 59: | Line 116: | 
| 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 118: | 
| <open question> | 1. Yes 2. No | 
| Line 64: | Line 121: | 
| 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 123: | 
| <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 ? (one answer) - Professional developer using Python exclusively.
- Professional developer using Python sometimes.
- Professional developer using Python unable to use Python "at work".
- Hobbyist using Python.
 
- How do you organize your application code most of the time ? (one answer) - I put everything in one package
- I create several packages and use a main package or script to launch the application
- I create several packages and use a tool like zc.buildout or Paver to distribute the whole application
- 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) - Yes
- No
 
- What is the main tool or combination of tools you are using to package and distribute your Python application ? (one answer) - None
- distutils
- setuptools
- zc.buildout and setuptools
- zc.buildout and distutils
- Paver and distutils
- Paver and setuptools
- 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) - I use easy_install
- I use pip
- I download it and manually run the python setup.py install command 
- I use the packaging tool provided in my system (apt, yum, etc)
- I move files around and create symlinks manually
- Other : <say which> 
 
- How do you remove a package ? (check all that apply) - 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 never polluted, and only remove entire environments
- I change PYTHONPATH to include a directory of the packages used by my application, then remove just that directory
- 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) - I don't use multiple versions of a library
- I use setuptools' multi-version features
- I use virtualenv
- I use zc.buildout
- I build fresh Python interpreter from source for each project
- I set PYTHONPATH to select particular libraries
- I set sys.path in my scripts
- 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) - Yes
- No
 
- Has PyPI become mandatory in your everyday work (if you use zc.buildout for exampel) ? (one answer) - Yes
- No
 
- If you previously answered Yes, did you set up an alternative solution (mirror, cache..) in case PyPI is down ? (one answer) - Yes
- No
 
- Do you register your packages to PyPI ? (one answer) - Yes
- No
 
- Do you upload your package to PyPI ? (one answer) - Yes
- No
 
- If you previously answered No, how do you distribute your packages ? (one answer) - One my own website, using simple links
- One my own website, using a PyPI-like server
- 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) - Yes
- 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) - Yes
- 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> 
 
