Pipenv: pipenv둜 바퀴λ₯Ό λ§Œλ“œμ‹œκ² μŠ΅λ‹ˆκΉŒ?

에 λ§Œλ“  2018λ…„ 03μ›” 07일  Β·  3μ½”λ©˜νŠΈ  Β·  좜처: pypa/pipenv

ν•΄μ‹œ 검증을 ν™œμš©ν•˜λ©΄μ„œ Pipfile.lock 의 λͺ¨λ“  쒅속성에 λŒ€ν•œ 바퀴λ₯Ό 생성할 수 있기λ₯Ό λ°”λžλ‹ˆλ‹€. 11.1.2 μ΄μ „μ—λŠ” λ‹€μŒμ„ μ‚¬μš©ν•˜μ—¬ 이 μž‘μ—…μ„ μˆ˜ν–‰ν•  수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

pipenv lock -r > reqs.txt
pip wheel -r reqs.txt

_(#1417은 이 μ›Œν¬ν”Œλ‘œμ— λ¬Έμ œκ°€ μžˆμ—ˆμ§€λ§Œ 그렇지 μ•ŠμœΌλ©΄ μž‘λ™ν–ˆμŠ΅λ‹ˆλ‹€)_

11.1.2μ—μ„œ μš”κ΅¬ 사항 μŠ€νƒ€μΌ 좜λ ₯μ—μ„œ β€‹β€‹ν•΄μ‹œκ°€ μ œκ±°λ˜μ—ˆμŠ΅λ‹ˆλ‹€. μ΄λŠ” (afaik) 잠금 νŒŒμΌμ—μ„œ ν•΄μ‹œ 검증 νœ μ„ λΉŒλ“œ/λ‹€μš΄λ‘œλ“œν•  방법이 μ—†μŒμ„ μ˜λ―Έν•©λ‹ˆλ‹€.

μ‚¬μš© μ‚¬λ‘€λŠ” μ„œλ²„μ—μ„œ 컴파일/개발 도ꡬ 없이 μ˜€ν”„λΌμΈ μ„€μΉ˜ λ˜λŠ” μ„€μΉ˜λ₯Ό μœ„ν•΄ Python λͺ¨λ“ˆμ„ νŒ¨ν‚€μ§•ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. 바퀴λ₯Ό λ§Œλ“  λ‹€μŒ μ΅œμ†Œν•œμ˜ Python ν™˜κ²½μ—μ„œ 배포 및 μ„€μΉ˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€.


이 κΈ°λŠ₯이 ν”„λ‘œμ νŠΈμ— ν¬ν•¨ν•˜λŠ” 것을 κ³ λ €ν•  수 μžˆμŠ΅λ‹ˆκΉŒ? 그렇지 μ•Šμ€ 경우 이 μ›Œν¬ν”Œλ‘œλ₯Ό λ‹€μ‹œ 지원할 수 μžˆλŠ” 방법이 μžˆμŠ΅λ‹ˆκΉŒ?

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

λˆ„κ΅°κ°€κ°€ μ—¬κΈ°μ—μ„œ μ†”λ£¨μ…˜μ„ μ°ΎλŠ” 경우λ₯Ό λŒ€λΉ„ν•˜μ—¬ 맀우 μ‰½μŠ΅λ‹ˆλ‹€( pipenv λ‚΄λΆ€κ°€ λ³€κ²½λ˜μ§€ μ•ŠλŠ”λ‹€κ³  κ°€μ •).

from pipenv.utils import convert_deps_to_pip
with open('Pipfile.lock') as f:
    deps = json.load(f)['default']
# remove local project which wouldn't have a hash
for k, v in list(deps.items()):
    if v.get('path') == '.':
        del(deps[k])
path_to_requirements_file_with_hashes = convert_deps_to_pip(deps)

λͺ¨λ“  3 λŒ“κΈ€

ν˜„μž¬λ‘œμ„œλŠ” κ³„νšμ΄ μ—†μŠ΅λ‹ˆλ‹€

κ·ΈλŸ¬λ‚˜ 이것은 pipenv-wheels 도ꡬ에 λŒ€ν•œ 쒋은 기회처럼 λ“€λ¦½λ‹ˆλ‹€.

λˆ„κ΅°κ°€κ°€ μ—¬κΈ°μ—μ„œ μ†”λ£¨μ…˜μ„ μ°ΎλŠ” 경우λ₯Ό λŒ€λΉ„ν•˜μ—¬ 맀우 μ‰½μŠ΅λ‹ˆλ‹€( pipenv λ‚΄λΆ€κ°€ λ³€κ²½λ˜μ§€ μ•ŠλŠ”λ‹€κ³  κ°€μ •).

from pipenv.utils import convert_deps_to_pip
with open('Pipfile.lock') as f:
    deps = json.load(f)['default']
# remove local project which wouldn't have a hash
for k, v in list(deps.items()):
    if v.get('path') == '.':
        del(deps[k])
path_to_requirements_file_with_hashes = convert_deps_to_pip(deps)
이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