{% set version = "4.1-8" %}
{% set posix = 'm2-' if win else '' %}

package:
  name: r-glmnet
  version: {{ version|replace("-", "_") }}

source:
  url:
    - {{ cran_mirror }}/src/contrib/glmnet_{{ version }}.tar.gz
    - {{ cran_mirror }}/src/contrib/Archive/glmnet/glmnet_{{ version }}.tar.gz
  sha256: 1ddbe5ce07076d1bdf58b0202ebd0ceac8eeb4796c5175681adb9e58c30ddcfe

build:
  # Checking windows to see if it passes. Uncomment the line if it fails.
  # skip: true  # [win]
  number: 1
  rpaths:
    - lib/R/lib/
    - lib/

requirements:
  build:
    - cross-r-base {{ r_base }}        # [build_platform != target_platform]
    - r-foreach                        # [build_platform != target_platform]
    - r-matrix                         # [build_platform != target_platform]
    - r-rcpp                           # [build_platform != target_platform]
    - r-rcppeigen                      # [build_platform != target_platform]
    - r-survival                       # [build_platform != target_platform]
    - r-shape                          # [build_platform != target_platform]
    - {{ compiler('c') }}              # [not win]
    - {{ stdlib("c") }}                # [not win]
    - {{ compiler('m2w64_c') }}        # [win]
    - {{ stdlib("m2w64_c") }}          # [win]
    - {{ compiler('cxx') }}            # [not win]
    - {{ compiler('m2w64_cxx') }}      # [win]
    - {{ compiler('fortran') }}        # [not win]
    - {{ compiler('m2w64_fortran') }}  # [win]
    - {{ posix }}filesystem            # [win]
    - {{ posix }}make
    - {{ posix }}sed                   # [win]
    - {{ posix }}coreutils             # [win]
    - {{ posix }}zip                   # [win]
  host:
    - r-base
    - r-foreach
    - r-matrix >=1.0_6
    - r-rcpp
    - r-rcppeigen
    - r-shape
    - r-survival
  run:
    - r-base
    - r-foreach
    - r-matrix >=1.0_6
    - r-rcpp
    - r-rcppeigen
    - r-shape
    - r-survival

test:
  commands:
    - $R -e "library('glmnet')"           # [not win]
    - "\"%R%\" -e \"library('glmnet')\""  # [win]

about:
  home: https://glmnet.stanford.edu
  license: GPL-2.0-only
  summary: Extremely efficient procedures for fitting the entire lasso or elastic-net regularization path for linear regression, logistic and multinomial regression models, Poisson regression, Cox model,  multiple-response Gaussian, and the grouped multinomial regression; see <doi:10.18637/jss.v033.i01> and <doi:10.18637/jss.v039.i05>.
    There are two new and important additions. The family argument can be a GLM family object, which opens the door to any programmed family (<doi:10.18637/jss.v106.i01>). This comes with a modest computational cost, so when the built-in families suffice, they should be used instead.  The other novelty is the relax option,
    which refits each of the active sets in the path unpenalized. The algorithm uses cyclical coordinate descent in a path-wise fashion, as described in the papers cited.
  license_family: GPL2
  license_file:
    - {{ environ["PREFIX"] }}/lib/R/share/licenses/GPL-2

extra:
  recipe-maintainers:
    - conda-forge/r
