{% set name = "thinc" %}
{% set version = "8.1.10" %}

package:
  name: {{ name|lower }}
  version: {{ version }}

source:
  url: https://pypi.io/packages/source/{{ name[0] }}/{{ name }}/{{ name }}-{{ version }}.tar.gz
  sha256: 6c4a48d7da07e044e84a68cbb9b22f32f8490995a2bab0bfc60e412d14afb991

build:
  number: 0
  script: {{ PYTHON }} -m pip install . --no-deps --no-build-isolation -vv
  skip: True  # [py<36]
  # 2021/11/11: skip s390x as many dependencies are not on this platform: 
  # e.x., preshed, cython-blis, cymem, murmurhash. 
  skip: True  # [s390x]

requirements:
  build:
    - {{ compiler('cxx') }}
  host:
    - cymem 2.0.6
    - cython 0.29.32
    - cython-blis 0.7.9
    - murmurhash 1.0.7
    - numpy {{ numpy }}
    - pip
    - preshed 3.0.6
    - python
    - setuptools
    - wheel
  run:
    - python
    - {{ pin_compatible('numpy') }}
    - murmurhash >=1.0.2,<1.1.0
    - cymem >=2.0.2,<2.1.0
    - preshed >=3.0.2,<3.1.0
    - cython-blis >=0.7.8,<0.8.0
    - wasabi >=0.8.1,<1.2.0
    - srsly >=2.4.0,<3.0.0
    - catalogue >=2.0.4,<2.1.0
    - confection >=0.0.1,<1.0.0
    - pydantic >=1.7.4,!=1.8,!=1.8.1,<1.11.0
    - packaging >=20.0
    - setuptools
    # Backports of modern Python features
    - typing_extensions >=3.7.4.1,<4.5.0  # [py<38]

test:
  requires:
    - hypothesis
    - pytest
    - mock
    - pathy >=0.3.5
    # For thinc.api
    - pip
  imports:
    - thinc
    - thinc.api
    - thinc.backends
    - thinc.extra
    - thinc.layers
    - thinc.shims
  commands:
    - pip check
    - python -m pytest --tb=native --pyargs thinc
about:
  home: https://thinc.ai/
  license: MIT
  license_family: MIT
  license_file: LICENSE
  summary: A refreshing functional take on deep learning, compatible with your favorite libraries.
  description: |
    Thinc is a lightweight deep learning library that offers an elegant, type-checked, functional-programming API 
    for composing models, with support for layers defined in other frameworks 
    such as PyTorch, TensorFlow and MXNet. You can use Thinc as an interface layer, a standalone toolkit 
    or a flexible way to develop new models. Previous versions of Thinc have been running quietly in production in thousands of companies, 
    via both spaCy and Prodigy.
  dev_url: https://github.com/explosion/thinc/
  doc_url: https://thinc.ai/docs

extra:
  recipe-maintainers:
    - rmax
    - honnibal
    - ines
    - adrianeboyd
  skip-lints:
    - cython_needs_compiler
    - python_build_tool_in_run
