Lolly
ऐप खोलें

क्रिएटिव अधिकार, क्रेडिट और जो आपका ही रहता है

आपको दूसरे लोगों द्वारा बनाई गई अच्छी कृति का उपयोग लाइसेंसिंग का विशेषज्ञ बने बिना कर पाना चाहिए, और उन लोगों को चुपचाप नज़रअंदाज़ किए बिना जिन्होंने उसे बनाया। इसलिए Lolly हर उस कृति का स्रोत रखता है जिसका वह उपयोग करता है, उसके लिए दर्ज की गई लाइसेंस को पढ़ता है, यह तय करता है कि वह लाइसेंस आपके द्वारा किए जा रहे वास्तविक उपयोग से क्या माँगता है, वह हिस्सा करता है जो एक प्रोग्राम कर सकता है, और वह हिस्सा बताता है जो सिर्फ़ आप कर सकते हैं।

इनमें से कुछ भी कानूनी सलाह नहीं है, और इनमें से कुछ भी आपके प्रोजेक्ट पर कोई फ़ैसला नहीं है। Lolly तथ्य दर्ज करता है, नियमों का एक छोटा सेट लागू करता है जो लाइसेंसों के अपने कानूनी टेक्स्ट से पढ़ा गया था, और अपना तर्क दिखाता है। शर्तों वाला लाइसेंस एक सामान्य, अनुमत विकल्प है। इसे कभी भी टूटे हुए एसेट के रूप में प्रस्तुत नहीं किया जाता।

तीन तथ्य, अलग-अलग रखे गए

"CC BY 4.0", "इस उपयोग के लिए एक क्रेडिट चाहिए" और "क्रेडिट उस फ़ाइल में है जो आपने अभी डाउनलोड की" तीन अलग-अलग कथन हैं, और Lolly इन्हें अलग रखता है:

आप इससे सबसे पहले कहाँ मिलते हैं

इमोजी सेट रोज़मर्रा का मामला हैं। Twemoji CC BY 4.0 है, इसलिए इमोजी वाली कोई हेडिंग आर्टवर्क को क्रेडिट किए हुए एक्सपोर्ट होती है और आपके लिए कुछ भी करना बाक़ी नहीं रहता। दोनों OpenMoji सेट CC BY-SA 4.0 हैं, इसलिए ब्रांड ट्रीटमेंट के साथ उनके किसी ग्लिफ़ को रीकलर करना एक अनुकूलन है, और उस अनुकूलन को शेयर करने पर आपसे एक बार एक संगत लाइसेंस चुनने के लिए कहा जाता है। सेट चुनना कभी नहीं रोका जाता, और सेट कंट्रोल वहीं लाइसेंस बताता है जहाँ आप उसे चुनते हैं। यही नियम किसी कैटलॉग इलस्ट्रेशन, किसी LUT, किसी फ़ॉन्ट और किसी भी अन्य दर्ज कृति पर भी लागू होते हैं।

Lolly जिन शब्दों का उपयोग करता है

एक्सपोर्ट पैनल, Verify, कमांड लाइन और मशीन रिज़ल्ट में एक ही शब्दावली।

