Code प्रोजेक्ट के बारे में जानकारी

इस पेज में, Docs के Google सीज़न के लिए स्वीकार किए गए तकनीकी राइटिंग प्रोजेक्ट की जानकारी दी गई है.

प्रोजेक्ट की खास जानकारी

ओपन सोर्स संगठन:
AboutCode
तकनीकी लेखक:
आयनसिन्हा
प्रोजेक्ट का नाम:
स्कैनकोड टूलकिट में कमांड लाइन के विकल्प के बारे में बताया गया है. साथ ही, aboutcode.readthedocs.io पर जाकर, परिचय कोड दस्तावेज़ के स्ट्रक्चर को फिर से व्यवस्थित करने का तरीका बताया गया है
प्रोजेक्ट की अवधि:
मानक अवधि (तीन महीने)

प्रोजेक्ट का विवरण

[ 1. स्कैनकोड-टूलकिट कमांड लाइन के विकल्प ]

स्कैनकोड-टूलकिट में कमांड लाइन के कई विकल्प मौजूद हैं. इनकी मदद से, स्कैन करने के तरीके, आउटपुट फ़ॉर्मैट, और स्कैन के बाद वाले प्लगिन जैसे कई दूसरे विकल्प तय किए जा सकते हैं. फ़िलहाल, इन विकल्पों के बारे में बताने के लिए सही दस्तावेज़ नहीं हैं और ये सिर्फ़ “--सहायता” या “-h” फ़्लैग के ज़रिए उपलब्ध हैं. इस प्रोजेक्ट का मकसद पूरा दस्तावेज़ बनाना है, जिसमें यह जानकारी दी गई हो:

[ 1. कमांड लाइन के ज़रिए उपलब्ध सभी विकल्प ]

  • लक्ष्य: कमांड लाइन के ज़रिए मिलने वाले सभी संभावित विकल्पों की सूची.
  • बुनियादी खास जानकारी: पहला, स्कैन के डिफ़ॉल्ट विकल्पों और आउटपुट के उदाहरण के बारे में बताया गया है. स्कैन की प्रोसेस के बारे में कम शब्दों में दिया गया ग्राफ़िक/जानकारी.
    इसके बाद, यह डिफ़ॉल्ट तरीका इस बारे में जानकारी देता है कि अन्य विकल्प, स्कैन और आउटपुट में कैसे बदलाव करते हैं.
    इन पर विस्तार से चर्चा की जानी है. इनमें नीचे दी गई जानकारी शामिल होगी, जैसा कि अगले सेक्शन में बताया गया है.

[ 2. वर्शनिंग स्ट्रक्चर शुरू करें ]

  • लक्ष्य: क्रॉस-रिलीज़ विकल्प/एपीआई और दस्तावेज़ में हुए बदलावों को ठीक से बनाए रखने के लिए, वर्शनिंग सिस्टम शुरू करें.
  • समस्या: अब विकी और ReadTheDocs पेजों में मौजूद दस्तावेज़ पुरानी रिलीज़ के लिए हैं और उनमें बड़े सुधार की ज़रूरत है.
  • बुनियादी खास जानकारी: स्कैनकोड-टूलकिट के वे हिस्से जिन्हें अपडेट किया गया है/वर्शन में अपडेट किया जा सकता है
  • आदेश पंक्ति विकल्प
  • API
  • दस्तावेज़ (शुरू किया जाना है) कमांड लाइन के विकल्प और एपीआई, वर्शन और रिलीज़ में बदल दिए जाते हैं. साथ ही, दस्तावेज़ को भी फ़ॉलो करना होगा या इससे उपयोगकर्ताओं को काफ़ी भ्रम होगा. कमांड लाइन यूटिलिटी [ --help ] को विकल्पों में किसी भी बदलाव के लिए पहले ही अपडेट कर दिया गया है. साथ ही, इसका इस्तेमाल दस्तावेज़ में वर्शन के हिसाब से बदलाव करने के लिए किया जा सकता है.

[ 3. अलग-अलग मामलों में इन विकल्पों का इस्तेमाल कैसे किया जा सकता है ]

  • लक्ष्य: यह सेक्शन इस बारे में बुनियादी खास जानकारी देगा कि स्कैनकोड-टूलकिट के स्कैन नतीजों को अलग-अलग वजहों से कैसे इस्तेमाल किया जा सकता है. साथ ही, इसमें ऐसे फ़ंक्शन उपलब्ध कराने वाले स्कैनकोड-टूलकिट के विकल्पों के बारे में भी बताया जाएगा.
  • बुनियादी खास जानकारी: इस सेक्शन में, इस्तेमाल के अलग-अलग उदाहरण के उदाहरण दिए गए हैं. साथ ही, यह भी बताया गया है कि ऐसे मामलों में कौनसे विकल्प सुझाए जाते हैं.
  • ध्यान दें: इस चरण में, स्कैनकोड-टूलकिट के इस्तेमाल के अलग-अलग उदाहरणों से जुड़े इनपुट और पॉइंटर के मामले में, मेंटॉर की अहम मदद चाहिए.

