summaryrefslogtreecommitdiff
path: root/setuptools
Commit message (Collapse)AuthorAgeFilesLines
* Implement PyPI screenscraping for EasyInstall. Fix a bug in requirementPJ Eby2005-06-051-6/+13
| | | | | | | | version checking. Document new options for screen scraping. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041041
* Add "safe_name" and "safe_version" functions to allow sanitizing ofPJ Eby2005-06-052-19/+19
| | | | | | | | | distribution names and versions in arbitrary packages that might be built using EasyInstall. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041040
* Make ``AvailableDistributions`` keep track of the desired platform/python.PJ Eby2005-06-051-1/+1
| | | | | | | | | | Add a ``can_add()`` method that indicates whether a distribution matches the collection's desired platform and Python version. Fix a bug in ``Distribution.from_filename()`` when the filename has no Python version. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041038
* Ensure that the distribution name written to PKG-INFO is the same as thePJ Eby2005-05-301-2/+2
| | | | | | | | name you'll use in 'require()' operations for that distribution. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041030
* Reorganize bdist_egg's handling of 'install_data' to better deal with thePJ Eby2005-05-301-10/+51
| | | | | | | | | | | | | | | | | | | | various kludges legacy packages are using to install data in their package directories. Some use absolute paths in 'distribution.data_files', while others create various subclasses of 'install_data', each with their own way of finding out what directory to use! So 'bdist_egg' now does all its 'install_lib' activity before 'install_data', and pokes the desired build directory into a wide variety of places, so that all of the known kludges so far will work correctly. It also checks for absolute paths in 'data_files' (carefully working around other packages' 'data_files' kludges!) and converts them back to relative ones, if they are subpaths of site-packages. Clearly, we need to get the word out about 'package_files' in Python 2.4 and above, and suggest using 'setuptools' for Python 2.3. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041028
* Added options to alter eggs' version number by tagging with the subversionPJ Eby2005-05-291-48/+48
| | | | | | | | | revision number, date, and/or a custom tag. This should make it easier for people to produce e.g. automated nightly builds of eggs. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041024
* Handle distributions with ' ' in their namesPJ Eby2005-05-291-1/+1
| | | | | | --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041020
* Add experimental 'install_data' support to 'bdist_egg'. The most commonPJ Eby2005-05-281-26/+26
| | | | | | | | | | | distutils custom command hack in the field is to make 'install_data' put data in with the target packages by changing the --install-data to match --install-lib, so this should let bdist_egg work with more packages "out of the box". --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041016
* Add tests for AvailableDistributions().resolve(). This effectivelyPJ Eby2005-05-231-0/+41
| | | | | | | | | | | | completes the core dependency resolution engine; all we need now is a way to turn sys.path entries into "distribution sources" that can list Distribution objects for inclusion in an instance of AvailableDistributions, and the 'require("SomePkg>=2.7")' API will be usable. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041009
* Added support for specifying options on requirements, so that a package'sPJ Eby2005-05-221-3/+44
| | | | | | | | | optional dependencies can be included when processing nested dependencies. Next up: tests for the resolve() algorithm. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041008
* Distribution metadata parsing: distribution objects can now extract theirPJ Eby2005-05-221-67/+108
| | | | | | | | | version from PKG-INFO and their dependencies from depends.txt, including optional dependencies. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041007
* Refine dependency resolution algorithm so it won't take exponential time,PJ Eby2005-05-221-10/+51
| | | | | | | | | | | | or bomb on cyclic dependencies. (But it's still an untested sketch.) Added list of things that need to be implemented before dependency resolution can actually work. Added tests for lower-level parts of the dependency resolution system, and a hook to support subclasses doing automatic download of needed dependencies. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041006
* Add basic "Requirement" class that can tell whether a distribution orPJ Eby2005-05-211-3/+44
| | | | | | | | version meets its version requirements. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041005
* Added "AvailableDistributions" class that finds and indexes usablePJ Eby2005-04-032-10/+51
| | | | | | | | | | | | | distributions; this replaces the previous "iter_distributions()" API. Added basic platform support to Distribution and AvailableDistributions so that platform-independent distros as well as local platform-compatible distros are acceptable. The actual platform scheme is currently delegated to distutils.util.get_platform(), but needs to be replaced with a better scheme of some kind, especially for OS X. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041004
* Fix handling of -/_ so that they are canonicalized to '-' when doing namePJ Eby2005-04-031-2/+2
| | | | | | | | or version comparisons, but rendered as '_' in egg filenames. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041002
* Add a "Distribution" object that wraps a sys.path entry with metadata, andPJ Eby2005-04-031-5/+78
| | | | | | | | | | | can extract its name/version/pythonversion/platform if built from a .egg filename. Later, distributions will be able to add themselves to sys.path and request that their dependencies be added as well. Also, added some real-life version test cases supplied by jemfinch. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041001
* Add a simple version parser that combines the pre-release smarts ofPJ Eby2005-04-021-0/+58
| | | | | | | | | | distutils' StrictVersion, with the flexibility of LooseVersion. It also deals heuristically with common concepts like alpha/beta/candidate/rc and pre/preview, as well as '-' and 'pl' branching schemes. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041000
* Rough draft of version requirement parser. Make bdist_egg look for aPJ Eby2005-04-023-44/+118
| | | | | | | | | | | | distname.egg-info directory instead of EGG-INFO.in; this will be used later to support development of egg-distributed packages that an application under development expects to 'require()'. (Thanks to Fred Drake for pointing out this use case, and Bob Ippolito for helping me figure out how to support it, although the runtime support doesn't actually exist yet.) --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040999
* Back out the addition of bogus 'if __name__=="__main__"' block; the OnePJ Eby2005-04-011-79/+174
| | | | | | | | | Obvious Way to test setuptools is to run 'setup.py test', because that also provides an integration test for the 'test' command. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040998
* Fix bootstrap loader so extracted files don't have to be on sys.path.PJ Eby2005-03-221-2/+2
| | | | | | --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040993
* Create stub loaders for C extensions, so that the actual dynamic libraryPJ Eby2005-03-221-5/+49
| | | | | | | | can be extracted from the egg. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040992
* Allow user-supplied metadata from EGG-INFO.in directory (directory name canPJ Eby2005-03-211-1/+17
| | | | | | | | be overridden with a command-line option). --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040991
* Add python version to egg filename.PJ Eby2005-03-211-2/+3
| | | | | | --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040990
* Add 'bdist_egg' command/format to allow creating "Python Eggs" (seePJ Eby2005-03-212-1/+153
| | | | | | | | | | | http://peak.telecommunity.com/DevCenter/PythonEggs for details). This version only supports pure libraries and does not support user-defined metadata. But it's sufficient to make .egg files that can be placed on PYTHONPATH and used. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040989
* remove blank line pollutionFred Drake2004-06-171-33/+0
| | | | | | --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040905
* fix to make things continue to work when we're *not* running underFred Drake2004-06-151-2/+4
| | | | | | | | | Python 2.4; this was broken by my earlier change to avoid stomping on Python 2.4's build_py command --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040902
* Deal with the distutils on the head; package_data may already be supported.Fred Drake2004-06-141-3/+4
| | | | | | | | In this case, setuptools need not override the build_py command. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040900
* remove excess blank lines, and apply whitespace more in line with the PythonFred Drake2004-04-054-249/+106
| | | | | | | | style guidelines in PEP 8 --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040896
* - remove trailing blank linesFred Drake2004-04-051-3/+1
| | | | | | | | - use whitespace according to the Python style guide --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040895
* remove trailing blank lineFred Drake2004-04-052-2/+0
| | | | | | --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040894
* Compute command line that should be passed to child setup scripts.PJ Eby2004-03-223-23/+146
| | | | | | | | | Warn user if unsupported options are supplied, and cancel unless 'depends -i' (aka '--ignore-extra-args') was used. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040880
* Flesh out 'depends' command to display dependencies' status, and halt ifPJ Eby2004-03-204-46/+140
| | | | | | | | | | | | | | | | | | | | | all requirements aren't met. (Also, check planned install location for the dependencies, as well as checking sys.path.) Also: * Allow 'Feature()' objects to include 'Require()' objects, so that dependencies can be optional * 'Require()' objects can set a homepage, whose URL will be displayed by the 'depends' command if the dependency needs to be installed. * Misc. fixes/refactoring of version validation to properly handle "unknown" versions, and to decouple version fetching from version checking. * Updated TODO to remove various completed items. --HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040876
* Initial checkin of setuptools 0.0.1.PJ Eby2004-03-1912-0/+1496
--HG-- branch : setuptools extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4040869