आप जो देखते हैंइसका मतलब
स्रोत क्रेडिट शामिल किए जाएँगे।क्रेडिट तैयार है और रूट इसे ले जा सकता है। अभी तक कुछ भी लिखा नहीं गया, इसलिए यह सफलता का संदेश नहीं है।
इस फ़ाइल के मेटाडेटा में क्रेडिट शामिल हैं।डिलीवर किए गए बाइट्स को वापस पढ़ा गया, क्रेडेंशियल सत्यापित हुआ और हर आवश्यक स्रोत उसमें मिला।
क्रेडिट और क्रेडेंशियल डाउनलोड पैकेज में हैं।क्रेडिट आर्टिफ़ैक्ट के साथ एक साथ वाली फ़ाइल के रूप में यात्रा करता है। इन्हें आगे भेजते समय साथ रखें।
इस क्रेडिट को पोस्ट के विवरण में जोड़ें।चुना गया रूट न तो कोई क्रेडेंशियल ले जाता है न पढ़ने योग्य क्रेडिट, इसलिए क्रेडिट टेक्स्ट को पेस्ट करना आपका काम है।
अगर आप यह अनुकूलन शेयर करते हैं, तो इसे एक संगत लाइसेंस चाहिए।एक ShareAlike स्रोत बदला गया था और परिणाम निजी उपयोग के अलावा कहीं और जा रहा है। चुनना एक ही क्रिया है, हर प्लेसमेंट पर एक डायलॉग नहीं।
स्रोत लाइसेंस दर्ज नहीं है।इस स्रोत के लिए कुछ भी दर्ज नहीं किया गया था। यह भरने लायक एक कमी है, कृति के ख़िलाफ़ कोई निष्कर्ष नहीं।
शर्तें दर्ज हैं, अभी तक व्याख्यायित नहीं।पहचानकर्ता को पहचान लिया गया है और उसकी शर्तें सूचीबद्ध हैं, और यहाँ कोई नियम उन्हें पढ़ता नहीं है। न स्वचालित पास, न स्वचालित बैन।
दो लाइसेंस घोषणाएँ असहमत हैं।दो रिकॉर्ड अलग-अलग लाइसेंस बताते हैं और किसी ने नहीं चुना कि कौन-सा अनुदान लागू होता है।
दर्ज CC0 समर्पण के तहत कोई ज़रूरी क्रेडिट नहीं।समर्पण कुछ भी नहीं माँगता। फिर भी एक शिष्टाचार क्रेडिट दिया जाता है।
क्रेडिट उस फ़ाइल में नहीं हैं जो डिलीवर की गई थी।एक क्रेडिट का वादा किया गया था, वापस पढ़ने पर वह नहीं मिला, और फ़ाइल अब भी आपकी है। फिर से एक्सपोर्ट करें, या क्रेडिट टेक्स्ट को हाथ से इस्तेमाल करें।

Lolly "कॉपीराइट सत्यापित", "कानूनी रूप से सुरक्षित", "पूरी तरह क्लियर" या "अधिकार क्लियर" जैसे शब्दों का उपयोग नहीं करता, और प्रोडक्ट में कहीं भी एक भी हरा लाइसेंस बैज नहीं है। ये शब्द ऐसी चीज़ का दावा करेंगे जिसे कोई प्रोग्राम जाँच नहीं सकता।

वे लाइसेंस जिनकी Lolly ने समीक्षा की है

नियमों का संस्करण rights-rules-2026-09-13.2। नीचे दिया गया हर नियम लाइसेंस के अपने कानूनी टेक्स्ट से पढ़ा गया था, और वह सेक्शन जहाँ से यह आया, उसके साथ engine/src/rights-profiles.ts में और यहाँ भी उद्धृत है। कोई संस्करण और पोर्ट जैसा दर्ज किया गया वैसा ही रखा जाता है: एक CC BY 3.0 घोषणा अपना ही संस्करण रखती है, 4.0 के रूप में रिपोर्ट नहीं होती, भले ही ऐप का चूज़र 4.0 को प्राथमिकता देता हो।

