มี Rake เทียบเท่าใน Python หรือไม่?


87

Rake เป็นเครื่องมือสร้างซอฟต์แวร์ที่เขียนด้วย Ruby (เช่นAntหรือMake ) ดังนั้นไฟล์ทั้งหมดจึงเขียนด้วยภาษานี้ สิ่งนี้มีอยู่ใน Python หรือไม่?


3
คุณกำลังมองหาเครื่องมือสร้างและแก้ไขการพึ่งพาทั่วไปเช่น make ซึ่งสามารถสร้างโครงการจากภาษาใดก็ได้ หรือสิ่งที่จะสร้างแพ็คเกจ python โดยเฉพาะ?
Ian Clelland

1
สิ่งทั่วไป การสร้างแพ็คเกจ Python นั้นน่าสนใจ แต่สามารถทำได้ด้วยเครื่องมือทั่วไป
e-satis

1
ดูเพิ่มเติมที่: stackoverflow.com/questions/542289/…
Ray

1
นอกจากนี้โปรดดูที่farmdev.com/thoughts/46/the-python-make-tool
locojay

4
มีใครมาที่นี่จากโจอาร์มสตรอง? youtu.be/lKXe3HUG2l4?t=1270
nephewtom

คำตอบ:


28

Paverมีชุดเป้าหมายที่คล้ายกัน แต่ฉันไม่รู้จริงๆว่ามันเปรียบเทียบอย่างไร


ดูเหมือนว่าจะใกล้เคียงที่สุด
e-satis


2
โครงการยังคงทำงานอยู่ขณะนี้บันทึกการเปลี่ยนแปลงอยู่ที่นี่: pythonhosted.org/Paver/changelog.html
Stefan Schmidt

1
เวอร์ชันล่าสุดที่pythonhosted.org/Paver/changelog.htmlคือ1.1.0 (July 30, 2012)
clacke

ความคิดเห็นใด ๆ เกี่ยวกับ Invoke (กล่าวถึงในคำตอบอื่น ๆ ใน Q นี้) กับ Paver? พวกเขาเป็น "คู่แข่ง" โดยตรงหรือไม่? ข้อเสียข้อดี?
inger

39

Invoke - Fabric ที่ไม่มีการอ้างอิง SSH

ผ้าแผนงานกล่าวถึงว่าผ้า 1.x จะถูกแบ่งออกเป็นสามส่วน:

  1. Invoke - การเรียกใช้งานที่ไม่ใช่ SSH
  2. ผ้า 2.x - การดำเนินการระยะไกลและการใช้งานห้องสมุดที่ใช้เรียก
  3. การเย็บปะติดปะต่อกัน - การดำเนินการ "การใช้งานทั่วไป / ระบบผู้ดูแลระบบที่สร้างขึ้นจาก Fabric"

Invoke เป็นเครื่องมือและไลบรารีการดำเนินการงาน Python (2.6+ และ 3.3+) โดยวาดแรงบันดาลใจจากแหล่งต่างๆเพื่อให้ได้ชุดคุณลักษณะที่มีประสิทธิภาพและสะอาด

ด้านล่างนี้เป็นข้อความอธิบายบางส่วนจากเว็บไซต์ของInvoke :

  • Invoke เป็นเครื่องมือและไลบรารีการดำเนินการงาน Python (2.6+ และ 3.3+) โดยวาดแรงบันดาลใจจากแหล่งต่างๆเพื่อให้ได้ชุดคุณลักษณะที่มีประสิทธิภาพและสะอาด
  • เช่นเดียวกับเครื่องมือ Rake ของ Ruby และ Fabric 1.x รุ่นก่อนของ Invoke มี API ระดับสูงที่สะอาดสำหรับการรันคำสั่งเชลล์และกำหนด / จัดระเบียบฟังก์ชันงานจากไฟล์ task.py

