Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

extra_path kwarg to setup() undocumented #39968

Closed
etrepum mannequin opened this issue Feb 21, 2004 · 12 comments
Closed

extra_path kwarg to setup() undocumented #39968

etrepum mannequin opened this issue Feb 21, 2004 · 12 comments
Assignees
Labels
stdlib Python modules in the Lib dir

Comments

@etrepum
Copy link
Mannequin

etrepum mannequin commented Feb 21, 2004

BPO 901727
Nosy @theller, @birkenfeld, @etrepum, @ronaldoussoren, @jaraco, @tarekziade, @merwok
Files
  • apiref.patch
  • apiref-followup.diff
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = 'https://github.com/merwok'
    closed_at = <Date 2016-09-01.18:13:57.252>
    created_at = <Date 2004-02-21.15:04:07.000>
    labels = ['library']
    title = 'extra_path kwarg to setup() undocumented'
    updated_at = <Date 2016-09-01.18:13:57.250>
    user = 'https://github.com/etrepum'

    bugs.python.org fields:

    activity = <Date 2016-09-01.18:13:57.250>
    actor = 'jaraco'
    assignee = 'eric.araujo'
    closed = True
    closed_date = <Date 2016-09-01.18:13:57.252>
    closer = 'jaraco'
    components = ['Distutils']
    creation = <Date 2004-02-21.15:04:07.000>
    creator = 'bob.ippolito'
    dependencies = []
    files = ['18261', '21313']
    hgrepos = []
    issue_num = 901727
    keywords = ['patch', 'needs review']
    message_count = 12.0
    messages = ['20098', '20099', '20100', '111991', '114345', '114351', '116258', '128501', '128511', '128513', '131556', '274160']
    nosy_count = 9.0
    nosy_names = ['theller', 'georg.brandl', 'bob.ippolito', 'ronaldoussoren', 'jaraco', 'tarek', 'eric.araujo', 'docs@python', 'alexis']
    pr_nums = []
    priority = 'normal'
    resolution = 'wont fix'
    stage = 'patch review'
    status = 'closed'
    superseder = None
    type = None
    url = 'https://bugs.python.org/issue901727'
    versions = ['Python 3.1', 'Python 2.7', 'Python 3.2', 'Python 3.3']

    @etrepum
    Copy link
    Mannequin Author

    etrepum mannequin commented Feb 21, 2004

    I can't find documentation for extra_path anywhere.. but this is the
    documentation I found by searching google ( http://
    mail.python.org/pipermail/distutils-sig/2000-March/000803.html ),
    from an old USAGE.txt that sits in the CVS attic now:

    extra_path:
    information about extra intervening directories to put between
    'install_lib' and 'install_sitelib', along with a .pth file to
    ensure that those directories wind up in sys.path. Can be a 1-
    or
    2-tuple, or a comma-delimited string with 1 or 2 parts. The
    1-element case is simpler: the .pth file and directory have the
    same
    name (except for ".pth"). Eg. if extra_path is "foo" or ("foo",),
    then Distutils sets 'install_site_lib' to 'install_lib' +
    "site-packages/foo", and puts foo.path in the "site-packages"
    directory; it contains just "foo". The 2-element case allows the
    .pth file and intervening directories to be named differently;
    eg.
    if 'extra_path' is ("foo","foo/bar/baz") (or "foo,foo/bar/baz"),
    then Distutils will set 'install_site_lib' to 'install_lib' +
    "site-packages/foo/bar/baz", and put "foo.pth" containing
    "foo/bar/baz" in the "site-packages" directory.

    @etrepum etrepum mannequin added stdlib Python modules in the Lib dir labels Feb 21, 2004
    @ronaldoussoren
    Copy link
    Contributor

    Logged In: YES
    user_id=580910

    extra_path also doesn't have a command-line equivalent.

    @theller
    Copy link

    theller commented Jan 24, 2007

    Unassign, I won't work on this.

    @akitada akitada mannequin added the docs Documentation in the Doc dir label Feb 4, 2009
    @akitada akitada mannequin assigned birkenfeld Feb 4, 2009
    @akitada akitada mannequin added the docs Documentation in the Doc dir label Feb 4, 2009
    @akitada akitada mannequin assigned birkenfeld Feb 4, 2009
    @birkenfeld birkenfeld assigned tarekziade and unassigned birkenfeld Feb 5, 2009
    @ronaldoussoren
    Copy link
    Contributor

    I've attached a documentation patch for this (for py3k)

    @BreamoreBoy BreamoreBoy mannequin assigned docspython and unassigned tarekziade Aug 19, 2010
    @merwok
    Copy link
    Member

    merwok commented Aug 19, 2010

    The patch has some words missing (“to put between”), but I can add them. I’m also going to include the example that was in Bob’s message, since the bit of doc in the table alone is not enough to understand clearly what this does IMO.

    I’m reassigning this to distutils2. distutils only gets bug fixes, and its doc is changed only when it says something that doesn’t work. This lets us put energy on distutils2.

    I’ll get to it this week-end or later.

    @merwok merwok removed stdlib Python modules in the Lib dir docs Documentation in the Doc dir labels Aug 19, 2010
    @merwok merwok assigned merwok and unassigned docspython Aug 19, 2010
    @merwok merwok removed stdlib Python modules in the Lib dir docs Documentation in the Doc dir labels Aug 19, 2010
    @merwok merwok assigned merwok and unassigned docspython Aug 19, 2010
    @ronaldoussoren
    Copy link
    Contributor

    I don't understand why distutils won't even get documentation updates.

    Bob's report is about undocumented functionality that is used in real life and was the best way to install python distributions in a self-contained way before setuptools was invented.

    AFAIK The "options" argument to setup is also not documented an that one is also used (both py2exe and py2app mention this feature in their documentation).

    @merwok
    Copy link
    Member

    merwok commented Sep 13, 2010

    This strict freeze policy has been decided by Tarek. The less work there is on distutils’ side, the less synchronization we’ll have to do in distutils2. We do fix doc bugs, we can also fix markup or add links, but that’s it. Improving docs is for distutils2.

    Note that at first I wanted to improve distutils docs even though the code was frozen, but I now agree with Tarek that it would take up a lot of time that is better spent in distutils2. (Regarding the options parameter, a Montreal-Python contributor added a test for it and a TODO note about lack of documentation. See, things get better one step at a time :)

    I hope this answers your question without sounding too dictatorial. I understand your viewpoint but ultimately agree with the freeze.

    @alexis
    Copy link
    Mannequin

    alexis mannequin commented Feb 13, 2011

    I've applied the patch on distutils2. This can now be closed.

    @merwok
    Copy link
    Member

    merwok commented Feb 13, 2011

    You shouldn’t have :) apiref.rst is very outdated in d2, because the setup function does not exist. The docs could be adjusted to document Distribution instead of setup, but we’re not even sure Distribution will stay.

    I think I will make a compromise here and apply the patch to distutils1 doc, so that the information is found on the official docs.

    @merwok merwok added stdlib Python modules in the Lib dir labels Feb 13, 2011
    @alexis
    Copy link
    Mannequin

    alexis mannequin commented Feb 13, 2011

    Still, the extra_path argument exists and can be used, it's worth to
    have it documented somewhere, especially if someone have done it.

    That's also true that apiref.rst is outdated in d2, and will need a
    complete reshape :)

    @merwok
    Copy link
    Member

    merwok commented Mar 20, 2011

    I added the missing words and reworded a few lines in the attached patch.

    That said, I find that the new doc is barely helpful; it describes what the code does, but does not explain why one would want to use it. Comments in the source suggest it’s a hack to support some corner case. This is still obscure to me after reading about it and looking at the code :(

    @jaraco
    Copy link
    Member

    jaraco commented Sep 1, 2016

    Given the progression in bpo-27919, I suggest this documentation effort can be dropped, but feel free to revive the conversation if you disagree.

    @jaraco jaraco closed this as completed Sep 1, 2016
    @jaraco jaraco closed this as completed Sep 1, 2016
    @ezio-melotti ezio-melotti transferred this issue from another repository Apr 9, 2022
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    stdlib Python modules in the Lib dir
    Projects
    None yet
    Development

    No branches or pull requests

    5 participants