pdm-project / pdm

A modern Python package and dependency manager supporting the latest PEP standards
https://pdm-project.org
MIT License
7.81k stars 386 forks source link

Pdm info reports x86 on Mac M1 #3157

Open zagorulkinde opened 1 week ago

zagorulkinde commented 1 week ago

Make sure you run commands with -v flag before pasting the output.

Steps to reproduce

[project]

dependencies = [
    "torch==1.13.0",
    "transformers==4.36.2"
]
requires-python = "==3.9.*"
readme = "README.md"

[build-system]
requires = ["pdm-backend"]
build-backend = "pdm.backend"

[[tool.pdm.source]]
type = "find_links"
url = "https://download.pytorch.org/whl/torch_stable.html"
name = "torch"

[tool.pdm.dev-dependencies]
gpu = [
    "torch==1.13.0+cu116; sys_platform=='linux'"
]
pdm lock --platform=macos_x86_64 --lockfile=py39-macos.lock 
pdm install --lockfile py39-macos.lock

Actual behavior


❯ pdm install --lockfile py39-macos.lock  -v                                                                                                                                                          ─╯
STATUS: Resolving packages from lockfile...
ERROR: None of the lock targets matches the current env (==3.9.13, macos_10_16_x86_64, cpython):
 - (==3.9.*, macos_12_0_arm64)
