นี่คือคำสั่งอนุญาตการกระทบยอดที่สามารถเรียกใช้ในผู้ให้บริการโฮสติ้งฟรีของ OnWorks โดยใช้หนึ่งในเวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
ใบอนุญาตกระทบยอด - กระทบยอดเดเบียน / ลิขสิทธิ์กับแหล่งที่มา
เรื่องย่อ
ใบอนุญาต-กระทบยอด --ช่วยด้วย|--ชาย
ใบอนุญาต-กระทบยอด [--ลิขสิทธิ์ไฟล์=ไฟล์] [--no-check-ลิขสิทธิ์] [--suggest-บท]
[--no-รูปแบบข้อมูลจำเพาะ] [--เงียบ] [--display-การทำแผนที่] [--ไดเรกทอรี=ไดเรกทอรี]
[--ตัวกรอง=โมดูล1 โมดูล2 ...] [--config-ไฟล์=ไฟล์] [--changelog-ไฟล์=ไฟล์] [ไฟล์ ...]
DESCRIPTION
ใบอนุญาต-กระทบยอด พยายามจับคู่ข้อมูลใบอนุญาตและลิขสิทธิ์ในไดเรกทอรีกับ
ข้อมูลที่มีอยู่ใน "เดเบียน/ลิขสิทธิ์" ได้ข้อมูลส่วนใหญ่มาจาก
"licensecheck" ดังนั้นควรสร้างสิ่งที่ควรค่าแก่การดูนอกกรอบ อย่างไรก็ตามสำหรับ
แพ็คเกจที่กำหนดสามารถกำหนดค่าให้ประสบความสำเร็จในสถานะที่ดีที่รู้จักดังนั้นหากเปิด
การอัปเดตอัปสตรีมที่ตามมาล้มเหลว มันชี้ให้เห็นถึงสิ่งที่ต้องดู โดยค่าเริ่มต้น
การทดสอบดำเนินการดังนี้:
- ไฟล์ลิขสิทธิ์มีข้อกำหนดเกี่ยวกับรูปแบบที่ได้รับอนุมัติเป็นบรรทัดแรกหรือไม่
- สามารถแยกวิเคราะห์ไฟล์ลิขสิทธิ์ได้หรือไม่?
- ทุกไฟล์ในซอร์สโค้ดตรงกันอย่างน้อยหนึ่งประโยคในไฟล์ลิขสิทธิ์หรือไม่?
- ทุกไฟล์ ใบอนุญาต และ Datum ลิขสิทธิ์ที่ดึงมาจากแหล่งที่มาสามารถบรรจุอยู่ใน
ย่อหน้าที่ตรงกันจากไฟล์ลิขสิทธิ์? ข้อมูลสำหรับการเปรียบเทียบนี้
มาจากวัตถุกรองตัวเลข ดู "ตัวกรอง" สำหรับข้อมูลเพิ่มเติม
- ทุกไฟล์ในแหล่งที่มาได้รับมอบหมายลิขสิทธิ์และใบอนุญาตโดยบางส่วนของ
ไฟล์ "เดเบียน/ลิขสิทธิ์"
การเดินทาง เริ่ม
ออก of กล่อง
จากระดับบนสุดของไดเรกทอรีต้นทางของซอฟต์แวร์แพ็คเกจ Debian ให้เรียกใช้
"การประนีประนอมยอมความ".
การตั้งค่า a การตั้งค่า ไฟล์
โดยปกติเพื่อดำเนินการใด ๆ จำเป็นต้องมีไฟล์ปรับแต่ง ค่าเริ่มต้น
ไฟล์คือ "debian/license-reconcile.yml" ไฟล์กำหนดค่าอื่นสามารถตั้งค่าได้ด้วยปุ่ม
--config-ไฟล์=ไฟล์. ไฟล์กำหนดค่าถูกตีความโดยใช้ Config::Any ยกเว้นเพื่อวัตถุประสงค์
ของเอกสารนี้# เราถือว่ารูปแบบเป็น YAML
ที่เอาชนะ ไม่ถูกต้อง ผล
สมมติว่าคุณโชคดีจริงๆ สำหรับไฟล์เดียว "a/b" ตัวกรองเริ่มต้นคือ
ห่อรอบ "licensecheck" เข้าใจผิด พวกเขามีเหตุผลบางอย่างที่ตัดสินใจว่า
ไฟล์มีใบอนุญาต GPL-3 เมื่อการตรวจสอบแสดงว่าเป็นสาธารณสมบัติ นี่คือ
ทำให้เกิดการแบ่งบวกที่ผิดพลาดกับไฟล์ "เดเบียน / ลิขสิทธิ์" ที่สร้างขึ้นอย่างระมัดระวัง คุณ
สามารถแก้ไขได้ด้วยส่วนกำหนดค่าต่อไปนี้:
กฎ:
กฎ:
-
โลก: a/b
ใบอนุญาต: สาธารณสมบัติ
ลิขสิทธิ์: 1556, Nostrodamus
ดู Debian::LicenseReconcile::Filter::Rules สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีกำหนดค่านี้
กรอง.
การให้ a จับ ทั้งหมด การอนุญาต และ ลิขสิทธิ์
คุณสามารถกำหนดให้ตัวกรองจัดเตรียมใบอนุญาตเริ่มต้น แต่ให้กฎที่เหมาะสมใน
ส่วนเริ่มต้นของไฟล์ปรับแต่ง:
ค่าเริ่มต้น:
กฎ:
-
ใบอนุญาต: ซอฟต์แวร์ทั้งหมดเป็นทรัพย์สินของใบอนุญาตของชนชั้นกรรมาชีพ
ลิขสิทธิ์: 1984, Ministry of Algorithms
ตัวกรองเริ่มต้นใช้รหัสเดียวกันกับตัวกรองกฎ แต่โดยค่าเริ่มต้นจะทำงาน
ล่าสุด. ดังนั้นจึงมีฟังก์ชันการทำงานเหมือนกันทั้งหมด แต่มีลำดับความสำคัญต่ำสุด
การควบคุม ลำดับ of ฟิลเตอร์
โดยค่าเริ่มต้น ตัวกรองจะทำงานดังนี้: Rules, Std, Shebang, ChangeLog และ Default คุณสามารถเปลี่ยนแปลงได้
ตัวกรองโดยใช้ --ตัวกรอง=โมดูล ตัวเลือก. การตั้ง "--filters Rules" จะหมายความว่า
จะใช้เฉพาะตัวกรอง Debian::LicenseReconcile::Filter::Rules เท่านั้น เมื่อคุณระบุ
หนึ่งตัวกรองที่คุณต้องระบุทั้งหมด
กรอง นามแฝง
ตัวกรองเริ่มต้นคือนามแฝงสำหรับกฎ ซึ่งหมายความว่ารันโค้ดเดียวกัน แต่มี a
การกำหนดค่าแยกต่างหาก ค่าเริ่มต้นถูกกำหนดเป็น "ค่าเริ่มต้น~กฎ" โดยทั่วไป "X~Y" หมายถึงใช้
รหัสจาก Y แต่รับการกำหนดค่าจาก X
การเขียน ธุรกิจ ของตนเอง กรอง.
คุณสามารถเขียนตัวกรองของคุณเองโดยสืบทอดจาก Debian::LicenseReconcile::Filter คุณ
จำเป็นต้องกำหนดวิธีการ "get_info"
OPTIONS
--ลิขสิทธิ์ไฟล์=ไฟล์
ระบุไฟล์ลิขสิทธิ์สำรอง ค่าเริ่มต้นเป็น "เดเบียน/ลิขสิทธิ์"
--no-รูปแบบข้อมูลจำเพาะ
อย่าตรวจสอบบรรทัดแรกของไฟล์ลิขสิทธิ์กับข้อกำหนดรูปแบบที่อนุญาต
--no-check-ลิขสิทธิ์
อย่าตรวจสอบข้อลิขสิทธิ์
--เงียบ
อย่าให้คำอธิบายใด ๆ เพียงแค่ประสบความสำเร็จหรือล้มเหลวผ่านสถานะการออก
--display-การทำแผนที่
แสดงการแมปจากไดเร็กทอรีไปยังข้อลิขสิทธิ์
--ไดเรกทอรี=ไดเรกทอรี
ไดเรกทอรีที่มีการตรวจสอบลิขสิทธิ์และใบอนุญาต ค่าเริ่มต้นนี้เป็น "."
--ตัวกรอง=โมดูล1 --ตัวกรอง=โมดูล2 ....
ลำดับของตัวกรองซึ่งจะตรวจสอบแพ็คเกจต้นทางและคืนใบอนุญาตและ
ข้อมูลลิขสิทธิ์ แต่ละชื่อโมดูลต้องอยู่ด้านล่าง
Debian::LicenseReconcile::Filter และสืบทอดจากมัน ค่าเริ่มต้นคือ "กฎ Std
Shebang ChangeLog ค่าเริ่มต้น"
--config-ไฟล์=ไฟล์
ไฟล์ที่ใช้เพื่อระบุข้อมูลการกำหนดค่าเฉพาะตัวกรอง ไฟล์นี้อ่านโดย Config::Any
และส่วนที่เกี่ยวข้องจะถูกส่งไปยังตัวสร้างตัวกรองแต่ละตัวผ่านพารามิเตอร์ "config"
<--changelog-file=>ไฟล์
ไฟล์บันทึกการเปลี่ยนแปลง Debian ซึ่งมีค่าเริ่มต้นเป็น "debian/changelog" ตัวกรองกฎใช้สิ่งนี้
เพื่อรับเวอร์ชันปัจจุบันและตัวกรอง ChangeLog รับข้อมูลของมัน
--suggest-บท
หากตั้งค่าให้พิมพ์ใบอนุญาตและข้อมูลลิขสิทธิ์ในรูปแบบ DEP-5
ฟิลเตอร์
โดยค่าเริ่มต้น ตัวกรองจะได้รับการประมวลผลตามลำดับด้านล่าง เมื่อไฟล์ถูกส่งกลับโดย
ตัวกรอง ตัวกรองที่ตามมาจะละเว้น
- กฎ
- บันทึกการเปลี่ยนแปลง
- มาตรฐาน
- เชบัง
- ค่าเริ่มต้น
ตัวสร้างตัวกรองแต่ละตัวจะถูกส่งผ่านพารามิเตอร์ต่อไปนี้:
- ไดเร็กทอรี - ไดเร็กทอรีที่ใช้ค้นหาข้อมูลใบอนุญาตและลิขสิทธิ์
- files_remaining - การอ้างอิงอาร์เรย์ของไฟล์ที่ยังไม่ได้วิเคราะห์
- config - โครงสร้างข้อมูลที่แสดงถึงส่วนของไฟล์ปรับแต่งที่เกี่ยวข้องกับสิ่งนี้
กรอง.
- บันทึกการเปลี่ยนแปลง - วัตถุ Parse::DebianChangelog
- ตรวจสอบใบอนุญาต - วัตถุ Debian::LicenseReconcile::LicenseCheck
ไฟล์ อาร์กิวเมนต์
อาร์กิวเมนต์ใดๆ หลังจากอาร์กิวเมนต์จะถือว่าเป็นไฟล์ หากระบุเฉพาะไฟล์เหล่านี้
จะคืนดีกัน
ข้อ จำกัด
ข้อกำหนด DEP-5 นั้นแตกต่างอย่างมากจากข้อกำหนด glob ของไฟล์ ตั้งแต่
File::FnMatch module เป็นเพียงการใช้งานจริงเท่านั้น มีเพียงเล็กน้อยที่สามารถทำได้
เสร็จแล้ว. ผลที่ตามมาคือการพยายามระบุว่าชื่อไฟล์ควรมี '['
และต่อมา ']' ใน "เดเบียน/ลิขสิทธิ์" ไม่น่าจะทำงานได้อย่างถูกต้อง
ในการแยกวิเคราะห์ลิขสิทธิ์ปีไม่สามารถแสดงเป็นตัวเลขสองหลักอย่างย่อได้ นี่คือ
อาจเป็นสิ่งที่ดี แต่ก็จะทำให้เกิดปัญหาในบางจุด
ตัวอย่าง
ขณะนี้โปรเจ็กต์ Debian สองโปรเจ็กต์กำลังใช้การกระทบยอดใบอนุญาต เพื่อตรวจสอบ
ไฟล์ "เดเบียน/ลิขสิทธิ์"
ใบอนุญาตกระทบยอด|https://anonscm.debian.org/cgit/pkg-perl/packages/license-reconcile.git/tree/debian/license-reconcile.yml
จะต้องสะอาดตามมาตรฐานของตนเองอย่างชัดเจน ในบางจุดการตรวจสอบนี้จะถูกเพิ่มลงใน
การทดสอบการสร้าง
ksh|http://anonscm.debian.org/cgit/collab-maint/ksh.git/tree/debian/license-reconcile.yml
กำลังใช้การกระทบยอดใบอนุญาตตั้งแต่เวอร์ชัน 93u+20120801-2
ใช้ใบอนุญาต-กระทบยอดออนไลน์โดยใช้บริการ onworks.net