Mister Download Manager
  1. होम
  2. योगदान देना

Mister Download Manager में योगदान करें

बग रिपोर्ट, विचार, अनुवाद सुधार और पुल रिक्वेस्ट सभी का स्वागत है। सब कुछ GitHub पर खुले में होता है।

सेटअप करना

आपको Windows 10 या 11 और Rust stable 1.95 या बाद का (MSVC टूलचेन) चाहिए।

cargo build
cargo run -p mdm-app

अपने खुद के डाउनलोड को छुए बिना बदलावों को आज़माने के लिए, ऐप को एक अलग डेटा फ़ोल्डर दें:

set MDM_DATA_DIR=C:\some\empty\folder
cargo run -p mdm-app

cargo run -p mdm-labserver -- --faults "rate=2M"एक स्थानीय टेस्ट सर्वर शुरू करता है जो आपके द्वारा मांगी गई किसी भी समस्या (धीमे कनेक्शन, कट, व्यस्त उत्तर, कोई रेंज नहीं; GET / उन्हें सूचीबद्ध करता है) के साथ जेनरेट की गई फ़ाइलों को परोसता है, ताकि इंटरनेट के बिना डाउनलोड का परीक्षण किया जा सके।

पुल रिक्वेस्ट खोलने से पहले

ये वे जाँचें हैं जो CI चलाता है; प्रत्येक एक साफ क्लोन पर काम करता है:

cargo fmt --all --check
cargo clippy --workspace --all-targets -- -D warnings
cargo test --workspace
python tools/i18n/extract.py      # then: git diff --exit-code i18n/en.tsv
node tools/extension/test.mjs

बदलावों को केंद्रित रखें और उनके आसपास के कोड से मेल खाएं। कुछ नियम हर जगह लागू होते हैं:

अनुवाद

इंटरफ़ेस हर उस भाषा में है जो Windows 11 प्रदान करता है। i18n/ में कैटलॉग मशीन अनुवाद द्वारा बनाए गए थे, और #, machine के रूप में चिह्नित प्रत्येक पंक्ति एक मूल वक्ता का इंतजार कर रही है:

  1. i18n/<code>.tsv खोलें (कोड i18n/languages.tsv में हैं)।
  2. पंक्ति के तीसरे कॉलम में अनुवाद को ठीक करें और उसकी #, machine लाइन को हटा दें।
  3. {placeholders} और एक & (कीबोर्ड शॉर्टकट अक्षर) को वैसे ही रखें जैसे वे हैं।

cargo test -p mdm-app every_catalogहर कैटलॉग की जाँच करता है। यह देखने के लिए कि आपके टेक्स्ट फिट होते हैं या नहीं, MDM_FIT_AUDIT को एक फ़ाइल पर सेट करें और अपनी भाषा में स्क्रीनशॉट लें (tools\lab\docs-shots.ps1 ... -Lang <code>): हर टेक्स्ट जो अपनी विंडो से आगे या दूसरे पर चलता है, वहाँ सूचीबद्ध होता है। भाषा सूची, इंस्टॉलर और दाएं से बाएं लेआउट कैसे एक साथ फिट होते हैं, इसके लिए भाषाएँ देखें।

वेबसाइट भी 20 भाषाओं में है, वह भी मशीन-अनुवादित। इसके टेक्स्ट i18n/site/<code>.json में हैं, प्रति वाक्य एक पंक्ति: एक पंक्ति के "text" को ठीक करें (टैग जैसे <g1>…</g1> और <x2/> को वैसे ही रखें, वे लिंक और आइकन हैं)। python tools/website/translate_site.py --status दिखाता है कि प्रत्येक भाषा में अभी भी क्या कमी है, और --langs <code> के साथ वही टूल केवल उसी का अनुवाद करता है।

समस्याओं की रिपोर्ट करना

ऐप में सहायता → एक समस्या की रिपोर्ट करें का उपयोग करें: यह आपके संस्करण, सिस्टम, MDM कैसे स्थापित किया गया था और उसकी भाषा भरी हुई बग रिपोर्ट फ़ॉर्म खोलता है। जब आप इसे स्वयं खोलते हैं तो फ़ॉर्म वही पूछता है। सुरक्षा समस्याएँ: SECURITY.md देखें।

पुल रिक्वेस्ट प्रोजेक्ट के लाइसेंस, GNU GPL, संस्करण 3 या बाद के के तहत स्वीकार किए जाते हैं।