Ryan I assume any error could be translated to your version through the `from ` statement too?
Regarding the rabbit hole, the internet connection and privileges were required for running this script in the first place. I only suggest giving the developer - perhaps not a software engineer at all - an easy way not to require the (possibly inexperienced) user to do it manually. Put it another way, you a copy-pasted code from SO is not needed to use only stdlib now. On Mon, Sep 19, 2016 at 8:34 PM Ryan Gonzalez <rym...@gmail.com> wrote: > This sounds like a great idea, but I've seen stuff like this done before, > and it never ends well. You end up with a gargantuan-sized rabbit hole, > since running a basic script could now involve using an internet connection > and potentially root permissions. > > IF one were to go this route, I prefer bundling a `requirements.txt` into > the distribution and then doing something like this in the script: > > import pkgcheck > pkgcheck.check_requirements('requirements.txt') > > If any of the requirements were missing, then something like this would > happen: > > Traceback (most recent call last): > ... > MissingPackageError: This script requires package(s) which are not > installed: mypackage>=1.0, other_package > > That way, you don't get the weird import errors, but you don't have to > worry about all the subtleties of automatic downloading. > > -- > Ryan > [ERROR]: Your autotools build scripts are 200 lines longer than your > program. Something’s wrong. > http://kirbyfan64.github.io/ > On Sep 19, 2016 11:26 AM, "אלעזר" <elaz...@gmail.com> wrote: > >> Many proposals to add something to stdlib are rejected here with the >> suggestion to add such library to pypi first. As noted by someone, pypi is >> not as reachable as stdlib, and one should install that package first, >> which many people don't know how. Additionally, there is no natural >> distinction between 3rd party dependencies and in-project imports (at least >> in tiny projects). >> >> This can be made easier if the first line of the program will declare the >> required library, and executing it will try to download and install that >> library if it is not installed yet. Additionally, the 3rd party >> dependencies will be more explicit, and editors can then allow you to >> search for them as you type. >> >> Of course it is *not* an alternative for real dependency management, but >> it will ease the burden on small scripts and tiny projects - which today >> simply break with errors that many users does not understand, instead of >> simply asking permission to install the dependency. >> >> Elazar >> >> _______________________________________________ >> Python-ideas mailing list >> Python-ideas@python.org >> https://mail.python.org/mailman/listinfo/python-ideas >> Code of Conduct: http://python.org/psf/codeofconduct/ >> >
_______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/