mlpack / ensmallen

A header-only C++ library for numerical optimization --
http://ensmallen.org
Other
742 stars 120 forks source link

Does ensmallen work with armadillo >=10.0? #357

Closed DManowitz closed 1 year ago

DManowitz commented 1 year ago

The ensmallen (and mlpack) package on conda-forge indicates that this package will not work with armadillo >=10.0. However, the ensmallen.org home page states that armadillo >=9.800 will work. Which is correct?

rcurtin commented 1 year ago

That's strange, I use both libraries regularly with newer Armadillo versions and it works fine. (The CI build jobs often use newer versions too.) So I think there must be an error in the conda-forge packages.

shrit commented 1 year ago

it is probably an error

coatless commented 1 year ago

@DManowitz I'm not seeing an upper limit on the anaconda page for the packages:

By the looks of the recipes, we're requiring:

MLPACK

    - armadillo >=9.800.0
    - ensmallen >=2.10.0

https://github.com/conda-forge/mlpack-feedstock/blob/e5ceee9a5772b2c0c0239986d13db950b20561b4/recipe/meta.yaml#L32-L45

Ensmallen

    - armadillo >=8.400.0

https://github.com/conda-forge/ensmallen-feedstock/blob/5292318a0dd9f39f2ed1e62c5e068d12ee1716cc/recipe/meta.yaml#L22

Could you please provide a screenshot or step to reproduce where you are seeing an upper bound?

DManowitz commented 1 year ago

I agree that the recipes don't have an upper limit , but when I look at the most recent packages using conda search, I see the following:

conda search -i ensmallen=2.17.0
Loading channels: done
ensmallen 2.17.0 h693b37c_0
---------------------------
file name   : ensmallen-2.17.0-h693b37c_0.tar.bz2
name        : ensmallen
version     : 2.17.0
build       : h693b37c_0
build number: 0
size        : 169 KB
license     : BSD-3-Clause
subdir      : win-64
url         : https://conda.anaconda.org/conda-forge/win-64/ensmallen-2.17.0-h693b37c_0.tar.bz2
md5         : 5334fea6483d016ba057a2ce1da61424
timestamp   : 2021-07-07 18:31:05 UTC
dependencies:
  - armadillo >=9.900,<10.0a0
  - libblas >=3.8.0,<4.0a0
  - openmp
  - vc >=14.1,<15.0a0
  - vs2015_runtime >=14.16.27012

and

conda search -i "mlpack=4.0.1=py38*"
Loading channels: done
mlpack 4.0.1 py38h18593d2_0
---------------------------
file name   : mlpack-4.0.1-py38h18593d2_0.conda
name        : mlpack
version     : 4.0.1
build       : py38h18593d2_0
build number: 0
size        : 12.0 MB
license     : BSD-3-Clause
subdir      : win-64
url         : https://conda.anaconda.org/conda-forge/win-64/mlpack-4.0.1-py38h18593d2_0.conda
md5         : eac86427c54abcdaccb87dd51b09ef04
timestamp   : 2022-12-30 20:45:22 UTC
dependencies:
  - armadillo >=9.800.0
  - armadillo >=9.900,<10.0a0
  - ensmallen >=2.10.0
  - libblas >=3.9.0,<4.0a0
  - libcblas >=3.9.0,<4.0a0
  - numpy >=1.20.3,<2.0a0
  - openblas
  - pandas >=0.15.0
  - python >=3.8,<3.9.0a0
  - python_abi 3.8.* *_cp38
  - ucrt >=10.0.20348.0
  - vc >=14.2,<15
  - vs2015_runtime >=14.29.30139
coatless commented 1 year ago

@DManowitz thanks! This looks like we're running into issues because the underlying feeds need to be boosted to the new versions.