{% set name = "snowflake-snowpark-python" %}
{% set version = "1.19.0" %}

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

source:
  url: https://github.com/snowflakedb/snowpark-python/archive/refs/tags/v{{ version }}.tar.gz
  sha256: 774e04b48570d74f59787b5d588d98efe94e058273e043095328b1d80a416ce7

build:
  number: 0
  skip: true  # [py<38 or s390x or py>311]
  script_env:
    - SNOWFLAKE_IS_PYTHON_RUNTIME_TEST=1
  script: {{ PYTHON }} -m pip install . --no-deps --no-build-isolation -v

requirements:
  host:
    - python
    - pip
    - setuptools >=40.6.0
    - wheel
  run:
    - python
    - cloudpickle >=1.6.0,<=2.2.1,!=2.1.0,!=2.2.0  # [py<311]
    - cloudpickle 2.2.1                            # [py>=311]
    - snowflake-connector-python >=3.10.0,<4.0.0
    - typing-extensions >=4.1.0,<5.0.0
    - pyyaml
  run_constrained:
    # modin
    - pandas <3.0.0,>=1.0.0
    - modin ==0.28.1
    # opentelemetry
    - opentelemetry-api >=1.0.0,<2.0.0
    - opentelemetry-sdk >=1.0.0,<2.0.0

test:
  requires:
    - pip
  imports:
    - snowflake.snowpark
    - snowflake.snowpark._internal
    - snowflake.snowpark._internal.analyzer
    - snowflake.snowpark.mock
  commands:
    - pip check

about:
  home: https://github.com/snowflakedb/snowpark-python
  license: Apache-2.0
  license_family: Apache
  license_file: LICENSE.txt
  summary: Snowflake Snowpark Python API
  description: |
      The Snowpark library provides intuitive APIs for querying and
      processing data in a data pipeline. Using this library, you can
      build applications that process data in Snowflake without having
      to move data to the system where your application code runs.
  dev_url: https://github.com/snowflakedb/snowpark-python
  doc_url: https://github.com/snowflakedb/snowpark-python/blob/main/README.md

extra:
  recipe-maintainers:
    - sfc-gh-yixie
    - sfc-gh-achandrasekaran
    - sfc-gh-mkeller
  skip-lints:
    - python_build_tool_in_run
