summaryrefslogtreecommitdiff
path: root/easy_install.py
Commit message (Collapse)AuthorAgeFilesLines
* Backport whitespace normalization from 2.5 trunk.phillip.eby2006-04-191-1/+0
| | | | git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@45554 6015fed2-1504-0410-9fe1-9d1591cc4771
* First round of prepping setuptools for inclusion in Python 2.5: move phillip.eby2006-04-141-12/+3
| | | | | | | | site.py to setuptools/site-patch.py; reinstate 'python -m easy_install' support; use distutils' "upload" command when running under 2.5. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@45405 6015fed2-1504-0410-9fe1-9d1591cc4771
* Improve backward compatibility, so that users running easy_install.py orpje2005-09-241-16/+9
| | | | | | | python -m easy_install get a clearer error message. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41249 6015fed2-1504-0410-9fe1-9d1591cc4771
* Added support to solve the infamous "we want .py on Windows, nopje2005-09-171-0/+3
| | | | | | | | | | | | | extension elsewhere" problem, while also bypassing the need for PATHEXT on Windows, and in fact the need to even write script files at all, for any platform. Instead, you define "entry points" in your setup script, in this case the names of the scripts you want (without extensions) and the functions that should be imported and run to implement the scripts. Setuptools will then generate platform-appropriate script files at install time, including an .exe wrapper when installing on Windows. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41246 6015fed2-1504-0410-9fe1-9d1591cc4771
* Made ``easy_install`` a standard ``setuptools`` command, moving it frompje2005-07-061-803/+2
| | | | | | | | | | the ``easy_install`` module to ``setuptools.command.easy_install``. Note that if you were importing or extending it, you must now change your imports accordingly. ``easy_install.py`` is still installed as a script, but not as a module. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41079 6015fed2-1504-0410-9fe1-9d1591cc4771
* Fix typopje2005-07-041-1/+1
| | | | git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41075 6015fed2-1504-0410-9fe1-9d1591cc4771
* EasyInstall/setuptools 0.5a4: significant new features, including automaticpje2005-06-271-65/+188
| | | | | | | | installation of dependencies, the ability to specify dependencies in a setup script, and several new options to control EasyInstall's behavior. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41073 6015fed2-1504-0410-9fe1-9d1591cc4771
* 0.5a3 bugfix releasepje2005-06-251-4/+4
| | | | git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41072 6015fed2-1504-0410-9fe1-9d1591cc4771
* Add support for installing from .win32.exe's created by distutils (bypje2005-06-151-37/+201
| | | | | | | converting them to eggs). Bump version to 0.5a1. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41070 6015fed2-1504-0410-9fe1-9d1591cc4771
* Add support for quiet/verbose/dry-run/optimize flags.pje2005-06-141-58/+181
| | | | git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41064 6015fed2-1504-0410-9fe1-9d1591cc4771
* Cosmetic improvements to progress messages.pje2005-06-141-4/+4
| | | | git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41057 6015fed2-1504-0410-9fe1-9d1591cc4771
* Add 'ez_setup' bootstrap installer. Prep for 0.4a2 release.pje2005-06-121-1/+1
| | | | git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41054 6015fed2-1504-0410-9fe1-9d1591cc4771
* Add script installation support. Use distutils' exceptions for optionpje2005-06-121-17/+58
| | | | | | | | | errors. Include Python version in setuptools' egg name for compatibility w/installs via easy_install. Add isdir/listdir facilities for metadata, along with support for running scripts from eggs. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41053 6015fed2-1504-0410-9fe1-9d1591cc4771
* Restructure easy_install as a distutils "Command" object, so that it canpje2005-06-121-97/+138
| | | | | | | | | access the distutils configuration and logging infrastructure, and can "inherit" options from a distutils setup script that wants to use it to install its own dependencies. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41052 6015fed2-1504-0410-9fe1-9d1591cc4771
* Move package index/downloading stuff to setuptools.package_index module.pje2005-06-121-334/+6
| | | | git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41051 6015fed2-1504-0410-9fe1-9d1591cc4771
* Rebalance responsibilities between PackageIndex, Installer, and main() sopje2005-06-121-205/+246
| | | | | | | | | | | that PackageIndex handles all downloading of any kind, Installers can be reused for multiple packages, and main() manages temporary directories and all communication between PackageIndex and Installer. Also, change run_setup to take an argument sequence, because later we will probably need other arguments to control other aspects of run_setup's behavior. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41050 6015fed2-1504-0410-9fe1-9d1591cc4771
* Split setup-running and archive-extraction utilities into separate modules,pje2005-06-121-275/+29
| | | | | | | for easy use by tools other than EasyInstall. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41049 6015fed2-1504-0410-9fe1-9d1591cc4771
* Implement PyPI screenscraping for EasyInstall. Fix a bug in requirementpje2005-06-051-104/+104
| | | | | | | version checking. Document new options for screen scraping. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41041 6015fed2-1504-0410-9fe1-9d1591cc4771
* Partial support for autolocation of packages via link harvesting. Stillpje2005-06-051-50/+173
| | | | | | | | | | | | | needs a little work to get PyPI support working, and automatic dependency resolution. But for now you can do: easy_install -s http://example.com/download.html SomePackage And easy_install will find the best-looking download link on the page for instaling SomePackage. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41039 6015fed2-1504-0410-9fe1-9d1591cc4771
* Fix a minor problem with -b option, and prep for 0.3a4 release.pje2005-06-041-2/+2
| | | | git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41035 6015fed2-1504-0410-9fe1-9d1591cc4771
* Ditch outdated TODO file, move docs to a new 'EasyInstall.txt' file. Fixpje2005-05-311-148/+25
| | | | | | | installation report for .egg files/directories. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41032 6015fed2-1504-0410-9fe1-9d1591cc4771
* Add option to allow specifying a download/extract/build directory, whichpje2005-05-301-27/+109
| | | | | | | | | | | will be kept after installation completes. Added an "installation report" that tells you how to use 'require()' to activate a particular package version. Installer.install_eggs() now returns a list of Distribution objects for the eggs it found and installed, so that the command-line tool can print an installation report for each one. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41031 6015fed2-1504-0410-9fe1-9d1591cc4771
* Add setup script "sandboxing" -- abort a setup script if it tries to writepje2005-05-301-8/+172
| | | | | | | | | to the filesystem outside of the installer's temporary directory. This is accomplished by temporarily replacing 'os.*' functions and the 'open' builtin with path-validation wrappers. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41029 6015fed2-1504-0410-9fe1-9d1591cc4771
* Add SourceForge download support, graciously contributed by Ian Bicking.pje2005-05-301-15/+56
| | | | | | | Also, move some more imports to the top. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41027 6015fed2-1504-0410-9fe1-9d1591cc4771
* Add subversion support, loosely based on an implementation by Ian Bicking.pje2005-05-291-35/+76
| | | | | | | | | | EasyInstall now recognizes both 'svn' URLs (including 'svn+ssh' et al), and notices when it connects to an HTTP server that's actually a subversion repository. In either case it does a subversion checkout of the package. Also, fixed a bug on platforms with os.samefile(). git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41025 6015fed2-1504-0410-9fe1-9d1591cc4771
* Add support for using Installer subclasses, especially ones with supportpje2005-05-291-8/+8
| | | | | | | for searching a package database. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41023 6015fed2-1504-0410-9fe1-9d1591cc4771
* Oddly enough, some setup.py files actually check __name__=='__main__'pje2005-05-291-8/+8
| | | | git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41022 6015fed2-1504-0410-9fe1-9d1591cc4771
* Add link to Python Eggs page in doc; fix a problem with non-standard sourcepje2005-05-291-4/+4
| | | | | | | distros (where setup.py is in the archive root). git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41019 6015fed2-1504-0410-9fe1-9d1591cc4771
* Remove exemaker spew from easy_install.pypje2005-05-291-3/+0
| | | | git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41018 6015fed2-1504-0410-9fe1-9d1591cc4771
* Add "easy_install" script that downloads distutils source (or .egg files)pje2005-05-291-0/+536
and builds and installs them as eggs, with support for managing .pth files. Built distributions are installed in individual subdirectories, so you can either add the directory to a .pth (automatically done by default), or you can use pkg_resources.require() to manage your dependencies explicitly. Because each distribution is in its own directory (or .egg file), uninstallation and clean upgrades are trivial, without the aid of any sort of package manager. git-svn-id: http://svn.python.org/projects/sandbox/trunk/setuptools@41017 6015fed2-1504-0410-9fe1-9d1591cc4771