Estou escrevendo um aplicativo de django em meu tempo livre para uma competição de derrubada de futebol que estamos realizando no trabalho. Achei que deveria usar esse tempo com sabedoria e me atualizar sobre virtualenv, pip, packaging, django 1.3 e como escrever um aplicativo facilmente redistribuível. Por enquanto, tudo bem.
Estou preparado para a parte de embalagem. Muitos dos aplicativos django no GitHub, por exemplo, são agrupados (aproximadamente) da mesma maneira. Vou usar django-uni-forms como exemplo.
Uma suposição que estou fazendo é que MANIFEST.in
e setup.py
são as únicas peças necessárias que o pip precisa para fazer seu trabalho. Isso é correto? Que outros componentes são necessários se minha suposição estiver errada?
Os arquivos de empacotamento necessários geralmente são gerados ou são feitos à mão? As dependências podem ser descritas e depois instaladas também? Meu aplicativo depende de django-uni-forms
, e eu o tenho listado em um requirements.txt
arquivo dentro do meu aplicativo que usei para instalar a dependência; mas isso é algo que o sistema de embalagem pode cuidar?
Quais são as etapas que preciso seguir para empacotar meu aplicativo de forma que o pip seja capaz de instalá-lo e de quaisquer dependências?