AGPL (קיצור של Affero GPL) או רישיון אְַפֶרוֹ (תרגום שמו הרשמי המלא: הרישיון הציבורי הכללי של אפרו) הוא סוג נפוץ של רישיון לתוכנה חינמית. הגרסה הראשונה של הרישיון, AGPLv1, פורסמה על ידי חברת Affero במרץ 2002, ומבוססת על GPLv2 (הגרסה השנייה של הרישיון הציבורי הכללי של גנו). הגרסה השנייה (AGPLv2) פורסמה בנובמבר 2007, כרישיון מעבר המאפשר נתיב שדרוג מ- AGPLv1 לרישיון הציבורי הכללי של GNU AGPL, שהיא למעשה גרסה של AGPL המותאמת ל- GPLv3.

הלוגו של AGPLv3

שתי הגרסאות של ה-AGPL נועדו לסגור פירצה נתפסת ב-ASP שהייתה לכאורה ב-GPL רגיל, שבו כאשר נעשה שימוש בתוכנה, אך לא מפיצים את התוכנה, ההגדרות של Copyleft לא מכסות בצורה מלאה. כל גרסה שונה מגרסת ה-GNU GPL שעליה היא מבוססת בכך שיש הוראה נוספת המתייחסת לשימוש בתוכנות בסביבה של רשת תקשורת מחשבים. הוראה זו מחייבת את קוד המקור המלא להיות זמין לכל משתמש רשת בעבודה המורשית על ידי AGPL, בדרך כלל יישום אינטרנט.

היסטוריהעריכה

בשנת 2000, בעת פיתוח מודל עסקי של למידה מקוונת ושירות מקוון, נפגש הנרי פול עם ריצ'רד סטולמן באמסטרדם, שם דנו בפרצה ASP ב- GPLv2. במהלך החודשים שלאחר מכן, דנו סטולמן ופול בגישות לפתרון הבעיה. בשנת 2001 הקים פול את Affero Inc, עסק לשירותי רשת, והוא נזקק לרישיון שידרוש הפצה על ידי ארגונים אחרים שהשתמשו בקוד Affero כדי ליצור שירותי אינטרנט נגזרים. באותה תקופה, פנה פול עם בראדלי מ'קון ואבן מוגלן מהקרן לתוכנה חופשית כדי לקבל ייעוץ בנוגע לרישיון חדש שיסגור את פרצת ASP ב- GPLv2.

בסביבות סוף פברואר 2002, הציע קון, על סמך הרעיון של Quine (תוכנית המדפיסה את קוד המקור שלה), להוסיף ל- GPLv2 סעיף 2(d) שידרוש מעבודות נגזרות לשמור על תכונת "מקור הורדה", שיספק קוד מקור מלא ותואם. קון טען שיש תקדים לדרישה כזו בסעיף 2(c) של GPLv2, המחייב שמירה על תכונות מסוימות על ידי מפיצים ומשתנים במורד הזרם.[1]

מוגלן וקון כתבו את הטקסט של סעיף 2(d) החדש המוצע, ומסרו אותו לפול, שביקש וקיבל אז אישור מ-FSF לפרסם נגזרת של GPLv2 למטרה זו. במרץ 2002 פרסמה Affero, Inc. את הרישיון AGPLv1 לשימוש בפרויקט Affero והפך את הרישיון החדש לזמין לשימוש על ידי מפתחי SAAS.[2]

ה-FSF חשבה לכלול את התוספת המיוחדת של AGPLv1 ל- GPLv3 אך בסופו של דבר החליטה לפרסם רישיון נפרד, כמעט זהה ל- GPLv3 אך המכיל הוראה הדומה בתכלית ובתוצאה לסעיף 2(d) ל-AGPLv1. הרישיון החדש קיבל את השם "GNU Affero General Public License". שמירה על השם "אפרו", הצביעה על הקשר ההיסטורי ההדוק שלה עם AGPLv1. ה- GNU AGPL קיבל גרסה מספר 3 עבור יישור קו עם ה-GPL, והרישיון הציבורי הכללי הנוכחי של GNU אפרו מקוצר לעיתים קרובות AGPLv3.

הגרסה הסופית של GNU AGPLv3[3] פורסמה על ידי ה- FSF ב-19 בנובמבר 2007.

תאימות עם GPLעריכה

שתי הגרסאות של ה-AGPL, כמו הגרסאות המתאימות של GNU GPL שעליהן הן מבוססות, הן רישיונות strong copyleft. על פי דעתה של הקרן לתוכנה חופשית, הדרישה הנוספת בסעיף 2(d) ל-AGPL v1 גרמה לכך שהיא אינה תואמת את ה- GPLv2 שמלבד זאת היא כמעט זהה. כלומר, אי אפשר להפיץ יצירה אחת שנוצרה על ידי שילוב רכיבים המכוסים בכל רישיון.

לעומת זאת, GPLv3 ו- AGPLv3 כוללים כל אחד מהם סעיפים (בסעיף 13 של כל רישיון) שמשיגים יחד סוג של תאימות הדדית לשני הרישיונות. סעיפים אלה מאפשרים במפורש "העברה" של יצירה שנוצרה על ידי קישור קוד המורשה במסגרת הרישיון האחד לבין קוד המורשה על פי הרישיון השני,[4] אף על פי שהרישיונות שאינם מאפשרים רישוי מחדש בתנאים זה של זה.[5]

כדי לבסס נתיב שדרוג מ-AGPLv1 המקורי של אפרו ל-GNU AGPLv3, פרסמה Affero את רישיון AGPL גרסה 2 בנובמבר 2007,[6] שהוא בסך הכל רישיון מעבר המאפשר למקבלי תוכנה המורשית תחת "AGPLv1 או כל גרסה מאוחרת יותר כפי שפורסמה על ידי Affero, Inc" להפצת התוכנה, או עבודות נגזרות, תחת GNU AGPLv3 או כל גרסה מאוחרת יותר.

הערות שולייםעריכה

  1. ^ Kuhn, Bradley M. (21 בנובמבר 2007). "stet and AGPLv3". Software Freedom Law Center. אורכב מ-המקור ב-March 15, 2008. בדיקה אחרונה ב-14 ביוני 2008. 
  2. ^ "Free Software Foundation Announces Support of the Affero General Public License, the First Copyleft License for Web Services". Free Software Foundation. 19 במרץ 2002. בדיקה אחרונה ב-3 בינואר 2021. 
  3. ^ "License text of GNU AGPLv3". Free Software Foundation (US). 19 בנובמבר 2007. אורכב מ-המקור ב-20 November 2007. בדיקה אחרונה ב-19 בנובמבר 2007. 
  4. ^ "GNU General Public License". Free Software Foundation. 29 ביוני 2007. בדיקה אחרונה ב-3 בינואר 2021. 
  5. ^ "Various Licenses and Comments about Them". Free Software Foundation. 7 במאי 2020. בדיקה אחרונה ב-3 בינואר 2021. We recommend that developers consider using the GNU AGPL for any software which will commonly be run over a network. 
  6. ^ "Affero General Public License". נובמבר 2007. אורכב מ-המקור ב-2019-11-23. בדיקה אחרונה ב-3 בינואר 2021.