SORU
14 HAZİRAN 2011, Salı


Dağıtmak, distutils, setuptools ve distutils2 arasındaki farklar?

Durumu

Python 3 için bir açık kaynak Kütüphanesi port etmeye çalışıyorum. (Herkes merak ise 17**,.)

Yani, Python 3 için yapı 2to3 otomatik olarak çalıştırmak için ihtiyacım var. Bunun için distribute kullanmak istiyorum. Bu nedenle, distutils mevcut sistemin bağlantı noktasına ihtiyacım var.


Sorun

Ne yazık ki, modülleri—*, distribute, distutils5*bunlar arasındaki fark nedir emin değilim. Belgelendirme kabataslak olarak iyi, hepsi galiba bir çatal, bir başka Kullanılanlar hariç olmak üzere, çoğu uyumlu koşullar (ama aslında hepsi değil)...ve benzeri ve benzeri.


Soru

Birileri farkları açıklayabilir mi?Kullanmak için ne yapmam gerekiyor? En modern çözümü nedir? (Bir kenara, aynı zamanda Distribute, taşımaya, ama bu sorunun kapsamı dışında bir tad...) bazı kılavuz memnun olurum

CEVAP
7 ŞUBAT 2013, PERŞEMBE


Eylül 2014, bu soruya başka cevaplar bütün olarak out-of-tarih bir yıl. Python ambalaj konularda danışmanlık rastlamak ne zaman, Yayın tarihi bakmayı unutma, ve güncel bilgiler güvenmiyorum.

Python Packaging User Guide Readthedocs üzerinde barındırılan bir okuma değer. Her sayfa bir "son" tarih el kitabının yeniliği kontrol edebilirsiniz, ve oldukça kapsamlı çok görüntülenen. gözden geçirdi Resmi Python 3.4 doktorlar şimdi bu kaynak için, sadece itimat eklemek için kullanılır.

Araçlar özeti:

İşte Eylül 2014 Python ambalaj yatay bir özeti:

  • Distutilshala Python ambalaj için standart bir araçtır. Standart kütüphane (Python 2 ve Python 3.4 3.0) dahildir. Basit Python dağıtımları için yararlıdır, ama özellikleri eksik. setup.py komut alınabilir distutils Python paketi tanıttı.

  • Setuptools'sınırlamalar ve standart kütüphane dahil değildir. Distutils aşmak için geliştirilmiştir Komut satırı yardımcı programı easy_install denir tanıttı. Ayrıca tanıtılan setuptools Python paket ithal edilebilecek içinde setup.py script, pkg_resources Python paket ithal edilebilecek kodunuzu bulmak için veri dosyaları yüklü bir dağıtım. Onun frikiklerinden biri maymun-yama distutils Python paketi. İyi pip ile çalışması gerekir. En son sürümü Ağustos 2014'te serbest bırakıldı.

  • DağıtmakSetuptools. bir çatal olduğunu Aynı ad, paylaşılır, import setuptools yüklü Dağıtmak olsaydı, gerçekten paketi Dağıtmak dağıtılmış alma.Dağıtmak Setuptools geri 0.7 birleştirildiDağıtmak bir daha kullanmana gerek yok., Aslında, Pypi sürümü sadece Setuptools yükleyen bir uyumluluk katmanıdır.

  • Distutils2Distutils almak için bir girişim, Setuptools ve Dağıtmak ve standart aracı Python standart kütüphane dahil olmaktı. Fikri Distutils2 eski Python sürümleri için dağıtılmış olacağını ve Distutils2 standart kütüphanesinde yer alacak 3.3, Python için packaging olarak değiştirilmiştir. Bu planlar beklendiği gibi, ancak, ve şu anda git, olmadıDistutils2 terk edilmiş bir proje. Son sürümü Mart ayında oldu 2012 ve Pypi ana sayfa son olarak kendi ölüm yansıtacak şekilde güncellendi.

  • Distlibönceki araç alt işlevselliği, ama sadece işlevselliği tanımlı kabul gören bayram ederler çok. uygulamak için amaçlayan bir araçtır Umarım sonunda Python standart kütüphane dahil edilmelidir.Hala geliştirilmektedir ve son kullanıcılar için henüz tavsiye edilmez.

  • BentoAmbalaj bir çözüm Distutils, Setuptools, Dağıtmak ve Distutils2, yerden yazılmış değiştirmek için tasarlanmış. Birincil geliştirici de numpy/scipy çekirdek geliştirici, olmayan durumlarda kullanın ambalaj sistemleri ile tanıdık. İlk commit Ekim ayında son yazımı Ağustos ayında olduğu gibi işlemek 2009 ve yazarlar Pypi sayfası güncelleme olmamasına rağmen 2014 buna bağlı.Aktif yapım aşamasında ama henüz olgun değilve yaygın olarak Setuptools olarak bilinen henüz.

Öneri:

Sonuç olarak, tüm bu seçeneklerin dışında, o kadarSetuptools tavsiye ederimgereksinimlerinizi çok basit ve sadece Distutils ihtiyacınız yoksa., Setuptools tavsiye ederim çok iyi Virtualenv ve Pip, araçları ile çalışır.

Bir yan not olarak, Virtualenv 1.10 veya daha yüksek Setuptools birleşme Dağıtmak/tanıyan ilk sürüm, Python 2 ve 3 için kullanmanızı tavsiye ederiz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Andrea Lewis

    Andrea Lewis

    14 Mart 2013
  • echifitness

    echifitness

    9 Kasım 2008
  • Google Developers

    Google Devel

    23 AĞUSTOS 2007