[ 4. स्कैन और आउटपुट में ये विकल्प क्या बदलते हैं ]

  • लक्ष्य: यह सेक्शन इस बारे में बुनियादी खास जानकारी देगा कि स्कैनकोड-टूलकिट के स्कैन नतीजों का अलग-अलग वजहों से इस्तेमाल कैसे किया जा सकता है. साथ ही, इसमें ऐसी सुविधा देने वाले 'इसके बारे में जानकारी' टूल के बारे में भी बताया जाएगा.
  • बुनियादी खास जानकारी: विकल्प, स्कैन करने के तरीके को बदलते हैं. लीडिंग सेक्शन में एक बेसिक डिफ़ॉल्ट केस दिखाया जाएगा [ 1. कमांड लाइन ] के ज़रिए उपलब्ध सभी विकल्प और यह सेक्शन इस डिफ़ॉल्ट स्थिति में सभी विकल्पों की वजह से होने वाले बदलावों की तुलना करेगा.

[ 5. आउटपुट फ़ॉर्मैट और उनके उदाहरण ]

  • लक्ष्य: यह सेक्शन इस बारे में बुनियादी खास जानकारी देगा कि स्कैनकोड-टूलकिट के स्कैन नतीजों का अलग-अलग वजहों से इस्तेमाल कैसे किया जा सकता है. साथ ही, इसमें ऐसी सुविधा देने वाले 'इसके बारे में जानकारी' टूल के बारे में भी बताया जाएगा.
  • सामान्य खास जानकारी: स्कैनकोड-टूल में अलग-अलग आउटपुट फ़ॉर्मैट बताने के लिए फ़्लैग होते हैं, जिनमें स्कैन के नतीजे जनरेट किए जाएंगे. ये हैं -
    इस हिस्से में
  • आउटपुट फ़ॉर्मैट की पूरी जानकारी देते हैं,
  • आउटपुट फ़ॉर्मैट के उदाहरण दो
  • आउटपुट फ़ॉर्मैट और इसके इस्तेमाल के हिसाब से अन्य लिंक दें
  • आउटपुट फ़ाइलों में स्कैन के नतीजे कैसे सेव होते हैं. इसमें यह जानकारी भी दी गई है कि ये अलग-अलग फ़ॉर्मैट कैसे जनरेट किए जाते हैं, इसके बारे में [ 2. कोड स्कैनिंग के बारे में चर्चा ].

[ 6. कारोबार के लिए, स्कैनकोड आउटपुट फ़ॉर्मैट का इस्तेमाल करना ]

  • लक्ष्य: स्कैनकोड आउटपुट फ़ॉर्मैट के कारोबारी इस्तेमाल के उदाहरणों की जानकारी दें GSoD के आइडिया की सूची में, स्कैनकोड आउटपुट फ़ॉर्मैट को रेफ़रंस आइडिया के तौर पर बताया गया है. यह सेक्शन भी इसी चीज़ को लागू करता है.
  • ध्यान दें: इस चरण में, स्कैनकोड-टूलकिट के कारोबार से जुड़े अलग-अलग इस्तेमाल के बारे में इनपुट और पॉइंटर के लिए मेंटॉर की मदद की ज़रूरत होती है.

[ 7. ज़्यादा विश्लेषण के लिए, दूसरे aboutCode प्रोजेक्ट, इन आउटपुट का इस्तेमाल कैसे करते हैं ]

  • लक्ष्य: यह सेक्शन इस बारे में बुनियादी खास जानकारी देगा कि स्कैनकोड-टूलकिट के स्कैन नतीजों का अलग-अलग वजहों से इस्तेमाल कैसे किया जा सकता है. साथ ही, इसमें ऐसी सुविधा देने वाले 'इसके बारे में जानकारी' टूल के बारे में भी बताया जाएगा.
  • बुनियादी खास जानकारी:
  • स्कैनकोड-वर्कबेंच इस हिस्से में, डेस्कटॉप ऐप्लिकेशन और पॉइंटर से नतीजों को विज़ुअलाइज़ करने के बारे में बताया गया है. इससे, स्कैनकोड-वर्कबेंच से जुड़े दस्तावेज़ स्कैन करके भी बेहतर तरीके से मदद की जा सकती है. ज़रूरत पड़ने पर, स्कैनकोड-वर्कबेंच में ज़रूरी दस्तावेज़ जोड़े जाएंगे.
  • डेल्टा कोड दो कोडबेस के बीच फ़ाइल लेवल के अंतर का पता लगाने के लिए, डेल्टा कोड तकनीक से स्कैनकोड नतीजे कैसे लिए जाते हैं.

