{ "info": { "author": "Robin Bryce", "author_email": "robinbryce@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "pyrun\r\n~~~~~\r\n\r\n.. _distutils python terms: http://docs.python.org/dist/python-terms.html\r\n.. _distutils distutils terms: http://docs.python.org/dist/distutils-terms.html\r\n\r\nYou can access the most commonly useful features of `pyrun`, without installing\r\nthe project, by running the ``pyrun.py`` file directly.\r\n\r\nFor example, the following::\r\n\r\n wget http://svn.wiretooth.com/svn/open/pyrun/trunk/pyrun.py\r\n python pyrun.py my/python/libs my/python/scripts/go.py\r\n\r\nIs all you need in order to run the ``go.py`` module with a sys.path\r\nautomatically discovered from directories under ``my/python/libs``. You can\r\nlist an arbitrary number of directories and paths to actual python files. The\r\norder you list them controls the order in which the path extension entries are\r\nbuilt. The resulting path will not contain any duplicates. Each entry in the\r\npath extension will be a legitimate import path.\r\n\r\nNote:\r\n A setup.py file is provided - with suitable egg entry point declarations \r\n - if you prefer this.\r\n\r\n\r\nFor each argument which identifies a python file `pyrun` will locate the root\r\npackage directory and add that to the path. The *absolute* dotted module name\r\nof the first python file you identify in this way is the module that will, by\r\ndefault, be executed as __main__. You can explicitly override this choice by\r\nusing pyrun's ``-m`` option.\r\n\r\nNote:\r\n root package is the parent directory of the \"top most package\" see\r\n `distutils python terms`_ and `distutils distutils terms`_\r\n\r\n\r\nThe delimiter between the `pyrun` arguments and options and the options for the\r\ntarget module is the first non option argument encountered after the discovery\r\npaths. If that option is a `pyrun` option (see ``pyrun --help`` for the list)\r\nthen `pyrun` takes it and passes all remaining arguments to the target module\r\nin a suitably massaged ``sys.argv``.\r\n\r\nIf the target module takes arguments but does not naturally accept an option\r\nas its first argument (python setup.py install is the classic example) then\r\nyou can artificially terminate the `pyrun` options with ``--``.\r\n\r\nFor example it is possible to run the setup script of the `pyrun` project in\r\nthe following ways\r\n\r\n * If you have setup tools installed::\r\n\r\n python setup.py bdist_egg\r\n\r\n * If your python distribution has *not* removed distutls from the python\r\n standard library::\r\n\r\n python setup.py sdist\r\n\r\n * If you have a copy of the setuptools egg in ``../python/eggs``::\r\n\r\n python pyrun.py ../python/eggs -m setup bdist_egg\r\n python pyrun.py ../python/eggs setup.py -- bdist_egg\r\n\r\n\r\nIf you have a directory which contains a docutils source tree or installation\r\nthen adding that to the discovery path will let the setup.py script build\r\n*this* documentation.\r\n\r\nIf none of the non option arguments identify a python module file *and* you\r\ndont explicitly select one using ``-m`` then `pyrun` will simply print the path\r\nit has discovered and exit. You can force `just print the path` using ``-p``\r\nor ``-P``\r\n\r\n`pyrun` is reasonably smart in respect of python egg distributions. When\r\nmultiple egg distributions of the same project are found on the discovery path\r\nonly the *best* version found is included in the path extension. Eggs which are\r\nnot compatible with the current python interpreter are ignored. The measure of\r\n`best egg for a project` uses the same algorithm as used by the\r\npkg_resources.py module distributed by the setuptools project.\r\n\r\nNote:\r\n The current version does not filter out incompatible `platforms` for eggs\r\n that contain c extensions - see `pyrun.filter_best_eggs` if you have time on\r\n your hands, its not to much work to add this check.\r\n\r\nThe issue tracker for this package can be found at:\r\n\r\nhttp://trac.wiretooth.com/public/wiki/pyrun\r\n\r\nWhen opening a ticket please assign it to the `pyrun` component or, at least,\r\nmention `pyrun` in your ticket summary.", "description_content_type": null, "docs_url": null, "download_url": "http://svn.wiretooth.com/svn/open/pyrun/trunk/pyrun.py", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://trac.wiretooth.com/public/wiki/pyrun", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pyrun", "package_url": "https://pypi.org/project/pyrun/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/pyrun/", "project_urls": { "Download": "http://svn.wiretooth.com/svn/open/pyrun/trunk/pyrun.py", "Homepage": "http://trac.wiretooth.com/public/wiki/pyrun" }, "release_url": "https://pypi.org/project/pyrun/0.2.1a.dev/", "requires_dist": null, "requires_python": null, "summary": "A convenient way to run python modules, packages and scripts with a dynamically discovered sys.path. Particularly useful when you want to make use of packages without installing them first, or to circumvent bootstrapping issues with complicated collections of python software.", "version": "0.2.1a.dev" }, "last_serial": 797701, "releases": { "0.2.1a.dev": [ { "comment_text": "", "digests": { "md5": "fed63601e62813c2edfb2f8d8deee7fe", "sha256": "a3af20bf5f1aab518b8d7db515efaab2395f599be96499f3bfd67efba2ffd175" }, "downloads": -1, "filename": "pyrun-0.2.1a.dev-py2.5.egg", "has_sig": false, "md5_digest": "fed63601e62813c2edfb2f8d8deee7fe", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 28212, "upload_time": "2008-05-20T13:20:01", "url": "https://files.pythonhosted.org/packages/87/b2/488a694e9d71d9ba789e1d19ece4face6641050ad7e3d602022c5a33a5e6/pyrun-0.2.1a.dev-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "086449d65bf06b8187ff211b4086d307", "sha256": "ef943398433d2ef573e100bbf5d72cfda204cfddfe90e1ebc7f9df16b36f9731" }, "downloads": -1, "filename": "pyrun-0.2.1a.dev.tar.gz", "has_sig": false, "md5_digest": "086449d65bf06b8187ff211b4086d307", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49223, "upload_time": "2008-05-20T13:19:30", "url": "https://files.pythonhosted.org/packages/f7/04/83db3452d3291ac505016f4a0faa3aa9da67365ce6aa78cc155c765308cf/pyrun-0.2.1a.dev.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "fed63601e62813c2edfb2f8d8deee7fe", "sha256": "a3af20bf5f1aab518b8d7db515efaab2395f599be96499f3bfd67efba2ffd175" }, "downloads": -1, "filename": "pyrun-0.2.1a.dev-py2.5.egg", "has_sig": false, "md5_digest": "fed63601e62813c2edfb2f8d8deee7fe", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 28212, "upload_time": "2008-05-20T13:20:01", "url": "https://files.pythonhosted.org/packages/87/b2/488a694e9d71d9ba789e1d19ece4face6641050ad7e3d602022c5a33a5e6/pyrun-0.2.1a.dev-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "086449d65bf06b8187ff211b4086d307", "sha256": "ef943398433d2ef573e100bbf5d72cfda204cfddfe90e1ebc7f9df16b36f9731" }, "downloads": -1, "filename": "pyrun-0.2.1a.dev.tar.gz", "has_sig": false, "md5_digest": "086449d65bf06b8187ff211b4086d307", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49223, "upload_time": "2008-05-20T13:19:30", "url": "https://files.pythonhosted.org/packages/f7/04/83db3452d3291ac505016f4a0faa3aa9da67365ce6aa78cc155c765308cf/pyrun-0.2.1a.dev.tar.gz" } ] }