लाइसेंसLolly जो उपयोग कर सकता है उसके लिए यह क्या माँगती हैकहाँ से पढ़ा गया
CC BY 4.0निर्माता, शीर्षक, कॉपीराइट नोटिस, लाइसेंस का नाम और लिंक, स्रोत लिंक और परिवर्तनों का संकेत, हर एक तभी जब स्रोत ने उसे दिया हो। कोई उपयोग बाहर नहीं है, व्यावसायिक उपयोग सहित।कानूनी टेक्स्ट, सेक्शन 2(a)(1) और 3(a)
CC BY-SA 4.0वही क्रेडिट। इसके अलावा, अगर आप कोई अनुकूलन शेयर करते हैं, तो वह एक संगत लाइसेंस के तहत जाता है: CC BY-SA 4.0, Free Art License 1.3, या GPL-3.0-or-later, जो केवल एक दिशा में काम करता है। ये तीनों Creative Commons की सूची से डेटा के रूप में लिए जाते हैं, कभी नाम से मिलान करके नहीं।कानूनी टेक्स्ट, सेक्शन 3(a) और 3(b); संगत-लाइसेंस सूची
CC0 1.0कुछ नहीं। समर्पण कोई शर्त नहीं रखता, इसलिए Lolly एक शिष्टाचार क्रेडिट देता है और उसे कभी ज़रूरी के रूप में प्रस्तुत नहीं करता।समर्पण, सेक्शन 2 और 3; क्रेडिट देने पर CC FAQ
CC-PDDCकुछ नहीं। जो दर्ज किया जाता है वह ख़ुद दावा है और किसने वह किया, क्योंकि एक प्रमाणन एक पक्ष का कथन है, प्रमाण नहीं।समर्पण और प्रमाणन के पैराग्राफ़
Apache License 2.0स्रोत के नोटिस और NOTICE फ़ाइल का एट्रिब्यूशन टेक्स्ट किसी वितरित कृति के साथ यात्रा करते हैं। रनटाइम उपयोग कुछ नहीं माँगता। एक लाइसेंस जो नोटिस टेक्स्ट माँगता है और एक कृति जो उसे नहीं ले जाती, उसे एक कमी के रूप में रिपोर्ट किया जाता है।Apache License 2.0, सेक्शन 4, शर्तें 1 से 4
MITकॉपीराइट लाइन और अनुमति नोटिस कॉपी और महत्वपूर्ण हिस्सों के साथ यात्रा करते हैं। रनटाइम और संदर्भ उपयोग कुछ नहीं माँगते।MIT, अनुमति-नोटिस की शर्त
SIL OFL 1.1फ़ॉन्ट से टेक्स्ट रेंडर करना टेक्स्ट से कुछ नहीं माँगता। फ़ॉन्ट फ़ाइल आगे भेजना लाइसेंस, कॉपीराइट नोटिस और रिज़र्व्ड-नेम नियम साथ ले जाता है।OFL 1.1, शर्तें 2, 3 और 5; दस्तावेज़ों पर OFL FAQ

दर्ज, लेकिन व्याख्यायित नहीं

CC BY-NC, CC BY-ND और NC-SA तथा NC-ND के संयोजनों को पहचाना जाता है, उनकी शर्तें सूचीबद्ध की जाती हैं, और यहाँ कोई नियम उन्हें पढ़ता नहीं है। ये licence.unknown रिपोर्ट करते हैं, साथ में शर्तों को नाम देती एक लाइन। एक व्यावसायिक संदर्भ किसी क़ीमत या अकाउंट से नहीं पढ़ा जा सकता, और किसी नियम के छूने से पहले हर संयुक्त टेक्स्ट को अपनी ख़ुद की समीक्षा चाहिए।

तीन और ईमानदार जवाब, जिनमें से कोई भी अनुमति नहीं है:

लाइसेंस की गुम जानकारी को कभी इस साक्ष्य के रूप में नहीं पढ़ा जाता कि कोई कृति आगे भेजने के लिए स्वतंत्र है।

Lolly आपके लिए क्या करता है

जो आपका ही रहता है

कमांड लाइन पर

जब मूल्यांकन में कोई ज़रूरी क्रेडिट या कोई समस्या होती है, तो एक रेंडर स्टैंडर्ड एरर पर एक Rights: ब्लॉक प्रिंट करता है। इसमें स्थिति, हर समस्या के लिए code - summary फ़ॉर्मैट में एक लाइन, डिलीवर की गई फ़ाइल को वापस पढ़ने पर क्या मिला, और पेस्ट करने के लिए क्रेडिट टेक्स्ट शामिल होता है।

Rights: actions-required
  licence.adaptation-choice - If you share this adaptation, it needs a compatible licence.
  Credential intact. It records 1 source. The exporter recorded it; the source did not sign a credential of its own.
  Credits included in this file's metadata.
  "water wave (OpenMoji Color 17.0.0)" by Vanessa Boutzikoudi (OpenMoji), CC BY-SA 4.0 https://creativecommons.org/licenses/by-sa/4.0/, source https://raw.githubusercontent.com/hfg-gmuend/openmoji/f9fc506a3f913be9897ab0181d611d4c910a4104/color/svg/1F30A.svg, changes: recoloured.

ये दोनों कथन स्वतंत्र हैं, और इन्हें अलग रखने का यही मक़सद है: क्रेडिट फ़ाइल में है, और फ़ाइल शेयर होने से पहले एक लाइसेंस निर्णय अभी भी बाक़ी है। फ़ाइल दोनों ही स्थितियों में लिखी जाती है।

