Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

패키징, 개발 환경 현대화 #151

Open
mete0r opened this issue Mar 7, 2016 · 0 comments
Open

패키징, 개발 환경 현대화 #151

mete0r opened this issue Mar 7, 2016 · 0 comments

Comments

@mete0r
Copy link
Owner

mete0r commented Mar 7, 2016

  • 몇 년 새 python 패키징이나 개발환경에서 많은 발전과 표준화가 이루어졌다.
  • 또 pyhwp의 setup.py나 개발용 buildout 구성도 쓸데 없이 과공학되거나 멀리 돌아가는 부분이 많다. 최대한 가볍고 새롭게 구성한다. buildout에서 모든 도구를 다 구성하려 하지 말고 virtualenv/pip 및 최신 os 배포판 패키지를 최대한 활용한다.
  • 패키징 문제:
    • 환경에 따라 dependency가 달라져야 하는 점이 가장 중요한 이슈이고, PEP 0508이 나아갈 방향임.
    • setuptools에서 최근 environment marker 관련해서 중요한 진전이 있었던 것 같은데, 아직 setup.py에서 environment marker를 기술하는 방법을 모르겠다. pbr은 아예 setup.cfg에 metadata를 별도로 빼는 방식을 취하고 있는데, python 커뮤니티는 이렇게 setuptools 역할을 최소화하는 방향으로 나아가는 것이 공감대인 것 같다.
    • pypy (>=5.0): lxml >=3.6.0 https://github.com/lxml/lxml/blob/master/CHANGES.txt#L256
    • pypy (<5.0): lxml <3.3.0을 사용해야 한다. lxml-cffi로 교체할만하면 한다. (얼마나 안정적인지?) https://bitbucket.org/pypy/compatibility/wiki/lxml
    • pypy: pycrypto 대신 pycryptodome을 사용해야 한다.
    • jython에서 외부 java jar 파일을 의존성으로 기술할 수 있으면 좋을 것 같은데, 아직 그럭저럭. jip?
  • 개발환경 문제:
    • buildout 프로필들을 최대한 축소 및 가볍게 만들고, 필요하면 requirements 프로필을 세분화한다.
    • lxml이 있느냐 없느냐 따위는 tox 환경으로 돌리고 개발 환경을 위한 virtualenv에는 필요한 것들은 최대한 다 설치하는 방향으로.
    • buildout에서 xsl-test를 위해 jython virtualenv를 만드는 따위 일을 하고 있는데 꼭 필요한지 다시 확인한다.
@mete0r mete0r added this to the 0.1 - Basic Setup milestone Mar 7, 2016
mete0r pushed a commit that referenced this issue Sep 17, 2017
mete0r pushed a commit that referenced this issue Sep 17, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant