จาวาสคริปต์ทางฝั่งไคลเอ็นต์ครอบคลุมโดย GPL อย่างไร?


29

หากฉันใช้ไลบรารี่ Javascript ที่มีลิขสิทธิ์ GPL ในเว็บแอปพลิเคชันฉันจะต้องเสนอซอร์สโค้ดของทั้งไซต์ให้กับทุกคนที่ดาวน์โหลดและดำเนินการ Javascript lib หรือไม่


5
นี่เป็นคำถามที่น่าสนใจมาก โดยทั่วไปเว็บแอปพลิเคชันจะไม่ได้รับการคุ้มครองโดย GPL เนื่องจากคุณไม่ได้แจกจ่ายรหัส (ซึ่งเป็นสาเหตุที่ AGPL มีอยู่) อย่างไรก็ตามในกรณีของรหัสที่ทำงานบนเบราว์เซอร์คุณเป็นผู้แจกจ่ายรหัส หากเป็นเช่นนั้นธรรมชาติของ GPL ก็หมายความว่าเว็บแอปพลิเคชันทั้งหมดของคุณต้องได้รับการเผยแพร่ภายใต้ GPL
Scott Whitlock

5
@ David - คำถามคือ GPL บังคับให้คุณปล่อยส่วนที่เหลือของเว็บแอปพลิเคชันของคุณ (เช่นฝั่งเซิร์ฟเวอร์) หรือไม่ คุณใช้ไลบรารี Javascript เพื่อสร้างงานที่ได้รับ GPL จะนำไปใช้กับผลลัพธ์ทั้งหมด
Scott Whitlock

1
@ David ถ้ามันชัดเจนฉันจะไม่ถาม: p
Armand

1
@ อลิสัน, อาโอเค, ขอโทษฉันเข้าใจคำถามเต็มไปหมดแล้ว ไม่ฝั่งเซิร์ฟเวอร์ไม่จำเป็นต้องเป็น GPLed ตราบใดที่ comms ระหว่างไคลเอนต์และเซิร์ฟเวอร์มีรูปแบบบางอย่างซึ่งแตกต่างจากการเรียกใช้ฟังก์ชันระดับเครื่องเช่น XML คุณไม่มีอะไรต้องกังวล เพียงแค่ให้บริการรหัส GPL ไม่ว่าจะเป็น HTML หรือ JS ไม่ได้ให้รหัสฝั่งเซิร์ฟเวอร์ในการส่งมอบหรือสื่อสารกับมันในรูปแบบที่ไม่ใช่การเรียกรีโมตซึ่งเป็นงานดัดแปลง
David

1
Richard Stallman ผู้เขียน GPL ในประเด็น: gnu.org/philosophy/javascript-trap.html
Honza Pokorny

คำตอบ:


5

คุณจะต้องเสนอ JavaScript ของไลบรารีนั้นและ JavaScript ของแอปพลิเคชันที่เข้าถึง API ของไลบรารีนั้น (และไลบรารีอื่น ๆ ที่แอปพลิเคชันเข้าถึงซึ่งจำเป็นต้องมีใบอนุญาต GPL ที่เข้ากันได้)

โปรดจำไว้ว่าคุณต้องจัดเตรียม JavaScript ที่มนุษย์สามารถอ่านได้ไม่ใช่เวอร์ชันที่มีช่องว่างซึ่งเป็นส่วนที่ใช้งานจริง

HTML ที่เรียกใช้ JavaScript นั้นมีอยู่อย่างชัดเจนแล้ว แต่ก็ไม่ได้นับว่าเป็น "การเชื่อมโยง" ไปยัง JavaScript นั้นและความพร้อมใช้งานหมายความว่าผู้คนจะไม่ต้องกังวลกับมัน


3
ฉันไม่คิดว่าการลิงก์เป็นเพียงสิ่งกระตุ้น ตัวอย่างเช่นหากโปรแกรมของคุณขึ้นอยู่กับแอพพลิเคชั่นตัวช่วยอื่นในลักษณะที่แอปพลิเคชันของคุณไม่สามารถทำงานได้หากไม่มีไลบรารี่อื่นดังนั้นสำหรับวัตถุประสงค์ของ GPL นั่นคือแอปพลิเคชันทั้งหมด ฉันคิดว่าในกรณีนี้ฉันขอแนะนำให้ปรึกษาทนายความ
Scott Whitlock

มันต้องสามารถอ่านได้ของมนุษย์? น่าสนใจ ฉันจะถามคำถามนี้เป็นคำถามแยกต่างหาก
Armand

จะต้องไม่เปลี่ยนแปลงทั้งใน GPL V2 และ V3 ตกลงนั่นอาจไม่เหมือนกันฉันคิดว่ามนุษย์เขียนได้ == มนุษย์อ่านได้
David

1
โพสต์เป็นคำถามแยกต่างหากที่นี่: programmers.stackexchange.com/questions/62885/…
Armand

@ScottWhitlock สำหรับจุดประสงค์ของกฎหมายมันเป็นเรื่องสำคัญหากมีสิ่งใดสิ่งหนึ่งที่ลอกเลียนมาจากมุมมองด้านลิขสิทธิ์ไม่ว่าใครจะสามารถทำงานได้โดยไม่ต้องอื่น ๆ หากกฎหมายลิขสิทธิ์ใช้ไม่ได้ GPL (ซึ่งเป็นใบอนุญาตไม่ใช่สัญญาดังนั้นสามารถให้สิทธิ์และไม่นำไปใช้) จะไม่มีผล มันจะเป็นการยากมากที่จะแสดงว่าเซิร์ฟเวอร์และไคลเอนต์ใดในแอปพลิเคชันเว็บทั่วไปเป็นที่มาของสิ่งอื่นถ้าหากทั้งหมด ฉันจะบอกว่ามันเป็นไปได้มากกว่าที่ลูกค้าจะหาอนุพันธ์ของเซิร์ฟเวอร์เพราะ devs ส่วนใหญ่เขียนเซิร์ฟเวอร์แล้วลูกค้า แต่นั่นเป็นวิธีที่ยาวจากเครื่องแบบ
จูลส์
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.