स्थितिअर्थएग्ज़िट
readyकिसी व्यक्ति पर कुछ भी बाक़ी नहीं है।0
actions-requiredफ़ाइल शेयर होने से पहले एक निर्णय बाक़ी है। फ़ाइल फिर भी लिखी जाती है।4
use-not-coveredएक जाँची गई नियमावली कहती है कि लाइसेंस इस उपयोग को कवर नहीं करता।4
unknownएकमात्र समस्याएँ कमियाँ हैं: एक लाइसेंस जो दर्ज नहीं किया गया, या शर्तें जो व्याख्यायित नहीं हैं।0
delivery-failedएक पावती द्वारा सेट, कभी मूल्यांकन द्वारा नहीं: डिलीवर किए गए बाइट्स में एक वादा किया गया क्रेडिट नहीं मिला। एक्सपोर्ट पैनल इसे दिखाता है; CLI इसके बजाय अपनी रीडबैक लाइन में वही तथ्य रिपोर्ट करता है।प्रिंट नहीं होता

एग्ज़िट 4 वही कोड है जो यह CLI पहले से ही किसी सुरक्षात्मक जाँच को देता है जिसने ना कहा हो। यह जान-बूझकर 3 नहीं है, जिसका मतलब है "किसी दूसरे runner पर फिर कोशिश करें", क्योंकि एक लाइसेंस निर्णय हर उस runner पर बाक़ी रहेगा जो मौजूद है।

--rights=private बताता है कि यह रेंडर किसी को भी डिलीवर नहीं किया जा रहा। ब्लॉक फिर भी प्रिंट होता है और क्रेडिट कॉपी करने के लिए अभी भी वहाँ है; जो पीछे हटती है वह शेयरिंग पर लागू होने वाली शर्त है, और कोई डिलीवरी दावा दर्ज नहीं होता। किसी शर्त को अनदेखा करने के लिए कोई फ़्लैग नहीं है: --rights=ignore एक उपयोग त्रुटि है।

समस्या कोड स्थिर और मशीन-पठनीय हैं, अनूदित कॉपी से स्वतंत्र:

attribution.source-missing, attribution.delivery-missing, licence.adaptation-choice, licence.use-not-covered, licence.grant-conflict, licence.unknown, source.redistribution-unknown, credential.ingredient-missing.

MCP के ज़रिए, lolly_verify एक rights पेलोड लौटाता है जिसमें सारांश, हर दर्ज स्रोत के लिए एक पंक्ति और बताई गई सीमाएँ होती हैं; एक ब्राउज़र-मुक्त lolly_render status, issues, credits, fingerprint और एक creditsInFile फ़्लैग लौटाता है जिसे बाइट्स वापस पढ़कर मापा जाता है।

नियम कहाँ रहते हैं

चार इंजन मॉड्यूल, सभी प्योर: न नेटवर्क, न घड़ी, न फ़ाइल-सिस्टम। नियमों का डेटा वर्ज़न किया गया है और रिपॉज़िटरी में है, कभी फ़ेच नहीं किया जाता।

मॉड्यूलयह क्या रखता है
engine/src/rights-profiles.tsपहचानकर्ता टेबल, न्यूनतम SPDX एक्सप्रेशन रीडर, उद्धरणों सहित जाँचे गए प्रोफ़ाइल, और किसी लिंक के लिए वह एक नियम जिसे क्रेडिट प्रिंट कर सकता है।
engine/src/rights-evaluate.tsवर्गीकरण, समस्याएँ, एट्रिब्यूशन प्लान और फ़िंगरप्रिंट। डिटरमिनिस्टिक: अलग क्रम में वही तथ्य वही जवाब देते हैं।
engine/src/rights-attribution.tsपढ़ने योग्य क्रेडिट, साथ वाली फ़ाइलें, स्रोत इंग्रीडिएंट और लिखे जाने के बाद मापी गई पावती।
engine/src/rights-report.tsएक सत्यापित क्रेडेंशियल जिसे उन तीन सवालों के रूप में वापस पढ़ा जाता है जो Verify पूछता है।

tests/fixtures/rights/ में अपेक्षा फ़ाइलें एवैल्युएटर के आउटपुट से नहीं बल्कि लाइसेंस टेक्स्ट से लिखी गई थीं, और इसका README हर अपेक्षा के पीछे का सेक्शन उद्धृत करता है।

यह क्या नहीं करता

साफ़-साफ़ बताया गया, क्योंकि जिस कमी को नाम नहीं दिया जाता वह एक वादे जैसी लगने लगती है।