[ 2. aboutCode दस्तावेज़ के स्ट्रक्चर को फिर से व्यवस्थित करना ]

इस हिस्से में, जानकारी वाले कोड के दस्तावेज़ में हुए कई बदलाव शामिल हैं

[ 1. वर्शनिंग सिस्टम ]

[ 1. स्कैनकोड-टूलकिट कमांड लाइन विकल्प -> 2. वर्शनिंग स्ट्रक्चर शुरू करें] कमांड लाइन के विकल्पों को अपडेट करने से जुड़ी समस्या के बारे में बताया गया है. दस्तावेज़ के अन्य हिस्सों में भी यह ज़रूरी है. इनमें वर्शन से जुड़े खास निर्देश/जानकारी भी शामिल हैं, जिनसे भ्रम की स्थिति पैदा हो सकती है.

[ 2. दस्तावेज़ के मानक और जांच सेट करना ]

इस दस्तावेज़ में पहले से ही SpX-build (सभी पेजों को तैयार करना और स्फ़िंक्स सिंटैक्स गड़बड़ियों की जांच करना) और लिंक की जांच (दस्तावेज़ में अन्य वेबपेजों के सभी लिंक की जांच करता है) के लिए Travis-CI के ज़रिए कंटिन्यूअस इंटिग्रेशन की जांच करने की सुविधा मौजूद है. (मैंने इस पुल के अनुरोध #17 में यह जानकारी जोड़ी है ) अब रीस्ट्रक्चर्ड टेक्स्ट और दूसरे स्टैंडर्ड में इसकी खास लिंटिंग की और जांच करने की ज़रूरत है. इस काम को फिर से स्ट्रक्चर्ड टेक्स्ट-लिंट की मदद से किया जा सकता है, लेकिन इस पर ज़्यादा रिसर्च की ज़रूरत है. यह मेरे GSoD प्रोजेक्ट के हिस्से के तौर पर किया जाएगा.

[ 3. “शुरू करना” सेक्शन जोड़ना ]

यह नए सेक्शन में आने वाले लोगों के लिए शुरुआती सेक्शन के तौर पर काम करेगा. साथ ही, इसमें प्रोजेक्ट के बारे में जानकारी देने वाले प्रोजेक्ट का इस्तेमाल शुरू करने के लिए, सबसे बुनियादी और ज़रूरी दस्तावेज़ों का एक कंपाइलेशन शामिल होगा. हर बारे में कोड प्रोजेक्ट में यह सेक्शन होगा. इसमें स्कैनकोड-टूलकिट, स्कैनकोड-वर्कबेंच, डेल्टा कोड वगैरह शामिल हैं.

[ 4. दस्तावेज़ के चार फ़ंक्शन के हिसाब से फिर से स्ट्रक्चर करना ]

मौजूदा दस्तावेज़ को इन चार दस्तावेज़ों में साफ़ तौर पर नहीं दिखाया गया है - ट्यूटोरियल, कैसे करें, रेफ़रंस, और एक्सप्लेनेशंस. मेरा सुझाव है कि ज़रूरत के हिसाब से, इन चीज़ों को व्यवस्थित किया जाए. इसके लिए, ज़्यादा जानकारी/एक्सप्लेनेशंस/पॉइंटर जोड़े जाएं. यह सभी जानकारी कोड प्रोजेक्ट और उनके दस्तावेज़ों पर लागू होती है. यहां स्कैन कोड-टूलकिट दस्तावेज़ को नए तरीके से बनाने के दो उदाहरण दिए गए हैं. ये उदाहरण इस प्रोजेक्ट में दिए गए हैं और आगे भी दिए जाएंगे. बाकी दस्तावेज़ों में इसी तरह के बदलाव किए जाएंगे.

[ 5. डेवलपमेंट पेज दोबारा बनाना (स्कैनकोड-टूलकिट) ]

कोड/एपीआई के बारे में ज़्यादा जानकारी, डेवलपर के लिए ज़्यादा आसान बनाई जा सकती है. ऐसे लिंक हो सकते हैं जो [ 2. ऊपर दिए गए कोड स्कैन ] सेक्शन के बारे में जानकारी देने वाली चर्चाएं. इससे इस बात की जानकारी मिलती है कि स्कैन करने के लिए, स्कैन किस कोड का इस्तेमाल करता है. जैसे कि इन फ़ोल्डर में स्कैनकोड-टूलकिट के अलग-अलग हिस्से होते हैं, स्कैनकोड के काम करने के तरीके पर चर्चा के साथ-साथ एपीआई की मदद से, इन फ़ोल्डर के अलग-अलग इस्तेमाल के बारे में जानकारी दी जा सकती है.

  • [ क्ल्यूकोड : लाइसेंस, कॉपीराइट, यूआरएल, ईमेल स्कैन करने के लिए प्लगिन ]
  • [ कॉमनकोड : हेल्पर क्लास और फ़ंक्शन]
  • [ एक्सट्रैक्टकोड : अलग-अलग संग्रह फ़ॉर्मैट एक्सट्रैक्ट करता है ]
  • [फ़ॉर्मैट कोड : अलग-अलग आउटपुट फ़ाइल फ़ॉर्मैट के लिए आउटपुट फ़ॉर्मैटिंग ]
  • [ लाइसेंस कोड : लाइसेंस की पहचान करने वाला कोड ]
  • [ पैकेज्डकोड : विभिन्न पैकेज फ़ॉर्मैट को पार्स करना ]
  • [ प्लगिनकोड : प्लगिन आर्किटेक्चर के लिए क्लास ]
  • [ समरीकोड : खोजे गए लाइसेंस पर स्कैन की खास जानकारी देता है ]
  • [ टेक्स्ट कोड : टेक्स्ट को पार्स करने में मदद करता है ]
  • [ टाइपकोड : फ़ाइल टाइप के निर्धारण हैंडल करता है ]
  • [ स्कैनकोड : स्कैनकोड के लिए सीएलआई और एपीआई, मुख्य हिस्सा ]

इस सब-सेक्शन में, स्कैनकोड टूलकिट के इन हिस्सों की पूरी जानकारी/एपीआई मौजूद होंगे. डेवलपमेंट से जुड़े दिशा-निर्देश, छोटे सब-सेक्शन वाले दूसरे पेज या अन्य सेक्शन में मौजूद होंगे.

[ 6. अक्सर पूछे जाने वाले सवालों के पेज (Scancode-Toolkit) को फिर से बनाना ]

फ़िलहाल, अक्सर पूछे जाने वाले सवालों के पेज में ऐसे सवाल हैं जिनका बेहतर तरीके से जवाब दिया जा सकता है. साथ ही, इन्हें कैसे करें, ट्यूटोरियल, और रेफ़रंस दस्तावेज़ों के तौर पर अलग-अलग बनाया जाना चाहिए.

  • स्कैनकोड कैसे काम करता है? इस समस्या के बारे में [ 2. कोड स्कैन करने के बारे में जानकारी देने वाली चर्चा ] और पूरी तरह से एक अलग सेक्शन होगा. इसमें पूरी जानकारी दी जाएगी.
  • बेहतर पहचान के लिए, लाइसेंस के नए नियम कैसे जोड़ें? इस समस्या पर पहले ही, 'कैसे करें' सेक्शन को बेहतर बनाने में चर्चा की जा चुकी है. इससे जुड़े दस्तावेज़ इस सेक्शन में भेजे जाएंगे.
  • लाइसेंस का पता लगाने का नया नियम कैसे जोड़ें? इसे अलग से, “कैसे करें” पोस्ट में लिखा जा सकता है और इसके बारे में विस्तार से बताया जा सकता है.
  • डेवलपमेंट कैसे शुरू करें? पहले से ही एक अलग डेवलपमेंट पेज है और जानकारी काफ़ी हद तक ओवरलैप कर रही है. डेवलपमेंट पेज को फिर से बनाने के बारे में ऊपर पहले ही चर्चा की जा चुकी है.
  • नई रिलीज़ को काटने का तरीका इसे “नई रिलीज़ को काटने का तरीका” नाम की एक अलग सूची में बदला जा सकता है.
  • अक्सर पूछे जाने वाले ऐसे सवालों की सूची देखें जिनमें प्रोजेक्ट से जुड़े सामान्य सवालों के जवाब होते हैं. ये सवाल “कैसे करें”/”ट्यूटोरियल” कैटगरी में नहीं आते हैं.