summaryrefslogtreecommitdiff
path: root/setuptools/command/easy_install.py
Commit message (Collapse)AuthorAgeFilesLines
...
* Implement detection of non-Python scripts, as described inPJ Eby2006-06-151-5/+46
| | | | | http://mail.python.org/pipermail/distutils-sig/2006-June/006359.html (merge from trunk)
* Fix sometimes not detecting local packages installed outside of "site"PJ Eby2006-06-091-1/+1
| | | | | directories. (merge from trunk)
* Fix local --find-links eggs not being copied except with --always-copy.PJ Eby2006-06-071-11/+11
| | | | (merge from trunk)
* Construct ``.pth`` file paths in such a way that installing an egg whosePJ Eby2006-05-301-3/+3
| | | | name begins with ``import`` doesn't cause a syntax error.
* Don't make things warnings that aren't; update info text forPJ Eby2006-05-261-6/+6
| | | | --multi-version. (backport from trunk)
* Don't install or update a ``site.py`` patch when installing to aPJ Eby2006-05-231-5/+3
| | | | | | | ``PYTHONPATH`` directory with ``--multi-version``, unless an ``easy-install.pth`` file is already in use there. (Bugfix merge from 0.7 trunk)
* Backport 'module' fixes to 0.6PJ Eby2006-04-241-3/+3
|
* Implement dependency_links feature, courtesy of Tres Seaver's roughPJ Eby2006-03-291-4/+6
| | | | draft of a patch.
* Support complex .pth files in win32.exe->.egg conversion; this additionPJ Eby2006-03-291-5/+5
| | | | | lets easy_install handle pywin32... well, almost. You still have to deal with the "system" DLLs yourself.
* Fix ZipImportError when overwriting a zipfile with the same name/versionPJ Eby2006-03-241-13/+13
| | | | but different contents.
* Use relative paths in ``.pth`` files when eggs are being installed to thePJ Eby2006-03-201-14/+14
| | | | | same directory as the ``.pth`` file. This maximizes portability of the target directory when building applications that contain eggs.
* Support namespace packages in conjunction with system packagers, by omittingPJ Eby2006-03-171-2/+2
| | | | | the installation of any ``__init__.py`` files for namespace packages, and adding a special ``.pth`` file to create a working package in ``sys.modules``.
* Added automatic handling of installation conflicts. Eggs are now shifted toPJ Eby2006-03-111-22/+63
| | | | | | | | | the front of sys.path, in an order consistent with where they came from, making EasyInstall seamlessly co-operate with system package managers. The ``--delete-conflicting`` and ``--ignore-conflicts-at-my-risk`` options are now no longer necessary, and will generate warnings at the end of a run if you use them.
* When installing setup_requires/tests_require packages, usePJ Eby2006-02-281-2/+2
| | | | --multi-version so that '.' doesn't have to support .pth files.
* Minor tweak to installation report, and add in a hook for laterPJ Eby2006-02-141-6/+6
| | | | displaying the "extras" that can be added to a package.
* Fix a Windows problem when the Python executable is in a directory withPJ Eby2006-02-141-11/+11
| | | | a ' ' in its name.
* Added exhaustive testing of the install directory, including a spawn testPJ Eby2006-02-131-24/+147
| | | | | for ``.pth`` file support, and directory writability/existence checks. This should virtually eliminate the need to set or configure ``--site-dirs``.
* Fixed the annoying ``--help-commands`` wart, albeit in a mostPJ Eby2006-02-101-6/+47
| | | | unfortunately kludgy fashion.
* --prefix support for even more do-what-I-meanishness. :)PJ Eby2006-02-101-32/+72
|
* Implemented DWIM for PYTHONPATH. That is, ez_setup and easy_installPJ Eby2006-02-101-14/+97
| | | | | should now "just work" if you're using a PYTHONPATH target, and if it can't "just work", you get helpful instructions and doc links.
* Ugh. Rereading the Fedora patch shows my previous hack won't actuallyPJ Eby2006-02-101-2/+2
| | | | | accomplish anything useful. This one should, but it needs testing by someone who actually has a Fedora 64-bit x86 setup.
* Oops, bad indentation.PJ Eby2006-02-101-2/+2
|
* Tweak site_dirs detection so that distros with weird layouts (e.g.PJ Eby2006-02-101-4/+4
| | | | | /usr/lib64 patches on 64-bit Fedora) will have a better chance of working "out of the box".
* The ``--find-links`` option previously scanned all supplied URLs andPJ Eby2006-02-081-3/+3
| | | | | | | | directories as early as possible, but now only directories and direct archive links are scanned immediately. URLs are not retrieved unless a package search was already going to go online due to a package not being available locally, or due to the use of the ``--update`` or ``-U`` option. Also, fixed the ``develop`` command ignoring ``--find-links``.
* The ``--always-copy`` option now skips "system" and "development" eggsPJ Eby2006-02-071-13/+13
| | | | | | | since they can't be reliably copied. Note that this may cause EasyInstall to choose an older version of a package than what you expected, or it may cause downloading and installation of a fresh version of what's already installed.
* Fix missing import.PJ Eby2006-01-271-1/+1
|
* Expand ``$variables`` used in the ``--site-dirs``, ``--build-directory``,PJ Eby2006-01-261-10/+10
| | | | | ``--install-dir``, and ``--script-dir`` options, whether on the command line or in configuration files.
* Fix typo.PJ Eby2006-01-221-1/+1
|
* EasyInstall can now download bare ``.py`` files and wrap them in an egg,PJ Eby2006-01-101-1/+1
| | | | | | | | as long as you include an ``#egg=name-version`` suffix on the URL, or if the ``.py`` file is listed as the "Download URL" on the project's PyPI page. This allows third parties to "package" trivial Python modules just by linking to them (e.g. from within their own PyPI page or download links page).
* Make the install_scripts command respect the "build_scripts -e"PJ Eby2005-12-261-5/+5
| | | | | option when installing generated scripts using the --single-version-externally-managed option.
* Support full roundtrip translation of eggs to and from ``bdist_wininst``PJ Eby2005-12-141-9/+9
| | | | | | | | | | | format. Running ``bdist_wininst`` on a setuptools-based package wraps the egg in an .exe that will safely install it as an egg (i.e., with metadata and entry-point wrapper scripts), and ``easy_install`` can turn the .exe back into an ``.egg`` file or directory and install it as such. At this point, it should also be possible to "system package" any egg, complete with wrapper scripts, and at least bdist_wininst works now. More testing is needed for at least bdist_dumb and bdist_rpm.
* Refactor script wrapper generation into a separate function so that itPJ Eby2005-12-141-48/+48
| | | | | can be used by the future install_scripts command to install entry point scripts in "legacy" mode.
* Basic roundtripping support between bdist_wininst and eggs. EasyInstallPJ Eby2005-12-141-16/+16
| | | | | | | will now recognize when a bdist_wininst .exe wraps a .egg-info style package, and reconstitute it correctly, maintaining the original zip safety flag, if applicable. This still needs support for entrypoint scripts, though, as does the install_scripts command.
* Made all commands that use ``easy_install`` respect its configurationPJ Eby2005-12-011-11/+11
| | | | | options, as this was causing some problems with ``setup.py install`` ignoring global site-dirs settings.
* Fixed ``.pth`` file processing picking up nested eggs (i.e. ones insidePJ Eby2005-11-181-3/+3
| | | | "baskets") when they weren't explicitly listed in the ``.pth`` file.
* Fix rmtree() brokenness with Python 2.4 by breaking down and copyingPJ Eby2005-11-051-41/+41
| | | | shutil.rmtree from 2.4 directly into easy_install.py.
* Handle non-requirement installs correctly for dependency processingPJ Eby2005-11-031-2/+2
| | | | (e.g. "setup.py install", or "easy_install somefile/someurl").
* Fix some Subversion-related problems reported by John J. Lee:PJ Eby2005-11-031-21/+62
| | | | | | | | | | * Fixed not installing dependencies for some packages fetched via Subversion * Fixed dependency installation with ``--always-copy`` not using the same dependency resolution procedure as other operations. * Fixed not fully removing temporary directories on Windows, if a Subversion checkout left read-only files behind
* Added "--allow-hosts" option to restrict downloading and spidering toPJ Eby2005-10-191-9/+9
| | | | a specified list of server glob patterns.
* Hurray! Our first dependency processing bug! This is cool because itPJ Eby2005-10-181-1/+1
| | | | | | | | | means that people are finally doing enough things with setuptools to have real-life version conflict scenarios. Luckily, the fix is trivial: use breadth-first instead of depth-first dependency processing, which I thought we were already doing anyway, but weren't. And we were giving precedence to already-installed packages, which means upgrades didn't work so well.
* Fix problem with Windows console scripts conflicting with module names,PJ Eby2005-10-161-14/+14
| | | | | | | thereby confusing the import process. Scripts are now generated with a suffix of the form '-script.py' to avoid conflicts. (The .exe's are still generated without the '-script' part, so you don't have to type it.) Thanks to Matthew R. Scott for reporting the problem.
* Implement --no-deps option, add link to Ian Bicking's non-root PythonPJ Eby2005-10-161-4/+4
| | | | builder script.
* Support generating .pyw/.exe wrappers for Windows GUI scripts, andPJ Eby2005-09-241-41/+41
| | | | "normal" #! wrappers for GUI scripts on other platforms.
* Implement smart version conflict resolution for scripts, so thatPJ Eby2005-09-241-3/+3
| | | | | | | | | | | installed applications will not have their eggs overridden by packages installed locally on sys.path. This should also make things work a bit better for "traditional" non-root Python setups on Unixy operating systems. See: http://mail.python.org/pipermail/distutils-sig/2005-September/005164.html for more details.
* Added support to solve the infamous "we want .py on Windows, noPJ Eby2005-09-171-58/+99
| | | | | | | | | | 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.
* Ensure wrapper scripts are included in output file record; this isPJ Eby2005-09-031-1/+1
| | | | especially important for RPMs with scripts.
* Make sure that script target directory exists. Ordinarily it should, butPJ Eby2005-09-031-1/+1
| | | | some bdist_* targets install to a pseudo-root where stuff might not exist.
* Fix typo in symlink handling code.PJ Eby2005-09-031-1/+1
|
* D'oh! os.path.islink is available on all platforms. Also, ensure that wePJ Eby2005-08-231-21/+21
| | | | | do directory tree removals only if isdir() and not islink(), and use unlink() in all other cases.
* Simplify non-root install process and improve Mac OS docs for it. SupportPJ Eby2005-08-231-11/+11
| | | | | .pth files and legacy packages possibly being symlinks, and ensure that overwrites don't follow the symlink.