{% set name = "networkx" %}
{% set version = "3.2.1" %}

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

source:
  url: https://pypi.io/packages/source/{{ name[0] }}/{{ name }}/{{ name }}-{{ version }}.tar.gz
  sha256: 9f1bb5cf3409bf324e0a722c20bdb4c20ee39bf1c30ce8ae499c8502b0b5e0c6
build:
  number: 0
  skip: True  # [py<39]
  script: {{ PYTHON }} -m pip install . -vv --no-deps --no-build-isolation

requirements:
  host:
    - python
    - pip
    - setuptools
    - wheel
  run:
    - python
  run-constrained:
    - numpy >=1.22
    - scipy >=1.9,!=1.11.0,!=1.11.1
    - matplotlib-base >=3.5
    - pandas >=1.4
    - lxml >=4.6
    - pygraphviz >=1.11
    - pydot >=1.4.2
    - sympy >=1.10

test:
  imports:
    - networkx
    - networkx.algorithms
    - networkx.algorithms.approximation
    - networkx.algorithms.assortativity
    - networkx.algorithms.bipartite
    - networkx.algorithms.centrality
    - networkx.algorithms.coloring
    - networkx.algorithms.community
    - networkx.algorithms.components
    - networkx.algorithms.connectivity
    - networkx.algorithms.flow
    - networkx.algorithms.isomorphism
    - networkx.algorithms.link_analysis
    - networkx.algorithms.minors
    - networkx.algorithms.operators
    - networkx.algorithms.shortest_paths
    - networkx.algorithms.traversal
    - networkx.algorithms.tree
    - networkx.classes
    - networkx.drawing
    - networkx.generators
    - networkx.linalg
    - networkx.readwrite
    - networkx.readwrite.json_graph
    - networkx.tests
    - networkx.utils
  requires:
    - pip
  commands:
    - pip check
  # downstreams:
  #   - anaconda-linter 0.1.1
  #   - mapclassify 2.5.0
  #   - scikit-image 0.22.0
  #   - visions 0.7.6

about:
  home: https://networkx.github.io/
  license: BSD-3-Clause
  license_file: LICENSE.txt
  license_family: BSD
  summary: Python package for creating and manipulating complex networks
  description: |
    NetworkX is a Python language software package for the creation,
    manipulation, and study of the structure, dynamics, and functions of complex
    networks.
  doc_url: https://networkx.org/documentation/stable
  dev_url: https://github.com/networkx/networkx

extra:
  skip-lints:
    - invalid_url   # it is common URL ...
  recipe-maintainers:
    - synapticarbors
    - ocefpaf
    - SylvainCorlay
    - FelixMoelder
