staged-recipes icon indicating copy to clipboard operation
staged-recipes copied to clipboard

add snowline Laplace approximation and Importance Sampling python package for Bayesian inference

Open JohannesBuchner opened this issue 1 year ago • 5 comments

Checklist

  • [x] Title of this PR is meaningful: e.g. "Adding my_nifty_package", not "updated meta.yaml".
  • [x] License file is packaged (see here for an example).
  • [x] Source is from official source.
  • [x] Package does not vendor other packages. (If a package uses the source of another package, they should be separate packages or the licenses of all packages need to be packaged).
  • [x] If static libraries are linked in, the license of the static library is packaged.
  • [x] Package does not ship static libraries. If static libraries are needed, follow CFEP-18.
  • [x] Build number is 0.
  • [x] A tarball (url) rather than a repo (e.g. git_url) is used in your recipe (see here for more details).
  • [x] GitHub users listed in the maintainer section have posted a comment confirming they are willing to be listed there.
  • [x] When in trouble, please check our knowledge base documentation before pinging a team.

JohannesBuchner avatar Sep 23 '22 07:09 JohannesBuchner

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipes/snowline) and found it was in an excellent condition.

conda-forge-linter avatar Sep 23 '22 07:09 conda-forge-linter

I am seeing this error:

Reloading output folder: /home/conda/staged-recipes/build_artifacts
Mamba failed to solve:
 - pypmc
 - python 3.9.* *_cpython
 - pytest-runner
 - numpy 1.20.*
 - pip
 - iminuit

with channels:
 - local
 - conda-forge
 - conda-forge

The reported errors are:
- Encountered problems while solving:
-   - package pypmc-1.2-py37hc105733_0 requires python_abi 3.7.* *_cp37m, but none of the providers can be installed

pypmc is a cpython package that snowline depends on.

I don't understand why "python 3.9.* *_cpython" tries to pull in the py37h version of pypmc.

iminuit is another cpython package that snowline depends on. Its recipe is here: https://github.com/conda-forge/iminuit-feedstock/blob/main/recipe/meta.yaml

This stackoverflow question has the same error but from a user perspective.

snowline is pure python, but requires the two cpython packages.

@conda-forge/help-python-c, can you please help?

JohannesBuchner avatar Sep 23 '22 08:09 JohannesBuchner

Figure out the tests and fix the incorrect runtime requirements. It's fine if Windows/OSX fails due to missing dependencies.

Tests are fixed by installing openssh to make openmpi work.

Added explanation on the additional requirements (these are for optional features), I will add a extra_require to the setup.py on the next release.

JohannesBuchner avatar Oct 06 '22 13:10 JohannesBuchner

Tests are fixed by installing openssh to make openmpi work.

Looks like openssh is only required because these packages are being built inside a container? It's not actually a direct dependency of your package. Only direct dependencies of your package go in the requirements section. Packages that are only required for the tests go in the test/requires section, not the requirements/run section.

carterbox avatar Oct 06 '22 16:10 carterbox

Tests are fixed by installing openssh to make openmpi work.

Looks like openssh is only required because these packages are being built inside a container? It's not actually a direct dependency of your package. Only direct dependencies of your package go in the requirements section. Packages that are only required for the tests go in the test/requires section, not the requirements/run section.

Thank you for pointing this out! I made the change.

JohannesBuchner avatar Oct 07 '22 06:10 JohannesBuchner

I think this is ready to be merged

JohannesBuchner avatar Nov 07 '22 09:11 JohannesBuchner