I need to install rdkit in heroku for my heroku app to run. I installed rdkit locally in my laptop by using
sudo apt-get install python-rdkit.
But when I generated the requirements file using pip freeze , the generated file is not showing the rdkit. And pip install python-rdkit or pip install rdkit are not working. Can any one please tell me how can I install rdkit on heroku?
Install anaconda and
conda install -c rdkit rdkit
as per instructions here: http://www.rdkit.org/docs/Install.html
Though the question was asked about seven years ago, I recently faced the same problem doing this. So I am writing the process I followed and succeeded, if it helps anyone.
First add a conda buildpack on your heroku project, because rdkit is not available on pip. I have used this buildpack for my rdkit project before. The official conda buildpack is deprecated and it does not support python3. If you use heroku cli then just insert this command to use this buildpack:
heroku buildpacks:set https://github.com/pl31/heroku-buildpack-conda
This buildpack needs an environment.yml file for conda packages instead of requirements.txt file which we use for pip. To create the file from your virtual environment use this command: conda env export > environment.yml. This command also lists all the pip packages so you won't need separate file for pip packages. If you want to create a virtualenv from this file just run conda env create -f environment.yml.
Once this file is there, you can deploy your project as you would do for any other python projects.
Related
guys:
I use conda install tensorflow-gputo install tensorflow 2.0 , and
numpy=1.20.2 would be one of the package installed, and then I use python3 -m pip install SOMEPACKAGE ,this SOMEPACKAGE needs numpy to be installed as well , but pip seems does not check or realize the package numpy has already installed...
I would like to show everything I know so far :
1.I know the packages installed via conda install would go to anaconda3/envs/YOUR_ENV/lib/site-packages
2.I use python3 -m pip install -t anaconda3/envs/YOUR_ENV/lib/site-packages to force the package would be installed to the place where conda install would be.
However,pip still tries to dwonload *.whl file and install package again,I do not want this package installation process happen again ,while it did mention that I can use --upgrade to replace the existed package...
So I would like to know
How does pip and conda install check if the target package has already existed before they actually to through install process?
I think using python3 you are not using interpreter from your current conda environment so it gets installed elsewhere
python -m pip install (or simply pip install) from your activated environment should work and ignore dependencies installed by conda if they satisfy the requirements
I was installing apache-airflow in my centOS 8. Only pip3 works in my environment. I did something with the environment variable which created two config files for airflow. I am not able to find another config file to delete it. So, I was trying to uninstall airflow. I used
pip3 uninstall apache-airflow
It removed the package but still, the other dependent files that were installed are there. I googled and found pip-autoremove but it doesn't work for pip3.
I am trying to find a way to clean install airflow again by removing all the old files, dependent packages. Is there a way to use autoremove in pip3 or are there any other alternatives for my issue?
Maybe if you make a new Virtual Environment and then install your package inside it.
python3 -m venv /path/to/new/virtual/environment
source <venv>/bin/activate.csh
pip3 install apache-airflow
pip3 freeze > dependencies.txt
Then make a pip freeze and now you can delete all installed packages (which are apache-airflow and its dependencies) in you working environment. So you can go to your working environment and just delete them:
pip3 uninstall -r <path>/dependencies.txt
Delete all the files under $AIRFLOW_HOME (default path: ~/airflow). Airflow will look for config file at $AIRFLOW_HOME/airflow.cfg. So reinstall airflow, set $AIRFLOW_HOME to the place where you want to have all your config files and DAGs as mentioned in https://airflow.apache.org/start.html.
I am trying to test a package that I have built and would like to see what a user with a new computer might experience when installing my package. I decided to simulate this by creating a new python environment using:
conda create --name testpython35 python=3.5
Then, when I activated that environment and did something like:
import pandas
I got no error, where I expected an ImportError.
How would I use conda and pip to install a totally clean python environment so that I can test my package?
I am using conda(anaconda 2). Before installing anaconda, my Ubuntu16.04 already had pip installed. I recently installed virtualenv using pip install virtualenv. I did the following steps while trying to install coala in my virtual environment.
Create a new virtual environment using virtualenv venv
Activate environment using source activate path/to/activate
Clone the coala repository.
Run pip3 install -e . while inside the repository
After all this, I get the following error from coala:
There is a conflict in the version of a dependency you have installed and the requirements of coala. This may be resolved by creating a separate virtual environment for coala or running `pip install "yapf~=0.14.0"`. Be aware that the latter solution might break other python packages that depend on the currently installed version.
I am already in a virtualenv, so I tried installing yapf as per the command: pip install "yapf~=0.14.0". After that, when I check my pip list, it still showed yapf (0.15.2), To solve this, I did:
pip uninstall yapf
pip install "yapf~=0.14.0"
Now when I check my pip list, I get the desired results. BUT, the error is still there. It still shows the same dependency error. I am unable to understand what is happening? Which pip is installing what and where, what is conda doing behind the scenes, how is virtualenv behaving with conda, and the most important, why this error and how to resolve it?
first create a virtualenv pertaining to python3.x
template
virtualenv -p {location of python3 version } {name of virtualenv folder}
like this
virtualenv -p /usr/local/bin/python3 venv
then activate it
source venv/bin/activate
then run
pip install {library you want to use}
pip install "yapf~=0.14.0"
This should install yapf into the venv folder.
try that let us know.
Answering my own question, what I found out was that conda and virtualenv do not go hand in hand. condas has the ability to create it's own virtual environment, and if using condas, we must create a conda virtual environment(See this answer).
What I did was uninstalled conda and make a virtual environment using virtualenv. What I could have done as well is uninstall virtualenv and create condas environment and work in that.
I have a fresh Anaconda environment in which I would like to install the latest release of mysql-connector-python (v2.1.3). I'm on a CentOS6 system. The problem is, the newest Conda-hosted package is 2.0.3 and because the connector is not currently hosted on PyPI, it cannot be installed via Pip. (Pip's --allow-external option has been deprecated.)
I know that I can easily install the package via yum install, but I believe that will install it outside of the Conda environment.
Is there any way, using yum or otherwise, to isolate this package solely to this particular Conda environment?
Turns out this is surprisingly simple. Just download the source for the Python package that is not available on PyPI and pip install at the source directory. Just remember to have the Conda environment you want to install to active and Pip will correctly isolate the install to env scope.
I was unaware of Pip's install from local options, so big thanks to the folks on the Anaconda mailing list for their help with this.