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
make requietments.txt for development #54
Comments
일단은 mysql은 wheel로 설치하면 되고. 그다지 필요 없을 것같은데... 윈도에서만 생기는 문제 아님? |
맥에서도 오류 떴던 것 같은데 조금 꼼수를 부려서 python스크립트로 설치하게 하면 어떨까나 import pip
req_list = ['Jinja2==2.7.3',
'MySQL-python',
'SQLAlchemy==0.9.8',
'Twisted==14.0.2',
'redis',
'Markdown==2.5.2',
'git+https://github.com/TintypeMolly/bleach@124-parse-email-fix',
'Pygments==2.0.2']
pip.main(['install'] + req_list) 이 방법의 단점은 pip --freeze를 그냥 못쓰는 것이지만... |
pip freeze가 왜 안됨? 될 것 같은데. 음. 근데 이렇게 설치하는 사례를 내가 별로 못본 것 같음. 적절하게 다른사람들도 표준적으로 사용하는 절차가 있다면 이걸 도입해도 좋지만. |
pip freeze를 못쓴다는 의미가 그냥 그 결과물을 그대로 저장하는 것이 아니라 그걸 기반으로 코드를 고쳐야 한다는 의미였음 이런 사례는 나도 못봤는데 그냥 제안으로 꺼내본 것이고 보통은 선택적(대체가 가능한) 의존성은 requirements.txt에 안넣는 방법을 선택하는 것 같음. 대신에 문서에 어떤 모듈을 사용하려면 뭘 설치하라는 식으로 적어두는 것 같은데. |
음 난 이거 그냥 놔뒀으면 함. 윈도우 환경만을 위해 뭔가 더러운게 필요하다는게 좀 석연찮은데. |
@TintypeMolly 그렇다면 그냥 MySQL-python이랑 redis는 readme에 남겨두고 requirements.txt에서는 삭제하는 것은 어떤가 |
제 생각엔 메인 requirements.txt는 production이 맞는 것 같고 production, development 환경 분리는 되어야한다고 봅니다. 제가 언급한 방법과 스크립트 작성 이외에 딱히 방법은 없는 것 같은데 django/djangoproject.com 에서도 일단 그렇게 쓰고 있긴 하네요. 그리고 mysql이랑 윈도우랑은 무슨 관계인지 잘 모르겠는데 단순히 prerequisite 문제인 것 같고 이건 뭐 OS에 상관없이 깔아줘야겠죠. redis도 깔아줘야하는 것은 마찬가지이니 prerequisite를 문서에 쓰는게 맞는 것 같고 나머지는 |
음... 그냥 내가 감을 잘못 잡고 있었던 것 같은데 +스크립트를 생각한 이유는 처음 웹 개발 하는 사람들에게는 더 편하지 않을까? 라는 생각임 |
관계가 있는게 아니라 그 환경에 prerequisite가 안 갖춰진거죠. redis 없으면 맥이나 리눅스에서도 서버 안 뜨잖아요. |
|
관계 있는 거 맞음 -_-; 니가 빌드 직접 해보던가. mysql-python 윈도우 빌드는 좀 어렵네 수준이 아니라 (검열삭제) 윈도우 못해먹겠네가 맞다고. |
그리고 사실 virualenv로 다시 자주 밀고 까는 것도 아니고, 개발환경이든 배포환경이든 설정할 때 한번만 까는 거라서 그냥 production에만 맞추고 싶고, 개발환경에선 그냥 mysql 자기가 알아서 주석처리 하던가 wheel 받아서 수동으로 깔던가 하는게 맞는 것 같은데. 난 requirements.txt는 좀 더 메타적인 의미에 집중하는게 맞다고 봄. |
나는 mysql이 yuzuki를 실행하는데 있어서 '반드시 필요한' prerequisite인지가 결정하는데 있어서 중요한 요소라고 생각하는데 |
음 MySQL 자체가 Yuzuki의 prerequsite가 아니다? 그건 그렇긴 하네. 내가 일단 설계할때 항상 mysql을 염두하고잡고 있긴 한데, 사실 없다고 크게 문제될 기능은 안쓰고 있는 것 같기도 하고? 그렇게 말하면 또 맞는 것 같기도 하고. 후에 mysql-specific 기능을 쓰게 되면 그때라도 다시 추가해도 상관 없으려나 |
근데 redis나 mysql 이외의 db를 완벽하게 지원해서 굴러가게 할 로드맵은 없음. 내가 이걸 일반적인 CMS 프로젝트로 발전시킨다면 필요있을 일이긴 하지만, 난 앞으로도 모든 설계는 mysql, redis에 맞춰서 할거임. 사실 니들 말도 투명성으로 따지고 들자면 그럴듯 하긴 한데, 내가 앞으로 저 둘만을 염두에 둘거라서 빼기 거시기한 느낌을 갖는 것도 또한 사실이다. |
야 니들 근데 실시간인데 걍 채팅방으로 가자 |
install.py 든 make든 설치/유지보수 스크립트를 만들 때까진 현황유지. |
requirements를 release버전과 develop버전으로 나누는게 좋을 듯
개발 환경을 위해서 기본으로 sqlite로 설정 되어있는데도 로컬 개발 환경에서는 필요없는 mysql라이브러리 설치하다가 실패가 뜸.
The text was updated successfully, but these errors were encountered: