2010-11-29 23 views
0

Notre projet python volumineux est en cours de mise à niveau à partir de l'ancien projet "setuptools" pour utiliser "distribuer" comme remplacement de remplacement. Nous avons remarqué une différence problématique entre les deux applications: Dans setuptools, un oeuf qui avait un drapeau Z-safe indéfini était supposé être sans danger pour le zip et s'installer comme un fichier compressé (à moins que l'utilisateur ne spécifie explicitement de ne pas).Est-il possible de faire des oeufs avec un drapeau Zip-safe par défaut pour être installé avec zippé avec Distribute?

En comparaison avec le nouveau Distribuer, tous les œufs sont supposés ne pas être sécurisés par zip (et seront installés décompressés) à moins qu'ils aient le drapeau Zip-safe défini pour être explicite True. En conséquence, les œufs qui auraient été précédemment installés simplement en copiant le fichier .egg dans les paquets de sites sont maintenant décompressés vers des paquets de site. Idéalement, je voudrais que la nouvelle distribution d'installer des oeufs d'une manière qui est exactement compatible avec les anciens setuptools. Cela peut sembler une chose insignifiante, mais si nous changeons quelque chose d'aussi fondamental que la structure de répertoires du dossier site-packages, cela forcera notre équipe à passer par une phase d'UAT internationale qui prendra beaucoup de temps. Il serait préférable que nous puissions simplement garantir que le nouveau programme d'installation produit exactement la même structure de répertoire que l'ancien.

Pour info, j'utilise la toute dernière distribution sur Python 2.4.4 pour Windows XP 32 bits.

Répondre

1

Si vous utilisez Python 2.4 sous Windows, il n'y a aucun avantage à utiliser Distribute sur Setuptools. Distribute offre seulement un avantage comparatif sur Python 2.6 (où il supporte la nouvelle disposition du répertoire "home") et Python 3.x (sur lequel setuptools n'a pas été porté). En dehors de cela, il n'y a pas vraiment de "mises à jour" dans Distribute, par rapport à setuptools; en fait, Distribute contient toujours des bogues qui ont été corrigés dans setuptools ou qui n'ont jamais existé dans setuptools (parce qu'ils ont été ajoutés dans Distribute).

Vous devez également savoir que les personnes qui ont créé Distribute travaillent maintenant principalement sur Distutils2 et ne prévoient PAS d'améliorations significatives de Distribute. Je sais que ce n'est peut-être pas la solution que vous cherchez, puisque vous avez déjà décidé de changer de système. Toutefois, si vous vous êtes uniquement basé sur la rumeur populaire selon laquelle setuptools n'est pas maintenu ou si vous avez des bogues qui distribuent des correctifs (ce qui est en fait l'inverse), vous pourriez vouloir reconsidérer.