रिलीज़ चैनल
स्टेबल, कैनरी और LTS dist-tags, एक साथ बढ़ने वाले वर्शन, प्रोवेनेंस और रिलीज़ बनाना।
Text.js तीन npm dist-tags पर रिलीज़ होता है। हर पैकेज (@textjs/app, @textjs/react, @textjs/core, @textjs/font, @textjs/opencode, create-text-app और eslint-plugin-textjs) का वर्शन एक साथ अपडेट होता है, इसलिए एक वर्शन नंबर पूरे फ़्रेमवर्क को दर्शाता है।
चैनल
| चैनल | dist-tag | वर्शन | इंस्टॉल |
|---|---|---|---|
| स्टेबल | latest | 1.0.x | bun add @textjs/app |
| कैनरी | canary | 1.0.x-canary.N | bun add @textjs/app@canary |
| LTS | lts, v1-lts | 2.0.0 रिलीज़ होने पर प्रकाशित | bun add @textjs/app@lts |
प्रोडक्शन में स्टेबल इस्तेमाल करें। फ़िक्स और फ़ीचर dev ब्रांच में आने के दिन ही आज़माने के लिए कैनरी इस्तेमाल करें। LTS लाइन उपलब्ध होने के बाद, अगर आप साल में एक बार अपग्रेड करते हैं तो उसे इस्तेमाल करें।
bun create text-app@canary my-consoleस्टेबल
स्टेबल रिलीज़ सिमैंटिक वर्शनिंग का पालन करती हैं: पैच बग ठीक करते हैं, माइनर वर्शन बैकवर्ड-कंपैटिबल फ़ीचर जोड़ते हैं, मेजर वर्शन डेप्रिकेशन अवधि के बाद API में असंगत बदलाव कर सकते हैं। पूरा टेस्ट सूट पास कर चुके कैनरी को स्टेबल रिलीज़ बनाया जाता है और npm प्रोवेनेंस के साथ प्रकाशित किया जाता है।
कैनरी
आधिकारिक रिपॉज़िटरी की dev ब्रांच पर हर पुश की टाइप-चेकिंग और टेस्टिंग होती है और उसे -canary.N सफ़िक्स के साथ अगले पैच के रूप में प्रकाशित किया जाता है:
latest | dev पुश | प्रकाशित वर्शन |
|---|---|---|
1.0.0 | पहला | 1.0.1-canary.0 |
1.0.0 | दूसरा | 1.0.1-canary.1 |
1.0.1 | अगला | 1.0.2-canary.0 |
N का क्रम npm पर पहले से मौजूद सबसे बड़े कैनरी नंबर से आगे बढ़ता है, इसलिए नंबर कभी दोहराए नहीं जाते। कैनरी वर्शन रिपॉज़िटरी में कमिट नहीं होते। किसी रिलीज़ को छोड़ने के लिए कमिट मैसेज में [skip canary] जोड़ें।
कैनरी dev ब्रांच के बिल्ड हैं, जिसमें हर पुल रिक्वेस्ट मर्ज होती है। वे बिना सूचना के अभी तक रिलीज़ न हुए API को बदल या हटा सकते हैं। अगर आप किसी कैनरी पर निर्भर हैं तो उसका सटीक वर्शन पिन करें।
प्रोवेनेंस
रिलीज़ GitHub Actions से npm publish --provenance कमांड के साथ प्रकाशित होती हैं, जो हर टारबॉल को उसे बनाने वाले सटीक कमिट और वर्कफ़्लो से जोड़ता है। पैकेज की पुष्टि करने के लिए यह कमांड चलाएं:
npm audit signaturesरिलीज़ तैयार करना
मेंटेनर रिलीज़ स्क्रिप्ट से हर वर्कस्पेस पैकेज का वर्शन एक साथ बढ़ाते हैं:
bun run release:version minor # 1.0.0 → 1.1.0 (also: patch, major, canary, stable, x.y.z)bun run release:publish --tag latest --provenancerelease:version स्क्रिप्ट हर package.json फ़ाइल और उसके अनुरूप वर्शन कॉन्स्टेंट (VERSION, रिकंसाइलर का rendererVersion) दोबारा लिखती है, पैकेजों के वर्शन अलग होने पर चलने से इनकार करती है, और --dry-run फ़्लैग योजना प्रिंट करता है। release:publish स्क्रिप्ट बिल्ड करती है, पैक करती है (workspace:* को रिज़ॉल्व करते हुए), publishConfig लागू करती है, प्रीरिलीज़ को latest पर या स्टेबल वर्शन को canary पर रखने से इनकार करती है, और npm पर पहले से मौजूद वर्शन छोड़ देती है।
हर रिलीज़ लाइन का रखरखाव कितने समय तक होता है, यह जानने के लिए सपोर्ट नीति देखें।