Redis ประกาศเปลี่ยนไลเซนส์
(github.com/redis)- Redis Open Source จะเปลี่ยนไปใช้โมเดลไลเซนส์แบบสามทางสำหรับโค้ดที่มีการคอนทริบิวต์ใหม่ทั้งหมดตั้งแต่ Redis 8 เป็นต้นไป โดยใช้ RSALv2·SSPLv1·AGPLv3 อย่างใดอย่างหนึ่ง
- คอนทริบิวชันหลัง Redis 8 จะอยู่ภายใต้ Redis Software Grant and Contributor License Agreement ที่อัปเดตแล้ว ขณะที่ Redis Open Source 7.2 และรีลีสก่อนหน้ายังคงใช้ไลเซนส์ BSDv3 clause ตาม REDISCONTRIBUTIONS.txt
- RSALv2 ให้สิทธิในการใช้งาน คัดลอก แจกจ่าย และสร้างงานดัดแปลง แต่จำกัดการนำซอฟต์แวร์หรือฟังก์ชันของเวอร์ชันดัดแปลงไปให้บริการแก่บุคคลที่สาม
- SSPLv1 กำหนดว่า หากนำโปรแกรมหรือเวอร์ชันดัดแปลงไปให้บริการ จะต้องเปิดเผย Service Source Code ซึ่งรวมถึงซอฟต์แวร์จัดการ, UI, API, ระบบอัตโนมัติ, มอนิเตอร์ริง, แบ็กอัป, สตอเรจ และซอฟต์แวร์โฮสติ้ง
- AGPLv3 เป็นไลเซนส์แบบ copyleft ที่กำหนดว่า เมื่อให้บริการเวอร์ชันดัดแปลงผ่านเซิร์ฟเวอร์เครือข่ายที่เข้าถึงได้สาธารณะ ต้องจัดหาโค้ดต้นฉบับของเวอร์ชันดัดแปลงนั้นให้แก่ผู้ใช้เซิร์ฟเวอร์
โครงสร้างไลเซนส์ที่เปลี่ยนไปตั้งแต่ Redis 8
- Redis Open Source จะใช้โมเดลไลเซนส์แบบสามทางกับคอนทริบิวชันโค้ดใหม่ทั้งหมดตั้งแต่ Redis 8 เป็นต้นไป
- คอนทริบิวชันใหม่จะถูกกำกับโดย Redis Software Grant and Contributor License Agreement ฉบับอัปเดต
- ไลเซนส์ที่เลือกใช้ได้ใน Redis 8.0 และรีลีสถัดไปมี 3 แบบ
- Redis Source Available License v2, RSALv2
- Server Side Public License v1, SSPLv1
- GNU Affero General Public License v3, AGPLv3
- Redis Open Source 7.2 และรีลีสก่อนหน้า ยังคงอยู่ภายใต้ไลเซนส์ BSDv3 clause ที่อ้างอิงไว้ในไฟล์ REDISCONTRIBUTIONS.txt
RSALv2: สิทธิการใช้งานและข้อจำกัดเรื่องการให้บริการ
- วันที่อัปเดตล่าสุดของข้อตกลง RSALv2 คือ 30 ธันวาคม 2023
- หากติดตั้ง ดาวน์โหลด เข้าถึง ใช้งาน หรือแจกจ่ายซอฟต์แวร์ จะถือว่ายอมรับเงื่อนไขทั้งหมดของ RSALv2
- หากรับซอฟต์แวร์ในนามบริษัทหรือองค์กร ต้องรับรองและยืนยันว่ามีอำนาจในการตกลงตามสัญญาแทนนิติบุคคลนั้น
- ผู้ให้ไลเซนส์สงวนสิทธิในการอัปเดตข้อตกลงนี้เป็นครั้งคราว
-
สิทธิที่ได้รับ
- ผู้ให้ไลเซนส์มอบ ไลเซนส์แบบไม่ผูกขาด ไม่คิดค่าใช้จ่าย ใช้ได้ทั่วโลก สำหรับการใช้งาน คัดลอก แจกจ่าย เผยแพร่ต่อสาธารณะ และสร้างงานดัดแปลง
- ไลเซนส์นี้ ไม่สามารถ relicense ได้ และโอนสิทธิไม่ได้
- สิทธิที่ไม่ได้ระบุไว้อย่างชัดเจนจะไม่เกิดขึ้นเพียงเพราะเงื่อนไขในสัญญา
-
ข้อจำกัดสำคัญ
- ห้ามนำซอฟต์แวร์หรือฟังก์ชันของเวอร์ชันดัดแปลงไป ให้บริการแก่บุคคลที่สาม
- ห้ามแจกจ่ายในลักษณะที่ทำให้บุคคลที่สามได้รับฟังก์ชันของซอฟต์แวร์หรือเวอร์ชันดัดแปลง
- การให้ฟังก์ชันแก่บุคคลที่สามรวมถึงกรณีต่อไปนี้
- บุคคลที่สามโต้ตอบกับฟังก์ชันได้จากระยะไกลผ่านระบบแบบกระจายหรือเครือข่ายคอมพิวเตอร์
- มูลค่าของผลิตภัณฑ์หรือบริการมาจากมูลค่าของซอฟต์แวร์หรือเวอร์ชันดัดแปลงทั้งหมดหรือเป็นหลัก
- มีการจัดหาผลิตภัณฑ์หรือบริการที่ทำหน้าที่หลักของซอฟต์แวร์หรือเวอร์ชันดัดแปลงให้แก่ผู้ใช้
- ห้ามแก้ไข ลบ หรือปกปิดไลเซนส์ ลิขสิทธิ์ หรือประกาศอื่น ๆ ของผู้ให้ไลเซนส์
- การใช้เครื่องหมายการค้าอยู่ภายใต้กฎหมายที่เกี่ยวข้อง
-
สิทธิบัตร การแจ้งเตือน และการสิ้นสุด
- ผู้ให้ไลเซนส์มอบสิทธิใช้งานสิทธิบัตรสำหรับข้อถือสิทธิที่ตนครอบครองหรือสามารถอนุญาตใช้ได้ เพื่อให้สามารถสร้าง ใช้ ขาย และนำเข้าซอฟต์แวร์ได้
- หากผู้ใช้กล่าวอ้างเป็นลายลักษณ์อักษรว่าซอฟต์แวร์ละเมิดสิทธิบัตร สิทธิใช้งาน สิทธิบัตรภายใต้ RSALv2 จะสิ้นสุดลงทันที
- ต้องทำให้ทุกคนที่ได้รับสำเนาของส่วนใดส่วนหนึ่งของซอฟต์แวร์ ได้รับเงื่อนไขของ RSALv2 ไปพร้อมกันด้วย
- หากมีการแก้ไขซอฟต์แวร์ ต้องใส่ ประกาศที่มองเห็นได้ชัดเจน ในเวอร์ชันดัดแปลงว่าได้มีการแก้ไข
- การใช้งานที่ฝ่าฝืนสัญญาจะไม่ถือเป็นการใช้งานที่ได้รับไลเซนส์ และไลเซนส์จะสิ้นสุดโดยอัตโนมัติ
- หากหยุดการละเมิดทั้งหมดภายใน 30 วัน หลังได้รับแจ้งการละเมิด ไลเซนส์จะได้รับการคืนสถานะย้อนหลัง
- หากละเมิดซ้ำอีกหลังการคืนสถานะ ไลเซนส์จะสิ้นสุดโดยอัตโนมัติและถาวรจากการละเมิดครั้งเพิ่มเติมนั้น
- ซอฟต์แวร์ถูกจัดหาให้ ตามสภาพ เท่าที่กฎหมายอนุญาต และผู้ให้ไลเซนส์ไม่รับผิดชอบต่อความเสียหาย
-
กฎหมายที่ใช้บังคับและเขตอำนาจศาล
- ผู้ใช้ในเอเชีย แปซิฟิก อเมริกา และเขตอำนาจอื่นที่ไม่อยู่ในภูมิภาคที่ระบุแยกต่างหาก จะอยู่ภายใต้ กฎหมายรัฐแคลิฟอร์เนีย สหรัฐอเมริกา และศาล Santa Clara County มีเขตอำนาจเฉพาะ
- ผู้ใช้ในอิสราเอลจะอยู่ภายใต้ กฎหมายอิสราเอล และศาล Central District ของอิสราเอลมีเขตอำนาจเฉพาะ
- ผู้ใช้ในยุโรป สหราชอาณาจักร ตะวันออกกลาง และแอฟริกา จะอยู่ภายใต้ กฎหมายอังกฤษและเวลส์ และศาล London มีเขตอำนาจเฉพาะ
SSPLv1: ภาระการเปิดเผยซอร์สเมื่อให้บริการผ่านเซิร์ฟเวอร์
- SSPLv1 คือเวอร์ชัน 1 ลงวันที่ 16 ตุลาคม 2018 และมีประกาศลิขสิทธิ์ของ MongoDB, Inc.
- เอกสารไลเซนส์สามารถคัดลอกและแจกจ่ายได้ตามเดิม แต่ห้ามแก้ไข
- โดยหลักแล้วกำหนดสิทธิในการรันโปรแกรม แก้ไข เผยแพร่ และส่งต่อ และไม่อนุญาตให้มีการทำซับไลเซนส์
-
ซอร์สโค้ดและเงื่อนไขการส่งต่อ
- ซอร์สโค้ดคือรูปแบบงานที่เหมาะสมที่สุดสำหรับการแก้ไข ส่วนอ็อบเจ็กต์โค้ดหมายถึงรูปแบบที่ไม่ใช่ซอร์ส
- หากส่งต่อ covered work ในรูปแบบอ็อบเจ็กต์โค้ด ต้องจัดหา Corresponding Source ไปพร้อมกันด้วย
- Corresponding Source รวมถึงซอร์สโค้ดและสคริปต์ที่จำเป็นสำหรับการสร้าง ติดตั้ง รัน และแก้ไขอ็อบเจ็กต์โค้ด
- system libraries, เครื่องมือทั่วไป และโปรแกรมเสรีที่หาใช้ได้ทั่วไปซึ่งถูกใช้โดยไม่แก้ไข อาจไม่ต้องรวมใน Corresponding Source
- เมื่อต้องส่งต่อเวอร์ชันซอร์สที่ถูกแก้ไข ต้องเป็นไปตามเงื่อนไขต่อไปนี้
- แสดงให้ชัดเจนว่ามีการแก้ไขและวันที่ที่เกี่ยวข้อง
- อนุญาตใช้ผลงานทั้งหมดภายใต้ SSPLv1
- หากมี UI แบบโต้ตอบ ต้องแสดงประกาศทางกฎหมายที่เหมาะสม
-
ข้อกำหนดเรื่องการให้บริการ
- หากนำโปรแกรมหรือเวอร์ชันดัดแปลงไป ให้บริการแก่บุคคลที่สาม ต้องทำให้ใครก็ตามสามารถดาวน์โหลด Service Source Code ได้ฟรีผ่านเครือข่าย
- การให้บริการรวมถึงการเปิดให้โต้ตอบผ่านเครือข่ายคอมพิวเตอร์ระยะไกล การให้บริการที่มูลค่าส่วนใหญ่มาจากตัวโปรแกรม และการให้บริการที่ทำหน้าที่หลักของโปรแกรมให้แก่ผู้ใช้
- Service Source Code ไม่ได้รวมแค่ Corresponding Source ของโปรแกรมหรือเวอร์ชันดัดแปลง แต่รวมถึง Corresponding Source ของทุกโปรแกรมที่ใช้เพื่อให้บริการนั้นด้วย
- ซอฟต์แวร์จัดการ
- ส่วนติดต่อผู้ใช้
- API
- ซอฟต์แวร์ระบบอัตโนมัติ
- ซอฟต์แวร์มอนิเตอร์ริง
- ซอฟต์แวร์แบ็กอัป
- ซอฟต์แวร์สตอเรจ
- ซอฟต์แวร์โฮสติ้ง
- Service Source Code ต้องอยู่ในระดับที่ทำให้ผู้ใช้สามารถรันอินสแตนซ์ของบริการได้จากซอร์สโค้ดที่เปิดเผย
-
การสิ้นสุดและสิทธิบัตร
- ความพยายามในการเผยแพร่หรือแก้ไขในรูปแบบที่ไลเซนส์ไม่ได้อนุญาตไว้อย่างชัดเจนจะเป็นโมฆะ และสิทธิจะสิ้นสุดโดยอัตโนมัติ
- หากหยุดการละเมิด สิทธิภายใต้ไลเซนส์อาจได้รับการคืนสถานะชั่วคราวหรือถาวรภายใต้เงื่อนไขบางประการ
- หากเจ้าของลิขสิทธิ์ไม่แจ้งเตือนภายใน 60 วัน หลังยุติการละเมิด อาจได้รับการคืนสถานะถาวร
- หากเป็นการแจ้งการละเมิดครั้งแรกและแก้ไขภายใน 30 วัน หลังได้รับแจ้ง จะได้รับการคืนสถานะถาวร
- ผู้มีส่วนร่วมแต่ละรายมอบสิทธิใช้งานสิทธิบัตรแบบทั่วโลกและไม่คิดค่าใช้จ่ายสำหรับข้อถือสิทธิสิทธิบัตรที่จำเป็น
- ไม่สามารถเพิ่มข้อจำกัดต่อการใช้สิทธิด้วยการฟ้องร้องว่าตัวโปรแกรมหรือส่วนหนึ่งส่วนใดละเมิดสิทธิบัตร
AGPLv3: copyleft สำหรับซอฟต์แวร์เซิร์ฟเวอร์บนเครือข่าย
- AGPLv3 คือ GNU Affero General Public License เวอร์ชัน 3 ลงวันที่ 19 พฤศจิกายน 2007
- มีประกาศลิขสิทธิ์ของ Free Software Foundation และเอกสารไลเซนส์สามารถคัดลอกและแจกจ่ายได้ตามเดิม แต่ห้ามแก้ไข
- AGPLv3 เป็น ไลเซนส์ copyleft แบบเสรี สำหรับซอฟต์แวร์และงานสร้างสรรค์ประเภทอื่น โดยออกแบบมาเพื่อรับประกันความร่วมมือกับชุมชน โดยเฉพาะในซอฟต์แวร์เซิร์ฟเวอร์บนเครือข่าย
-
เป้าหมายการออกแบบ
- ไลเซนส์ตระกูล GPL มีเป้าหมายเพื่อรับประกันสิทธิในการแจกจ่ายสำเนาซอฟต์แวร์เสรี การเข้าถึงซอร์สโค้ด การแก้ไข และการนำกลับไปใช้ในโปรแกรมเสรีใหม่
- ใน GNU GPL แบบทั่วไป อาจเกิดกรณีที่มีการนำเวอร์ชันดัดแปลงไปให้ใช้งานผ่านเซิร์ฟเวอร์ที่สาธารณะเข้าถึงได้ โดยไม่เปิดเผยซอร์สโค้ด
- AGPLv3 กำหนดว่าแม้ในกรณีเช่นนี้ ก็ต้องจัดหา ซอร์สโค้ดที่ถูกแก้ไข ให้แก่ชุมชน
- หากผู้ให้บริการเซิร์ฟเวอร์รันเวอร์ชันดัดแปลงและให้ผู้ใช้ใช้งาน ต้องจัดหาซอร์สโค้ดของเวอร์ชันดัดแปลงนั้นให้แก่ผู้ใช้ของเซิร์ฟเวอร์
- เมื่อเปิดให้สาธารณะใช้เวอร์ชันดัดแปลงบนเซิร์ฟเวอร์ที่เข้าถึงได้ทั่วไป การใช้งานสาธารณะนั้นจะก่อให้เกิดสิทธิในการเข้าถึงซอร์สโค้ดของเวอร์ชันดัดแปลง
-
สิทธิพื้นฐานและเงื่อนไขการส่งต่อ
- สิทธิภายใต้ AGPLv3 จะได้รับตลอดอายุลิขสิทธิ์ของโปรแกรม และเพิกถอนไม่ได้ตราบใดที่ปฏิบัติตามเงื่อนไข
- รับรองไว้อย่างชัดเจนว่ามีสิทธิไม่จำกัดในการรันโปรแกรมที่ไม่ได้แก้ไข
- covered work ที่ไม่ได้มีการแก้ไขหรือส่งต่อ สามารถสร้าง รัน และเผยแพร่ได้โดยไม่มีเงื่อนไข ตราบใดที่ไลเซนส์ยังมีผล
- สามารถส่งต่อสำเนาซอร์สโค้ดต้นฉบับแบบไม่แก้ไขได้ พร้อมประกาศลิขสิทธิ์ที่เหมาะสม ประกาศไลเซนส์ ประกาศไม่มีการรับประกัน และสำเนาไลเซนส์
- หากส่งต่อเวอร์ชันซอร์สที่ถูกแก้ไข ต้องระบุว่ามีการแก้ไขและวันที่ และต้องอนุญาตใช้ผลงานทั้งหมดภายใต้ AGPLv3
จุดที่ควรตรวจสอบในทางปฏิบัติ
- สำหรับโค้ดใหม่หลัง Redis 8 จะไม่ได้ใช้โครงสร้างแบบ BSDv3 เดี่ยวอีกต่อไป แต่จะอยู่ภายใต้ RSALv2·SSPLv1·AGPLv3 อย่างใดอย่างหนึ่ง
- เงื่อนไขไลเซนส์ของ Redis 7.2 และก่อนหน้า กับ Redis 8.0 และหลังจากนั้น ถูกแยกออกจากกัน
- เมื่อนำฟังก์ชันของ Redis หรือฟังก์ชันของเวอร์ชันดัดแปลงไปให้บริการแก่บุคคลที่สาม ข้อจำกัดหรือภาระการเปิดเผยซอร์สจะต่างกันตามไลเซนส์ที่เลือก
- RSALv2 จำกัดการให้บริการโดยตัวมันเอง ขณะที่ SSPLv1 กำหนดให้เปิดเผย Service Source Code อย่างกว้างขวางเมื่อมีการให้บริการ
- AGPLv3 กำหนดให้ต้องจัดหาซอร์สโค้ดของเวอร์ชันดัดแปลงที่ถูกใช้งานสาธารณะบนเซิร์ฟเวอร์เครือข่ายแก่ผู้ใช้ของเซิร์ฟเวอร์
1 ความคิดเห็น
ความเห็นจาก Hacker News