Hi
I'm in a bit of a mess making a conda package
1) I have a raw set of python and ini files put together as follows
amol
src
amol
apple
conn.py
__init__.py
carrot
conn.py
__init__.py
config
apple.ini
carrot.ini
__init__.py
meta.yaml
MANIFEST.in
setup.cfg
pyproject.toml
I want to create a solid conda package out of this so that I can ultimately do
conda install amol
and have the avoid code and dependent packages installed
2) I'm using 'conda build .' in the first 'amol' dir with the meta.yaml entry
build:
number:0
script: python -m pip install --no-deps --ignore-installed
so for pip install, I have a simple setup.cfg which has
[metadata]
<stuff>
[options]
package=find:
python_requires = >=3.9
include_package_data = True
[options.package.find]
where = src
and the standard pyproject.toml
[build-system]
requires=["setuptools>42"]
build-backend="setuptools build_meta"
The build process works fine when I have a machine (docker image) with all the libs required. It creates a .tar.bz2 file locally.
3) I cannot connect to anaconda channels due to firm policy however the firm has a copy of conda-forge. We cannot upload to this conda-forge channel however. If I copy this .tar.bz2 to a new machine and do
conda install --use-local amol-0.0.1-0.tar.bz2
it installs fine, however I am having some issues
Issues
1) When I do a conda install, it doesn't install the dependencies. I've tried using
[options]
install_requires =
pandas
in setup.cfg and
requirements:
build
- pandas
in meta.yaml and neither works. What am I doing wrong?
2) I can, in theory, create a custom channel with a spare linux box as I think my lack of channel usage is causing noise. Do you think this will help? What's the best approach?
3) Any general tips and thoughts to tidy all this up?
Kind Regards