textacy icon indicating copy to clipboard operation
textacy copied to clipboard

Missing ARM64 build on conda

Open yuletide opened this issue 2 years ago • 1 comments

context

Apologies if I'm missing something obvious here! Installing textacy via conda currently fails on Mac OS 12.3.1 using minconda conda 4.12.0 and python 3.8.13 or 3.9.12

Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.

PackagesNotFoundError: The following packages are not available from current channels:
Current channels:

- https://conda.anaconda.org/conda-forge/osx-arm64
- https://conda.anaconda.org/conda-forge/noarch
- https://repo.anaconda.com/pkgs/main/osx-arm64
- https://repo.anaconda.com/pkgs/main/noarch
- https://repo.anaconda.com/pkgs/r/osx-arm64
- https://repo.anaconda.com/pkgs/r/noarch
- textacy

I attempted to build myself using conda build but ran into errors around a missing setup.py

conda skeleton pypi textacy --version 0.12.0
Using url https://files.pythonhosted.org/packages/31/dc/e42ab26a0fac830c5f9559c698cb54b46f6ad10820ee3e59208ce3ea4c57/textacy-0.12.0.tar.gz (420 KB) for textacy.
Downloading textacy
PyPI URL:  https://files.pythonhosted.org/packages/31/dc/e42ab26a0fac830c5f9559c698cb54b46f6ad10820ee3e59208ce3ea4c57/textacy-0.12.0.tar.gz
Using cached download
Unpacking textacy...
done
working in /var/folders/ds/7cp9h44s6vg_0ykkvyg_t0v40000gn/T/tmpx1g0nfgpconda_skeleton_textacy-0.12.0.tar.gz

Leaving build/test directories:
  Work:
 /Users/yuletide/miniconda3/conda-bld/skeleton_1651710511772/work
  Test:
 /Users/yuletide/miniconda3/conda-bld/skeleton_1651710511772/test_tmp
Leaving build/test environments:
  Test:
source activate  /Users/yuletide/miniconda3/conda-bld/skeleton_1651710511772/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh
  Build:
source activate  /Users/yuletide/miniconda3/conda-bld/skeleton_1651710511772/_build_env


Traceback (most recent call last):
  File "/Users/yuletide/miniconda3/bin/conda-skeleton", line 11, in <module>
    sys.exit(main())
  File "/Users/yuletide/miniconda3/lib/python3.8/site-packages/conda_build/cli/main_skeleton.py", line 64, in main
    return execute(sys.argv[1:])
  File "/Users/yuletide/miniconda3/lib/python3.8/site-packages/conda_build/cli/main_skeleton.py", line 59, in execute
    api.skeletonize(args.packages, args.repo, output_dir=args.output_dir, recursive=args.recursive,
  File "/Users/yuletide/miniconda3/lib/python3.8/site-packages/conda_build/api.py", line 276, in skeletonize
    skeleton_return = module.skeletonize(packages, output_dir=output_dir, version=version,
  File "/Users/yuletide/miniconda3/lib/python3.8/site-packages/conda_build/skeletons/pypi.py", line 315, in skeletonize
    get_package_metadata(package, d, data, output_dir, python_version,
  File "/Users/yuletide/miniconda3/lib/python3.8/site-packages/conda_build/skeletons/pypi.py", line 741, in get_package_metadata
    pkginfo = get_pkginfo(package,
  File "/Users/yuletide/miniconda3/lib/python3.8/site-packages/conda_build/skeletons/pypi.py", line 1192, in get_pkginfo
    run_setuppy(src_dir, tempdir, python_version, extra_specs=extra_specs, config=config,
  File "/Users/yuletide/miniconda3/lib/python3.8/site-packages/conda_build/skeletons/pypi.py", line 1224, in run_setuppy
    with open(os.path.join(src_dir, "setup.py")) as setup:
FileNotFoundError: [Errno 2] No such file or directory: '/var/folders/ds/7cp9h44s6vg_0ykkvyg_t0v40000gn/T/tmpx1g0nfgpconda_skeleton_textacy-0.12.0.tar.gz/textacy-0.12.0/setup.py'

I'm guessing its due to this change in v12

Removed deprecated setup.py and switched from setuptools to build for builds

I tried an older version and this is the furthest I got after much googling various errors due to missing packages:

(nlp) ~/code conda skeleton pypi textacy --version 0.11.0 --extra-specs numpy --extra-specs thinc --extra-specs Cython

15 warnings generated.
No eggs found in /var/folders/ds/7cp9h44s6vg_0ykkvyg_t0v40000gn/T/easy_install-mpjdk59r/spacy-3.3.0/egg-dist-tmp-3p022j2i (setup script problem?)
error: The 'spacy>=3.0.0' distribution was not found and is required by textacy
$PYTHONPATH = /var/folders/ds/7cp9h44s6vg_0ykkvyg_t0v40000gn/T/tmp8t4d8_ngconda_skeleton_textacy-0.11.0.tar.gz/textacy-0.11.0

Leaving build/test directories:
  Work:
 /Users/yuletide/miniconda3/conda-bld/skeleton_1651711326799/work
  Test:
 /Users/yuletide/miniconda3/conda-bld/skeleton_1651711326799/test_tmp
Leaving build/test environments:
  Test:
source activate  /Users/yuletide/miniconda3/conda-bld/skeleton_1651711326799/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh
  Build:
source activate  /Users/yuletide/miniconda3/conda-bld/skeleton_1651711326799/_build_env


Error: command failed: /Users/yuletide/miniconda3/conda-bld/skeleton_1651711326799/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/bin/python setup.py install

cc @JSimple

yuletide avatar May 05 '22 00:05 yuletide

Hi @yuletide , sorry about this hassle (and for leaving you hanging -- been a busy couple months!). I have minimal experience with conda, and in all honesty, I have no idea how to resolve this issue. Did you happen to track down a solution? Or, as a conda user, do you have any general suggestions about how to get ARM64 builds into your packaging ecosystem?

bdewilde avatar Jul 25 '22 23:07 bdewilde

Hi again @yuletide ! I finally got round to merging in https://github.com/conda-forge/textacy-feedstock/pull/35, which hopefully fixes your issue. If you're still around and the problem persists, please reopen this issue. I appreciate your patience, it's been a minute since I had bandwidth to hack on textacy.

bdewilde avatar Mar 09 '23 02:03 bdewilde