virtualenvλ₯Ό νμ±ννλ €κ³ νλ©΄ λ€μ μ€λ₯κ° λ°μν©λλ€.
$ source test-env/bin/activate
-bash: _OLD_VIRTUAL_PATH: unbound variable
μ΄κ²μ μ€μ λμ§ μμ λ³μμ μ‘μΈμ€ν λ μ€λ₯κ° λ°μνλ _nounset_ μ΅μ μ μ¬μ©νλλ‘ Bashλ₯Ό ꡬμ±νκΈ° λλ¬Έμ λ°μν©λλ€( μ¬κΈ° μ°Έμ‘°).
λ€μ μ€μ λ³κ²½νμ¬ μ΄ λ¬Έμ λ₯Ό ν΄κ²°ν μ μμ΅λλ€.
if [ -n "$OLD_VIRTUAL_PATH" ] ; then
μκ²:
if [ -n "${_OLD_VIRTUAL_PATH=''}" ] ; then
${VAR=DEFAULT} ꡬ문μ VARμ΄ μ€μ λμ΄ μμΌλ©΄ VARμ λ°ννκ³ κ·Έλ μ§ μμΌλ©΄ DEFAULTλ₯Ό λ°νν©λλ€( μ΄ νμ΄μ§ μ°Έμ‘° κ·Έλ¬λ κ·Έκ²μ νΈλ¦μ μνν©λλ€.
μ¬μ€, κ·Έκ²μ λͺ¨λ μ€μ‘΄ ββν
μ€νΈλ₯Ό λ€μ μμ±ν΄μΌ νκΈ° λλ¬Έμ μ λ¦λ°μ΄ μμ μ
λλ€. μ€ν¬λ¦½νΈ μλ¨μ set -o nounset
λ₯Ό μΆκ°νλ κ²μ΄ ν¨μ¬ μ½μ΅λλ€.
λλ μ΄κ±° λλ Έλ€.
λλ
μ€ν¬λ¦½νΈ λ΄λΆμ λν΄ -uλ₯Ό μ€μ ν΄μ ν λ€μ λ§λ¬΄λ¦¬ν λ μλ μ€μ μ 볡μνλ λ°©λ²μ΄ νλΉν κ²μ΄λΌκ³ μκ°ν©λλ€.
λλ μ¬κΈ°μμ κ·Έλ κ²νλ λ°©λ²μ μμ λ΄λ €κ³ λ Έλ ₯νκ³ μμ΅λλ€ - http://stackoverflow.com/questions/13494841/how-can-you-ask-bash-for-the-current-options
ν 리νμ€νΈ - https://github.com/pypa/virtualenv/pull/357
λλ ν κ²μ΄λ€:
if [ -n "$OLD_VIRTUAL_PATH" ] ; then
μκ²:
if [ -n "${_OLD_VIRTUAL_PATH-}" ] ; then
${var-DEFAULT} If var not set, evaluate expression as $DEFAULT *
λ€, μ§μ ν΄λ³΄μΈμ.
virtualenv==1.11.4
μ€ν μ€
νμ¬ ν΄κ²° λ°©λ²β
set -o nounset
[...]
set +o nounset
. ~/.env/bin/activate
set -o nounset
[...]
μ΄κ²μ if ! [ -z "${_OLD_VIRTUAL_PATH+x}" ] ; then
λ₯Ό μ¬μ©νλ https://github.com/pypa/virtualenv/pull/723 μ μν΄ μμ λ μ μμ΅λλ€.
κ·Έλ¬λ $_OLD_VIRTUAL_PATH
μ체λ #722μμ μ κ±°λ μμ μ
λλ€. κ·Έλ¬λ #723μ λ€λ₯Έ λ³μμμλ μ΄λ₯Ό μμ ν©λλ€.
:+1:
λλ μ΄κ±° λλ €....
μ΄λ κ² μ¬μ΄ λ¬Έμ κ° 4λ
μ΄ μ§λλλ‘ κ³ μ³μ§μ§ μλλ€λ κ² μ’ μ΄μνλ€.
beaumartinezμ ν΄κ²° λ°©λ²μ νμ¬λ‘μλ κ°μ₯ κ°λ¨ν©λλ€.
μ΄κ²μ #645λ‘ μμ λμμ΅λλ€.
κ²°μ λ
@dstufft μ΄ μμ λ 릴리μ€λ₯Ό μ§μ νμ¬ νμν μ΅μ λ²μ μ΄ μ€μΉλμλμ§ νμΈν μ μμ΅λκΉ? λ²κ·Έμμ μμ μ¬νμ΄ ν¬ν¨λ 릴리μ€μ κ΄λ ¨νμ¬ μ ν λͺ ννμ§ μμ΅λλ€.
@ssbarnea μμ λκΈμ μΈκΈλ κ²μ²λΌ 2015λ 8μ 12μΌμ μμ λμμΌλ―λ‘ ν΄λΉ λ μ§ μ΄νμ 릴리μ€λ λͺ¨λ λ²μ μ λλ€. https://virtualenv.pypa.io/en/latest/changes/ μμ μ΄λ 13.1.1μ μλ―Έν©λλ€(μ€μ λ‘ ν΄λΉ λ²μ μ λν λ©λͺ¨λ μ΄ λ³κ²½ μ¬νμ ꡬ체μ μΌλ‘ μΈκΈν¨). κ·Έ λͺ¨λ μ 보λ μ½κ² μ¬μ©ν μ μμΌλ―λ‘ κ°λ¨ν κ²μμΌλ‘ μ°Ύμ μ μμ κ²μ λλ€(μ΄κ²μ΄ μ κ° ν κ²μ λλ€).
λμ μμμ΄ μμ΅λλ€. μ΄ λ²κ·Έλ₯Ό λ€μ μ΄μ΄μΌ ν©λλ€. μλνλ©΄ μ΄μ activate: line 13: _OLD_VIRTUAL_PYTHONHOME: unbound variable
λ₯Ό μ»μκ³ μ΄ λ¬Έμ λ₯Ό μμ νλ λμ strict bash λ₯Ό μ¬μ©νμ¬ κ°μ νκ²½μ νμ±ννλ €λ ν
μ€νΈλ₯Ό λμ
νλ κ²μ΄ μ€μνλ€κ³ μκ°ν©λλ€.
μ΄κ²μ line 22: ZSH_VERSION: unbound variable
μλ μ μ©λλ©° λͺ©λ‘μ΄ μΌλ§λ μ€λ κ°μ§ κΆκΈν©λλ€... λ΄ ν΄κ²° λ°©λ² λͺ
λ Ήμ€μ΄ λΉλ€μ΄μ§ κ²μ²λΌ 보μ΄κΈ° μμν©λλ€.
PS1="${{PS1:-}}" _OLD_VIRTUAL_PATH="${{_OLD_VIRTUAL_PATH:-}}" _OLD_VIRTUAL_PYTHONHOME="${{_OLD_VIRTUAL_PYTHONHOME:-}}" source "$VENV/bin/activate"
λ¬Όλ‘ νκ²½μ μ§μ μ€μ νκ±°λ Python μ€ν νμΌμ μ 체 κ²½λ‘ μ΄λ¦μ μ¬μ©ν μ μμ΅λλ€.
μ΄μ λν ν λ‘ μ λ€μ μμν΄μ μ£μ‘ν©λλ€. λΉλ μλ²μ μλ virtualenvμ λ²μ μ νμΈνμ§ μλ μ€μλ₯Ό μ μ§λ κ³ κ³ λ λ²μ 1.10.1μ΄λΌλ μΆμ ν λ°κ²¬μ νμ΅λλ€. μ΄κ²μ λ§μ λ²κ·Έλ‘ κ°μ£Όλ©λλ€. λ΄μΌ μ κ·Έλ μ΄λ ν μμ μ λλ€.
μ¬κ³Όκ° νμνμ§ μμ΅λλ€. μ¬μ€ μ΄ λΆνμ ν΅ν΄ λλ λͺ κ°μ§λ₯Ό λ°°μ λ€.
λν.
2017λ
3μ 7μΌ νμμΌ μ€ν 3:09 Sorin Sbarnea μλ¦Ό @github.com
μΌλ€:
μ΄μ λν ν λ‘ μ μ¬κ°νμ¬ μ£μ‘ν©λλ€.
λΉλ μλ²μ μλ virtualenvμ λ²μ μ νμΈνκ³
λͺ»μκΈ΄ λ°κ²¬, κ³ λ λ²μ 1.10.1. μ΄κ²μ λ€μμ κ³μ°ν κ²μ λλ€.
λ§μ λ²κ·Έ. λ΄μΌ μ κ·Έλ μ΄λ ν μμ μ λλ€.β
λΉμ μ΄ λκΈμ λ¬μκΈ° λλ¬Έμ μ΄κ²μ λ°λ κ²μ λλ€.
μ΄ μ΄λ©μΌμ μ§μ λ΅μ₯νκ³ GitHubμμ νμΈνμΈμ.
https://github.com/pypa/virtualenv/issues/150#issuecomment-284859700 ,
λλ μ€λ λ μμκ±°
https://github.com/notifications/unsubscribe-auth/AAFWbGU02kdSoecXUESrDHlOUN9Rci5Oks5rjcdvgaJpZM4AQ_Js
.
νμ¬ λ¦΄λ¦¬μ€μμλ λ²κ·Έκ° λ¨μμλ κ² κ°μμ https://github.com/pypa/virtualenv/issues/1029 λ‘ μ¬λ Έμ΅λλ€.
μ§κΈ μμ λμμ΅λλ€ https://github.com/pypa/virtualenv/pull/922
κ°μ₯ μ μ©ν λκΈ
νμ¬ ν΄κ²° λ°©λ²β