1
ตอนนี้ @IgorZevaka ใช้งานได้บน windows หัวข้อเดียวกัน - github.com/pyinvoke/invoke/pull/119
Roman M. Koss

1
เป็นผู้ใช้ Shovel เมื่อ 4 ปีก่อน ไปกับ Invoke ทันที อินเทอร์เฟซบรรทัดคำสั่งที่ยอดเยี่ยมมากการประกาศงานนั้นดีและง่ายการผูกมัดให้ความรู้สึกเหมือน Make's ดี.
ddotsenko

ความคิดเห็นใด ๆ เกี่ยวกับ Paver (กล่าวถึงในคำตอบอื่น ๆ ใน Q นี้) กับ Invoke พวกเขาเป็น "คู่แข่ง" โดยตรงหรือไม่? ข้อเสียข้อดี?
inger


6

Wafเป็นเฟรมเวิร์กที่ใช้ Python สำหรับกำหนดค่าคอมไพล์และติดตั้งแอพพลิเคชั่น มาจากแนวคิดของเครื่องมือสร้างอื่น ๆ เช่น Scons, Autotools, CMake หรือ Ant


1
อะไรคือประโยชน์ของ Waf Scons อื่น ๆ ?
e-satis

5

แม้ว่าจะใช้กันทั่วไปในการปรับใช้ แต่Fabricอาจน่าสนใจสำหรับกรณีการใช้งานนี้


4

นอกจากนี้ยังมีdoit - ฉันมาข้ามมันในขณะที่มองหาสิ่งเหล่านี้ในขณะที่ที่ผ่านมา แต่ผมไม่ได้ไกลมากกับการประเมินมัน


0

ตรวจสอบ buildout ซึ่งไม่ได้เป็นระบบ make สำหรับซอฟต์แวร์มากนัก แต่เป็นระบบ make สำหรับการปรับใช้

http://pypi.python.org/pypi/pysqlite/2.5.5

ดังนั้นจึงไม่เทียบเท่าคราดโดยตรง แต่อาจจะเหมาะกับสิ่งที่คุณต้องการทำมากกว่าหรือเป็นหมัดจริงๆ


1
การใช้ buildout นั้นเหมือนกับการเอารถถังไปห้างไม่ใช่เหรอ? การใช้เครื่องมือ Zope / Plone ใด ๆ นอก Zope / Plone โดยทั่วไปแล้ว :-p
e-satis

"สำหรับการที่"? เขาไม่ได้ระบุว่าต้องการใช้มันเพื่ออะไร อย่างไรก็ตาม buildout ไม่ใช่เครื่องมือ Zope / Plone นอกจากนี้ยังไม่ใหญ่หรือซับซ้อน เป็นคำพูดที่น่าเบื่อหน่ายที่บางคนจะปิดเครื่องมือเพียงเพราะเขียนโดยนักพัฒนา Zope ทัศนคตินั้นค่อนข้างโง่
Lennart Regebro

มานั่นเป็นเพียงการล้อเล่น ฉันเคยทำงานให้กับ บริษัท Plone เท่านั้นและใช่เราใช้เพื่อสร้างเรื่องตลกมากมายเกี่ยวกับเครื่องมือที่เราใช้ นั่นเป็นทัศนคติที่ดีคุณไม่คิดเหรอ?
e-satis


-2

ฉันจะตรวจสอบdistutils:

distutilsแพคเกจให้การสนับสนุนสำหรับการสร้างและติดตั้งโมดูลเพิ่มเติมเข้าสู่การติดตั้งหลาม โมดูลใหม่อาจเป็น Python ที่บริสุทธิ์ 100% หรืออาจเป็นโมดูลส่วนขยายที่เขียนด้วย C หรืออาจเป็นชุดของแพ็คเกจ Python ซึ่งรวมถึงโมดูลที่เข้ารหัสทั้งใน Python และ C


รองรับสิ่งต่างๆเช่นการสร้างเอกสารหรือการทดสอบหน่วยหรือไม่
Wernight
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.