मेरे पास निम्नलिखित पैकेजों के साथ एक उल्का अनुप्रयोग है:

$ meteor list

accounts-password      1.5.3  Password support for accounts
accounts-ui            1.3.1  Simple templates to add login widget...     
blaze-html-templates   1.1.2  Compile HTML templates into reactive...     
ecmascript             0.14.2  Compiler plugin that supports ES201...     
es5-shim               4.8.0  Shims and polyfills to improve ECMAS...     
fourseven:scss         4.12.0  Style with attitude. Sass and SCSS ...     
iron:router            1.1.2  Routing specifically designed for Me...     
jquery                 1.11.11* Manipulate the DOM using CSS selec...     
meteor-base            1.4.0  Packages that every Meteor app needs        
mobile-experience      1.0.5  Packages for a great mobile user exp...     
mongo                  1.8.1  Adaptor for using MongoDB and Minimo...     
reactive-var           1.0.11  Reactive variable
shell-server           0.4.0  Server-side component of the `meteor...     
standard-minifier-css  1.6.0  Standard css minifier used with Mete...     
standard-minifier-js   2.6.0  Standard javascript minifiers used w...     
tracker                1.2.0  Dependency tracker to allow reactive...     
typescript             3.7.5  Compiler plugin that compiles TypeSc...     


* New versions of these packages are available! Run 'meteor update'       
  to try to update those packages to their latest versions. If your       
  packages cannot be updated further, try typing
  `meteor add <package>@<newVersion>` to see more information.

वातावरण पैकेज jquery संस्करण 3.0.0 के साथ उपलब्ध है। मेरे पास iron-router स्थापित होने तक वह था। मैं इस सलाह का पालन करके iron-router को सफलतापूर्वक स्थापित करने में सक्षम था: https://forums.meteor.com/t/iron-router-jquery-dependency/51374 (खास तौर पर meteor add iron:router --allow-incompatible-update)।

मैं नए 3.0.0 का उपयोग करना चाहता/चाहती हूं। मुझे नहीं लगता कि iron-router के भीतर कोई वास्तविक असंगति है।

हालांकि, अगर मैं इसे जोड़ने का प्रयास करता हूं, तो मुझे मिलता है:

$ meteor add jquery@3.0.0

-error: Conflict: Constraint jquery@1.0.0 is not satisfied by jquery       
3.0.0.
Constraints on package "jquery":
* jquery@3.0.0 <- top level
* jquery@1.11.9 || 3.0.0 <- blaze 2.3.4 <- accounts-base 1.5.0 <-
accounts-password 1.5.3
* jquery@1.11.9 || 3.0.0 <- blaze 2.3.4 <- blaze-html-templates
1.1.2
* jquery@1.0.0 <- iron:dynamic-template 1.0.12 <- iron:controller
1.0.12 <- iron:router 1.1.2
* jquery@1.0.0 <- iron:location 1.0.11 <- iron:router 1.1.2

प्रारंभ में, मुझे यह देखने में कठिनाई हुई कि यह लोहे के लिए 1.0.0 कहां से प्राप्त कर रहा था: * निर्भरता क्योंकि कोई स्पष्ट संस्करण सूचीबद्ध नहीं था:

फिर मुझे यह api.versionsFrom(meteorRelease) के लिए दस्तावेज में मिला:

किसी रिलीज़ से कोर पैकेज के संस्करणों का उपयोग करें। जब तक प्रदान नहीं किया जाता है, सभी पैकेज उल्का रिलीज के साथ जारी किए गए संस्करणों के लिए डिफ़ॉल्ट होंगे। यह आपको उन मूल पैकेजों के सटीक संस्करणों का पता लगाने से बचाएगा, जिनका आप उपयोग करना चाहते हैं। उदाहरण के लिए, यदि उल्का की नवीनतम रिलीज़ `METEOR@0.9.0 है और इसमें jquery@1.0.0 शामिल है, तो आप अपने पैकेज में api.versionsFrom('METEOR@0.9.0') लिख सकते हैं, और जब आप बाद में api लिख सकते हैं .use('jquery'), यह api.use('jquery@1.0.0') के बराबर होगा।

तो ऐसा लगता है कि क्या हो रहा है -- jquery@1.0.0 METEOR@0.9.2 से जुड़ा हुआ है।


तो ... मेरे स्थानीय प्रोजेक्ट में iron-* पैकेजों को कस्टम पैकेज के रूप में जांचने के विकल्प के अलावा एक कस्टम फोर्क में api.versionsFrom(meteorRelease) को एक आधुनिक रिलीज के लिए ओवरराइड करने के लिए (या इसके बजाय एक विशिष्ट jQuery संस्करण निर्दिष्ट करें मेरा मानना ​​​​है कि यह अब एक मुख्य पैकेज नहीं है)... क्या कोई ऐसा तरीका है जिससे jquery@3.0.0 को जबरदस्ती अपडेट किया जा सके, इसके बावजूद कि यह एक संघर्ष है?

दुर्भाग्य से --allow-incompatible-update इस उदाहरण में काम नहीं कर रहा है।

1
Chase 23 फरवरी 2020, 08:32
क्या यह मुद्दा हल हो गया है?
 – 
Jankapunkt
17 अप्रैल 2020, 18:55

2 जवाब

यह थोड़ा सा विचार है लेकिन यदि आप पुराने पैकेजों पर निर्भरता के बिना राउटर रखना चाहते हैं तो आपको ostrio:flow-router-extra के साथ जाना चाहिए जो आपको jQuery को छोड़ने या npm पैकेज का उपयोग करके jQuery स्थापित करने की अनुमति देता है।

उल्का 1.8.3 के बाद से ब्लेज़ और jQuery के बीच कोई कठोर निर्भरता भी नहीं है, जिससे npm रजिस्ट्री से नवीनतम jQuery को स्थापित करने की अनुमति मिलती है, जो सुरक्षा के दृष्टिकोण से महत्वपूर्ण है।

चेक आउट: https://github.com/VeliovGroup/flow-router https://github.com/meteor/meteor/blob/devel/History. एमडी

0
Jankapunkt 23 फरवरी 2020, 12:31

एक विशिष्ट pkg संस्करण स्थापित करने के लिए @= का उपयोग करें। यदि आप डाउनग्रेड करते हैं तो आपको npm jquery pkg हटाना होगा।

meteor add jquery@=1.11.11
meteor npm remove jquery
meteor add iron:router
0
thatsmycode 26 फरवरी 2020, 21:41