Traceback (most recent call last):
  File "/Users/dmitry/Development/python/recommendation_system/.venv/bin/pdm", line 8, in <module>
    sys.exit(main())
  File "/Users/dmitry/Development/python/recommendation_system/.venv/lib/python3.9/site-packages/pdm/core.py", line 351, in main
    return core.main(args or sys.argv[1:])
  File "/Users/dmitry/Development/python/recommendation_system/.venv/lib/python3.9/site-packages/pdm/core.py", line 269, in main
    raise cast(Exception, err).with_traceback(traceback) from None
  File "/Users/dmitry/Development/python/recommendation_system/.venv/lib/python3.9/site-packages/pdm/core.py", line 264, in main
    self.handle(project, options)
  File "/Users/dmitry/Development/python/recommendation_system/.venv/lib/python3.9/site-packages/pdm/core.py", line 196, in handle
    command.handle(project, options)
  File "/Users/dmitry/Development/python/recommendation_system/.venv/lib/python3.9/site-packages/pdm/cli/commands/install.py", line 103, in handle
    actions.do_sync(
  File "/Users/dmitry/Development/python/recommendation_system/.venv/lib/python3.9/site-packages/pdm/cli/actions.py", line 315, in do_sync
    candidates = resolve_candidates_from_lockfile(project, requirements, groups=list(selection))
  File "/Users/dmitry/Development/python/recommendation_system/.venv/lib/python3.9/site-packages/pdm/cli/actions.py", line 246, in resolve_candidates_from_lockfile
    raise PdmException("No compatible lock target found")
pdm.exceptions.PdmException: No compatible lock target found

Expected behavior

success

Environment Information

pdm info --env                                                                                                                                                                                      
{
  "implementation_name": "cpython",
  "implementation_version": "3.9.13",
  "os_name": "posix",
  "platform_machine": "x86_64",
  "platform_release": "22.5.0",
  "platform_system": "Darwin",
  "platform_version": "Darwin Kernel Version 22.5.0: Thu Jun  8 22:22:20 PDT 2023; root:xnu-8796.121.3~7/RELEASE_ARM64_T6000",
  "python_full_version": "3.9.13",
  "platform_python_implementation": "CPython",
  "python_version": "3.9",
  "sys_platform": "darwin"
}

❯ pdm info                                                                                                                                                                                            ─╯
PDM version:
  2.18.2
Python Interpreter:
  /Users/dmitry/Development/python/recommendation_system/.venv/bin/python (3.9)
Project Root:
  /Users/dmitry/Development/python/recommendation_system
Local Packages:

arch                                                                                                                                                                                                
arm64

uname -a                                                                                                                                                                                            
Darwin mbp Darwin Kernel Version 22.5.0: Thu Jun  8 22:22:20 PDT 2023; root:xnu-8796.121.3~7/RELEASE_ARM64_T6000 arm64
frostming commented 1 week ago

You may be using a x86_64 python interpreter, check the base interpreter used by /Users/dmitry/Development/python/recommendation_system/.venv/bin/python You can check by looking at /Users/dmitry/Development/python/recommendation_system/.venv/pyvenv.cfg

zagorulkinde commented 5 days ago
home = /Users/dmitry/opt/anaconda3/bin
implementation = CPython
version_info = 3.9.13.final.0
virtualenv = 20.26.3
include-system-site-packages = false
base-prefix = /Users/dmitry/opt/anaconda3
base-exec-prefix = /Users/dmitry/opt/anaconda3
base-executable = /Users/dmitry/opt/anaconda3/bin/python3.9
prompt = recommendation_system-3.9
zagorulkinde commented 4 days ago

So after removal conda from path and replacing it with system python everything works fine Can you close this issue if your want or just add some info about such behavior. Thanks.

home = /Library/Developer/CommandLineTools/usr/bin
implementation = CPython
version_info = 3.9.6.final.0
virtualenv = 20.26.4
include-system-site-packages = false
base-prefix = /Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9
base-exec-prefix = /Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9
base-executable = /Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/bin/python3.9
prompt = recommendation_system-3.9
  ✔ Install torch 1.13.0 successful
  Installing the project as an editable package...
pdm.termui: Preparing environment(Isolated mode) for PEP 517 build...
pdm.termui: Running PEP 517 backend to build a wheel for <Link file:///Users/dmitry/Development/python/recommendation_system (from None)>
pdm.termui: ======== Start resolving requirements ========
pdm.termui:   Adding requirement pdm-backend
pdm.termui:   Adding requirement python==3.9.6
pdm.termui:   Adding requirement importlib-metadata>=3.6; python_version < "3.10"(from pdm-backend 2.3.3)
pdm.termui:   Adding requirement zipp>=3.20(from importlib-metadata 8.5.0)
pdm.termui: ======== Resolution Result ========
pdm.termui:               python None
pdm.termui:          pdm-backend 2.3.3
pdm.termui:   importlib-metadata 8.5.0
pdm.termui:                 zipp 3.20.2
pdm.termui: Installing importlib-metadata@8.5.0...
pdm.termui: Using cached response for https://files.pythonhosted.org/packages/a0/d9/a1e041c5e7caa9a05c925f4bdbdfb7f006d1f74996af53467bc394c97be7/importlib_metadata-8.5.0-py3-none-any.whl
unearth.preparer: Downloading <Link https://files.pythonhosted.org/packages/a0/d9/a1e041c5e7caa9a05c925f4bdbdfb7f006d1f74996af53467bc394c97be7/importlib_metadata-8.5.0-py3-none-any.whl (from https://pypi.org/simple/importlib-metadata/)> (26 kB)
pdm.termui: Installing pdm-backend@2.3.3...
pdm.termui: Using cached response for https://files.pythonhosted.org/packages/eb/fe/483cf0918747a32800795f430319ec292f833eb871ba6da3ebed4553a575/pdm_backend-2.3.3-py3-none-any.whl
unearth.preparer: Downloading <Link https://files.pythonhosted.org/packages/eb/fe/483cf0918747a32800795f430319ec292f833eb871ba6da3ebed4553a575/pdm_backend-2.3.3-py3-none-any.whl (from https://pypi.org/simple/pdm-backend/)> (104 kB)
pdm.termui: Installing zipp@3.20.2...
unearth.preparer: Downloading <Link https://files.pythonhosted.org/packages/62/8b/5ba542fa83c90e09eac972fc9baca7a88e7e7ca4b221a89251954019308b/zipp-3.20.2-py3-none-any.whl (from https://pypi.org/simple/zipp/)> (9.2 kB)
pdm.termui: Synchronization complete.
pdm.termui: /var/folders/74/23q4rswd5718xvfs1kfffbnc0000gn/T/pdm-build-env-ip42vpdc-shared/lib/python3.9/site-packages/pdm/backend/wheel.py:243: PDMWarning: No license files are matched with glob patterns ['LICENSES/*', 'LICEN[CS]E*', 'COPYING*', 'NOTICE*', 'AUTHORS*'].
pdm.termui:   for file in self.find_license_files():
pdm.termui:  - Adding .pdm-build/.gitignore -> .gitignore
pdm.termui:  - Adding .pdm-build/recommendation_system-0.3.0.dist-info/METADATA -> recommendation_system-0.3.0.dist-info/METADATA
pdm.termui:  - Adding .pdm-build/recommendation_system-0.3.0.dist-info/WHEEL -> recommendation_system-0.3.0.dist-info/WHEEL
pdm.termui:  - Adding .pdm-build/recommendation_system.pth -> recommendation_system.pth
pdm.termui:  - Adding recommendation_system-0.3.0.dist-info/RECORD -> recommendation_system-0.3.0.dist-info/RECORD
  ✔ Install recommendation_system 0.3.0 successful
  🎉 All complete!