Python: how to edit an installed package?
I installed some package via pip install something
. I want to edit the source code for the package something
. Where is it (on ubuntu 12.04) and how do I make it reload each time I edit the source code and run it?
Currently I am editing the source code, and then running python setup.py again and again, which turns out to be quite a hassle.
You should never edit an installed package. Instead, install a forked version of package.
If you need to edit the code frequently, DO NOT install the package via pip install something
and edit the code in '.../site_packages/...'
Instead, put the source code under a development directory, and install it with
$ python setup.py develop
or
$ pip install -e path/to/SomePackage
Or use a vcs at the first place
$ pip install -e git+https://github.com/lakshmivyas/hyde.git#egg=hyde
Put your changes in a version control system, and tell pip to install it explicitly.
Reference: Edit mode
You can edit the files installed in /usr/local/lib/python2.7/dist-packages/
. Do note that you will have to use sudo
or become root
.
The better option would be to use virtual environment for your development. Then you can edit the files installed with your permissions inside your virtual environment.
I too needed to change some things inside a package. Taking inspiration from the previous answers, You can do the following.
- Fork the package/repo to your GitHub
- clone your forked version and create a new branch of your choice
- make changes and push code to the new branch on your repository
- you can easily use
pip install -e git+repositoryurl@branchname
- There are certain things to consider if its a private repository