সাইমফনির বিভিন্ন সংস্করণ অন্তর্ভুক্ত এমন একটি মডিউল কীভাবে ইনস্টল করবেন?


17

আমি সিভিসিআরএমএম প্রকল্পের বিকাশকারী এবং রক্ষণাবেক্ষণকারী। আমরা একটি ড্রপাল 8 সংস্করণ সিভিসিআরএম তৈরি করার চেষ্টা করছি এবং দীর্ঘ পথ পাড়ি দিয়েছি। আমরা আমাদের সম্মিলিত কীবোর্ডগুলির বিরুদ্ধে এই প্রজেক্টের কোনও প্রধান ব্লকারকে চিহ্নিত করার চেষ্টা করছি against

সিভিসিআরসিএম কিছুক্ষণ সিমফনি ব্যবহার করেছে এবং এতে যে সংস্করণটি অন্তর্ভুক্ত রয়েছে সেগুলি দ্রুপালের সাথে যে জাহাজগুলি রয়েছে তার চেয়ে আলাদা।

আমরা Dival 8 এর সাথে সিভিসিআরএম ইনস্টল করতে পারি তবে আপনি এটি ইনস্টল করার পরে আমরা অন্য কোনও দ্রুপাল মডিউল ইনস্টল করতে পারি না।

আমি বিশ্বাস করি এটি একরকম পরিস্থিতিতে ফোটে যেখানে কোনওভাবে ড্রপাল সংস্করণের আগে সিমফোনির সিভিসিআরএম ভার্সন লোড হয় এবং এটি সমস্যার কারণ হয়।

ড্রুপাল 8 মডিউল সম্পর্কে কেউ কি জানেন যা দ্রুপালের সাথে জাহাজীকরণের চেয়ে সাইমফনির আলাদা সংস্করণ অন্তর্ভুক্ত করে?

সম্প্রতি আমি লুডভিগ প্রকল্পটি পেরিয়ে এসেছি। এই মডিউলটি প্রসারিত কোনও শ্রেণিতেServiceProviderBase নেমস্পেসগুলির নিবন্ধকরণের অনুমতি দেয় ।

সিভিসিআরএমএম মডিউলের ড্রুপাল 8 সংস্করণের পক্ষে কি কোনও সিভিক্রিম সার্ভিসপ্রোভাডার.এফপি ফাইল অন্তর্ভুক্ত করা সম্ভব, যা কোনও CivicrmServiceProviderশ্রেণি সংজ্ঞায়িত করে এবং এমন একটি register()পদ্ধতি যা কাজ করার অনুমতি দেওয়ার জন্য একটি ধারক নাম স্থান যুক্ত করে?

অনেক সিভিসিআরএম ফাইলের এখানেuse ড্রপালের মতো সিমফোনি দিয়ে শুরু হওয়ার মতো বিবৃতি রয়েছে ।

আমরা আসলে সিভিসিআরএমএম কোরকে ড্রুপাল ডক_রুট / লাইব্রেরি ফোল্ডারে রেখেছি এবং লাইব্রেরি মডিউলটি ব্যবহার করি।

এটি সিভিসিআরএমএম ড্রুপাল মডিউল ৮.x সংস্করণের জন্য রেপো , যদি কেউ এতক্ষণ আমরা কী পেয়েছি তা দেখতে চাইলে। কারও কাছে যদি এর জন্য যাদুর অমৃত থাকে তবে আমি আপনাকে বলতে পারি যে আমাদের সম্প্রদায়ের অনেক সুখী লোক থাকবে। সুতরাং আপনি যদি আমাদের সহায়তা করতে জানেন তবে দয়া করে করুন।

সিভিসিআরএমএম ইনস্টল করে এবং সিভিসিআরএমএম পৃষ্ঠাগুলি কাজ করে। যা কাজ করে না তা হ'ল সিভিসিআরএম ইনস্টল হওয়ার পরে, আমরা অ্যাডমিন / মডিউল পৃষ্ঠার মাধ্যমে অন্যান্য মডিউল ইনস্টল করতে পারি না। যতদূর আমি জানি এটিই কেবল একমাত্র জিনিসটি ভেঙে গেছে। সিভিসিআরএমএম ইনস্টল করার পরে ড্রশের সাথে মডিউলগুলি ইনস্টল করাও কাজ করে।

সিভিসিআরএমএম ইনস্টল হওয়ার পরে অন্য একটি মডিউল ইনস্টল করার চেষ্টা করার ফলে নিম্নলিখিত ত্রুটি দেখা দেয়:

পিএইচপি মারাত্মক ত্রুটি: অনির্ধারিত পদ্ধতিতে কল করুন সিম্ফনি \ উপাদান \ নির্ভরতা n সংজ্ঞা: /var/www/html/civi-for-d8/core/lib/Drupal/Core/D dependencyInication/YamlFileLoader.php 206 লাইনে

এটি ড্রুপাল 8.3.5 এ আছে। ক্লিপ ড্রুপাল 8.4-ডিভেন্সে ড্রুপাল 8 এর জন্য সিভিসিআরএমএম ইনস্টল করার চেষ্টা করে নিম্নলিখিত ত্রুটির কারণ ঘটেছে:

ড্রুপাল \ উপাদান \ সিরিয়ালাইজেশন \ ব্যতিক্রম \ অবৈধ ডেটাটাইপ এক্সেপশন: সংরক্ষিত সূচক "@" কোনও সরল স্কেলার শুরু করতে পারে না; আপনার 8 ম লাইনে স্কেলারটি উদ্ধৃত করতে হবে (কাছে "আর্গুমেন্টগুলি: [@ স্ট্রিং_ট্রান্সলেশন, @ সিভিক্র্ম.পেজ_স্টেট]")। দ্রুপাল \ উপাদান \ সিরিয়ালাইজেশন \ ইয়ামলসিমফনি :: ডিকোড () (/var/www/html/drupal84/core/lib/Drupal/Comp घटक/Serialization/YamlSymfony.php এর লাইন 40)।


মোবাইলে, তবে সিমফোনির কোন সংস্করণ? 8.4 vx থেকে লাফিয়ে 3.x ব্যবহার করবে।
ম্যাট গ্লাম্যান

আমরা CiviCRM মধ্যে সংস্করণ 2.5.0 আছেন
jackrabbithanna

সমস্যাটির কিছু ডকুমেন্টেশন: ইস্যুগুলি.সিভিক্র্ম.আর. / জিরা / ব্রাউজ / সিআরএম 17652 .... একজন ব্যক্তি রিপোর্ট করেছেন যে সে সমস্যাটি দেখেনি, তবে আমি সে সম্পর্কে নিশ্চিত নই, অন্য যে কেউ চেষ্টা করে ত্রুটি পেয়েছে সেখানে রিপোর্ট করা মত
jackrabbithanna

4
আমি মনে করি না এটি সম্ভব। ড্রুপাল 8.4 আসলে ইতিমধ্যে সিমফনি 3 এ সরে গেছে যদিও ড্রাশ সম্পর্কিত এখনও একই রকম আলোচনা রয়েছে যা একই সমস্যা রয়েছে। দুটি ভিন্ন সাইমফনি সংস্করণ লোড করা সম্ভব নয়, হয় আপনি নিজের ইন্টিগ্রেশন ভেঙে দেন বা আপনি দ্রুপালকে ভঙ্গ করেন। সম্ভবত symfony3 এখনও 8.4-এ থাকবে না, তবে Drupal8 সুরক্ষা সহায়তার আগে symfony2 এর সুরক্ষা সমর্থনটি শেষ হবে, তাই কোনও এক সময়ে, আমাদের স্যুইচ করতে হবে
বারদির

1
@ বারদির যে একটি ভাল উত্তর দিতে পারে?
ক্লাইভ

উত্তর:


8

সুতরাং, আমি মনে করি সিভিআইসিআরএম যদি সুরকারের মাধ্যমে দ্রুপাল 8 এ ইনস্টল করা হয় (যেমন composer require civicrm/civicrm-coreদ্রুপাল রুটে) এবং সিভিসিআরএম এর সিমফোনির ব্যবহার সিমফনি ২.৮ বা ৩.x (যেমন। অবচিত কার্যকারিতা ব্যবহার না করা) সাথে সামঞ্জস্যপূর্ণ তবে এটি কাজ করতে পারে।

এটি দুটি থাকার চেয়ে দ্রুপালের ভেন্ডর ডিরেক্টরিতে সমস্ত কিছু ইনস্টল করবে এবং এর অর্থ হ'ল সিভিসিআরসিএম ড্রপাল ৮-এ সিমফনি সংস্করণটি ব্যবহার করবে তবে সিভিসিসিআরএম যদি পরবর্তী সিমফনি সংস্করণগুলির সাথে সামঞ্জস্যপূর্ণ হয় (এমনকি এটি দ্রুপালের জন্য পুরানো সংস্করণও বান্ডেল করে থাকে) 6 এবং 7 এবং অন্যান্য সিএমএস এর) এটি ঠিক আছে।

আমি মনে করি?

আপডেট: হ্যাঁ, এটি কাজ করে - আমি চেষ্টা করেছিলাম। :-) আমি নীচে প্রথমে সিভিসিআরসিএম ইস্যু সারি ( সিআরএম-17652 ) এ নীচে পোস্ট করেছি , তবে সম্পূর্ণতার জন্য এখানে পুনরায় পোস্টিং করছি।

বড় ধারণা:

সুরকার যেহেতু প্রচুর লোকের কাছে একেবারেই নতুন, আমি সিভিসিআরএম তে কিছু উপায়ে কিছু উচ্চ স্তরের সুরকার স্টাফ থেকে সমস্ত উপায়ে যাবার চেষ্টা করতে যাচ্ছি:

  • সুরকার অ্যাপ্লিকেশনগুলিকে এটি প্রয়োজনীয় লাইব্রেরিগুলির প্রয়োজন করার অনুমতি দেয় (এবং গ্রন্থাগারগুলি অবশ্যই অন্যান্য গ্রন্থাগারের প্রয়োজন হতে পারে)।
  • লাইব্রেরিগুলিতে একটি কম্পোজার.জেসন ফাইল রয়েছে যা বলে যে অন্যান্য গ্রন্থাগারগুলির এটির কী প্রয়োজন এবং এটি কোন সংস্করণের সাথে সামঞ্জস্যপূর্ণ (তবে একটি নির্দিষ্ট একক সংস্করণ নয় - সাধারণত বিভিন্ন ধরণের সংস্করণ যেমন ^2.4.3নূন্যতম ২.৪.৩ এবং পর্যন্ত পর্যন্ত বলা হয় (তবে না সহ) 3.0.0)
  • অ্যাপ্লিকেশনগুলির একটি কম্পোজার.জসন রয়েছে যা একইভাবে প্রয়োজনীয় লাইব্রেরি এবং বিভিন্ন সংস্করণের সাথে সামঞ্জস্যতা বর্ণনা করে, তবে পরিসীমাটি আপডেটের ক্ষেত্রে সাহায্য করার জন্য। একটি অ্যাপ্লিকেশনটিতে একটি রচয়িতাও থাকবে যা পৃথক সংস্করণের একটি নির্দিষ্ট সেট
  • গ্রন্থাগারগুলিতে তাদের নিজস্ব পরীক্ষা বা বিতরণের জন্য একটি কম্পোজার.লক থাকতে পারে (যেমন নির্ভরযোগ্যতাগুলি বান্ডেলযুক্ত করে রিলিজ টারবাল তৈরি করা) তবে কোনও অ্যাপ্লিকেশন প্রদত্ত লাইব্রেরির প্রয়োজন হলে এটি উপেক্ষা করা হয় ( https://getcomposer.org/doc/02 দেখুন -libraries.md # লক-ফাইল )
  • যখন কোনও অ্যাপ্লিকেশন কোনও নতুন লাইব্রেরির প্রয়োজন চাইবে, সুরকার অ্যাপ্লিকেশনটির প্রয়োজনীয় সমস্ত জিনিস (ইতিমধ্যে ইনস্টল করা সমস্ত গ্রন্থাগার এবং তাদের নির্ভরতা সহ) এবং নতুন লাইব্রেরির মধ্যে সংস্করণ সামঞ্জস্যের একটি ছেদ খুঁজে পায়, সম্ভবত সমস্ত কিছু লাইন আপ করার জন্য কিছু আপডেট করে ( বা এটি সংস্করণগুলির একটি সামঞ্জস্যপূর্ণ মিশ্রণটি খুঁজে না পাওয়া থাকলে ত্রুটিযুক্ত)
  • এই ক্ষেত্রে, সিভিসিআরএমএম একটি গ্রন্থাগার, এবং একটি নির্দিষ্ট দ্রুপাল 8 সাইট অ্যাপ্লিকেশন (ড্রুপাল কোর নিজেই একটি গ্রন্থাগার)
  • সিভিসিআরএম এটি বলতে পারত যে এটির ^2.5সুরকার.জসনে সাইফনিটির "প্রয়োজন" রয়েছে যার অর্থ এটি 3.0.0 সংস্করণ (তবে অন্তর্ভুক্ত নয়) সাথে সামঞ্জস্যপূর্ণ
  • যখন কোনও দ্রুপাল 8 সাইট সিভিসিআরএম ব্যবহার করতে চায়, সাইট অ্যাডমিন composer require civicrm/civicrm-coreসিভিসিআরএমএম লাইব্রেরি এবং এর সমস্ত নির্ভরতার প্রয়োজন ব্যবহার করে। সিভিসিআরসিএম যদি সিমফনি ২.৮ (যেমন দ্রুপাল ৮.৩.x এ ব্যবহৃত হয়) এর সাথে সামঞ্জস্যপূর্ণ থাকে তবে ড্রপাল থেকে সিঙ্গেল সিমফনি ২.৮ ব্যবহার করে সমস্ত কিছু ইনস্টল ও জরিমানা হবে। সমস্ত নির্ভরতা দ্রুপালের বিক্রেতা ডিরেক্টরিতে শেষ হয়।
  • যাইহোক, সিভিসিআরএম সিমফনি 2.5 কে তার রচয়িতাআরলকটিতে রাখতে পারে, যার অর্থ পরীক্ষাগুলি এটি ব্যবহার করবে এবং ড্রুপাল 6 & 7 এবং অন্যান্য সিএমএসের জন্য টারবলগুলি সিমফনি 2.5 কে বান্ডেল করবে means

প্রস্তাব:

  1. সিভিসিআরএম এর কম্পোজার জেজনকে আপডেট করুন যাতে এটি সুরকার-ভিত্তিক সিএমএসের দ্রুপাল 8 এর মতো একটি লাইব্রেরি হিসাবে ব্যবহার করা যায় (তবে সম্ভবত ভবিষ্যতে অন্যরা সেভাবে এগিয়ে যেতে পারে - সুরকার বেশ জনপ্রিয় হয়ে উঠছে)
  2. নিশ্চিত করুন যে সিভিসিআরএমএম কোর সিমফনি ২.৮ এবং 3.0 এর সাথে সামঞ্জস্যপূর্ণ (যথাক্রমে দ্রুপাল ৮.৩.x এবং ৮.৪.x ব্যবহার করেছেন) তবে পরীক্ষার জন্য সুরক্ষিত তালিকায় এবং বিতরণের জন্য টারবালটিতে "সরকারীভাবে সমর্থিত" সংস্করণ (বর্তমানে সিমফনি 2.5) রাখুন। একাধিক সিম্ফনি সংস্করণগুলির সাথে সামঞ্জস্যপূর্ণ হওয়া যতটা শোনায় ততটা শক্ত নাও হতে পারে - সেখানে অনেকগুলি লাইব্রেরি রয়েছে যেগুলি সিমফনি ২.৮ এবং 3.0 উভয়ের সাথে সামঞ্জস্যপূর্ণ। এটি কেবল অবহেলিত পদ্ধতি / শ্রেণি / বৈশিষ্ট্যগুলি এড়িয়ে যাওয়ার বিষয় হতে পারে! এটি প্রতিবিম্বিত করতে কমপোজারজেসনকে আপডেট করতে হবে
  3. লাইব্রেরি ডিরেক্টরিতে অনুলিপি না করে দ্রুপাল 8-তে সিভিসিআরএমএম লাইব্রেরি ইনস্টল করতে সুরকার ব্যবহার করুন। এটি দ্রুপাল 8-তে তৃতীয় পক্ষের পিএইচপি লাইব্রেরি ইনস্টল করার স্বাভাবিক পদ্ধতি হয়ে উঠছে (এটি দ্রুপাল বাণিজ্য দ্বারা ব্যাপকভাবে ব্যবহৃত হয়, উদাহরণস্বরূপ)

সুরকার-ভিত্তিক সিএমএসের জন্য, আমি সত্যিই মনে করি এটি সঠিক পথ। এই সমস্যাটি বর্তমানে সিমফনি এবং দ্রুপালকে প্রভাবিত করছে, পিএইচপি সম্প্রদায়টি সুরকারের মাধ্যমে আরও বেশি তৃতীয় পক্ষের লাইব্রেরি ব্যবহার শুরু করলে এটি অন্যান্য সংস্করণের সংঘাতের সাথে অন্য সিএমএসকে খুব ভালভাবে প্রভাবিত করতে পারে।

পরীক্ষার জন্য কিছু কার্যকরী কোড:

সুতরাং, প্রতিশ্রুতি অনুসারে, আমি আসলে এটি একটি সীমিত ডিগ্রীতে কাজ করার জন্য পেয়েছি :-) আমি একেবারে একটি ড্রপাল / সুরকার / সিমফনি দৃষ্টিভঙ্গি থেকে এটি নিয়ে আসছি - আমার কাছে সিভিসিআরএমএম এর এক টন অভিজ্ঞতা নেই, তাই সম্ভবত কিছু আছে নীচে আমার প্রক্রিয়া করার ভাল উপায়। আমি কোন পরামর্শ স্বাগত জানাই!

  1. ড্রুপাল 8.3.5 ডাউনলোড করুন এবং ইনস্টল করুন (বা দ্রুপাল 8.4.x এর সর্বশেষ দেব!)
  2. শেলের রুট ডিরেক্টরিতে যান এবং সুরকারের মাধ্যমে সিভিসিআরএম ইনস্টল করতে এই আদেশগুলি চালান: https://gist.github.com/dsnopek/56311dbea347874e75180883efabb620
  3. আপনি যদি অ্যাপাচি ব্যবহার করেন তবে বিক্রেতা / .htacess ফাইলটি সরান। এটি দ্রুপাল থেকে সুরক্ষা ব্যবস্থা, যা সিএসএস / জেএস-এর মতো সংস্থানগুলি লোড হওয়া রোধ করে। এর সঠিক সমাধান বের করার জন্য ড্রুপাল প্রকল্পের সাথে কিছুটা সহযোগিতা প্রয়োজন কারণ এই ফাইলটি পুরোপুরি অপসারণ করা উত্পাদন সম্পর্কে একটি খারাপ ধারণা। দেখুন: রচয়িতা লাইব্রেরিগুলি থেকে সিএসএস / জেএস সম্পদগুলিতে ব্লক / .htaccess ব্লক করা
  4. / মডিউল ডিরেক্টরিতে যান এবং করবেন git clone https://github.com/dsnopek/civicrm-drupal.git --branch composer-library
  5. "প্রসারিত" পৃষ্ঠাতে যান ( /admin/modules) এবং সিভিসিআরএমএম মডিউলটি ইনস্টল করুন
  6. ড্রশ ( drush cr) এর মাধ্যমে ড্রুপাল ক্যাশে সাফ করুন
  7. CRM-19878 প্রতি লগ আউট এবং আবার লগ ইন করুন
  8. সিভিসিআরএম কাজ করে! :-)

এত কিছুর পরেও সিভিআইসিআরএম দ্রুপাল থেকে সিমফনি ২.৮ এবং দ্রুপালের বিক্রেতার ডিরেক্টরিতে নির্ভরতা ব্যবহার করছে এবং এর নিজস্ব বিক্রেতা ডিরেক্টরি থেকে কোনও কিছুই লোড করছে না। Huzzah!

আমি "টেলিফোন" মডিউলটি সক্ষম করার পরীক্ষা করেছি যা এই পরিবর্তনের আগে ব্যর্থ হয়েছিল ( পুনরুত্পাদন করার জন্য আমার পদক্ষেপ দেখুন ), তবে তাদের সাথে ভাল কাজ করে। :-)


সুতরাং এই সমস্ত সম্পর্কিত একটি প্রশ্ন, সুরকার ব্যবহার করে .... একটি প্যাকেজ সিমফনি ২.৮ ব্যবহার করা সম্ভব এবং অন্য প্যাকেজটিতে সিমফনি ৩.২ ব্যবহার করা সম্ভব ....
জ্যাকরবিত্তন্না

সিভিসিআরএম-এর পক্ষে সিভফোনির যে সংস্করণটি ড্রুপাল 8/9 করে তা সর্বদা ব্যবহার করার জন্য সিভিসিআরএম-এর পক্ষে বেশ কঠিন প্রাতিষ্ঠানিক প্রতিরোধের প্রয়োজন রয়েছে।
jackrabbithanna

1
"সুরকার ব্যবহার করে .... একটি প্যাকেজ সিমফনি ২.৮ ব্যবহার করা সম্ভব এবং অন্য প্যাকেজটিতে সিমফনি ৩.২ ব্যবহার করা সম্ভব" -> না, পিএইচপি একই নামের দুটি শ্রেণি থাকতে পারে না। এটি আসলে কোনও সুরকারকের জিনিস নয়।
ডেভিড স্নোপেক

"সিভিসিআরএম-এর সর্বদা সিমফোনির যে সংস্করণটি দ্রুপাল ৮/৯ করে তা ব্যবহার করার জন্য সিভিসিআরএম-এর পক্ষে বেশ কঠিন প্রাতিষ্ঠানিক প্রতিরোধের প্রয়োজন রয়েছে" -> আপস্ট্রিম সিভিসিআরএমএম কোরটির জন্য যে কোডের প্রয়োজন হবে তা হ'ল কোডটি ড্রপালে ব্যবহৃত পরবর্তী সিমফোনির সাথে সামঞ্জস্যপূর্ণ । এটি এটিকে বান্ডিল করতে বা ডিফল্টরূপে এটি ব্যবহার করতে হবে না, কেবল সামঞ্জস্যপূর্ণ হতে হবে, অর্থাত্। অবহেলিত পদ্ধতি / শ্রেণি / বৈশিষ্ট্যগুলি এড়িয়ে চলুন।
ডেভিড স্নোপেক

আমি পেয়েছি কেন কেন সিম্ফনির দুটি বড় সংস্করণ পাশাপাশি বসার জন্য আগ্রহী হবে - SemVer বাছাইয়ের প্রয়োজনীয়তাটি বোঝায়। তবে আমি মনে করি এটি গুরুত্বপূর্ণ যে সিম্ফনি উপাদানগুলির বৃহত সোয়াথগুলি ভি 2 / ভি 3 এর সাথে একই রকম এবং সিভি'র ভি 2 এর সংহতকরণটি বেশ বিনয়ী ছিল। সুতরাং আমি পিএইচপি কোড অর্জন বা অর্জন সম্পর্কে আশাবাদী যা উভয়ের সাথে সামঞ্জস্যপূর্ণ। আইএমএইচও, আসল কাজটি বিতরণ-চ্যানেল এবং ডিরেক্টরি কাঠামো আপডেট করছে।
টিম ওটেন

5

আমি মনে করি না এটি সম্ভব।

ড্রুপাল 8.4 আসলে ইতিমধ্যে সিমফনি 3 তে স্যুইচ করেছে যদিও ড্রাশ সম্পর্কিত এখনও একই রকম আলোচনা রয়েছে যা একই সমস্যা রয়েছে। দেখতে Drush 8.x ইনস্টল নেই Drupal এর 8.4.x এবং Drush মাস্টার ইনস্টল নেই Drupal এর 8.3.x এবং Symfony উপাদান 3.2.6 আপডেট করা হয়

দুটি ভিন্ন সাইমফনি সংস্করণ লোড করা সম্ভব নয়, হয় আপনি নিজের ইন্টিগ্রেশন ভেঙে দেন বা আপনি দ্রুপালকে ভঙ্গ করেন। সম্ভবত symfony3 এখনও 8.4-এ থাকবে না, তবে Drupal8 সুরক্ষা সহায়তার আগে symfony2 এর সুরক্ষা সমর্থনটি শেষ হবে, তাই কোনও এক সময়ে, আমাদের স্যুইচ করতে হবে।


আচ্ছা ..... অ্যাডমিন / মডিউলগুলি থেকে মডিউলগুলি ইনস্টল করা ব্যতীত সবকিছুই কাজ করে .... দ্রাশের সাথে মডিউলগুলি ইনস্টল করা কাজ করে ... সমস্ত সিভিসিআরএম পৃষ্ঠাগুলি কাজ করে। সুতরাং আমি এর অসম্ভবকে বিশ্বাস করি না। কেন এটা অসম্ভব হবে?
জ্যাকরবিত্তন্না

1
আপনি একই ক্লাসের দুটি ভিন্ন সংস্করণ একই সাথে লোড করতে পারবেন না, এটি সম্ভব নয়। ত্রুটিটি হুবহু মনে হচ্ছে আমি যা হব আশা করি। আপনি প্রথম সংজ্ঞা ক্লাসের 2.5 সংস্করণটি লোড করতে সক্ষম হন এবং তারপরে দ্রুপাল ব্রেক হয় কারণ এটি এমন কোনও পদ্ধতির উপস্থিতি প্রত্যাশা করে যা আসলে নেই doesn't এবং ড্রুপাল সিমফনি ৩-এ পরিবর্তন হওয়ার সাথে সাথে পার্থক্যগুলি আরও বাড়বে। আপনি 2.5, 2.8 এর সাথে কেন আটকে আছেন তা আমি খুব একটা বুঝতে পারি না এবং এটি একটি সামান্য আপডেট এবং পিছনের দিকে সামঞ্জস্যপূর্ণ হওয়া উচিত (তবে আপনি যেভাবে খুঁজে পেয়েছেন তেমন অন্যভাবে নয়)। সুতরাং আপনি 2.8 প্রয়োজন সিভিসিআরএম আপডেট করতে সক্ষম হওয়া উচিত?
বেরদির

1
আমি আমার মন্তব্যে যেমন উল্লেখ করেছি, আমি ধরে নিয়েছি যে আপনি আমার উত্তর পছন্দ করবেন না, তবে এটি পরিবর্তন করে না। আপনি যে প্রকল্পগুলি উল্লেখ করেছেন সেগুলির মধ্যে কোনওটিই সিমফনি ব্যবহার করেন না (জুমাল মনে হয় যে কয়েকটি মুঠো উপাদান ব্যবহার করবে যা বিরোধ নাও করতে পারে তবে সম্ভবত শেষ পর্যন্ত হবে), সুতরাং আপনি এটি তুলনা করতে পারবেন না। একই শ্রেণীর দুটি বিবাদযুক্ত সংস্করণ লোড করা প্রযুক্তিগতভাবে অসম্ভব, কিছুই এটি পরিবর্তন করতে পারে না। এই কারণেই নির্ভরতাগুলি একটি জটিল ব্যবসা এবং কেন সুরকার বিদ্যমান। লাইব্রেরি ব্যবহার না করে আপনি সম্ভবত একাধিক সিম্ফনি সংস্করণের সাথে সিভিআইসিআরএম সামঞ্জস্যপূর্ণ সুরকার ব্যবহার করে এবং তৈরি করা উচিত
বার্ডির

2
এছাড়াও, Symfony 2.5 জন্য নিরাপত্তা সমর্থন অনুযায়ী 2015 সালে শেষ symfony.com/roadmap?version=2.5#checker , যার মানে CiviCRM একটি নিরাপত্তাহীন এবং সেকেলে Symfony সংস্করণের উপর নির্মিত। তাদের একথা নিশ্চিত করতে যথেষ্ট হওয়া উচিত যে একটি আপডেট প্রয়োজনীয়, কমপক্ষে ২.৮ সংস্করণে, এটি কেবল দ্রুপাল ৮-এর নয়।
বারদির

1
@ ডেভিডসোনপেক ঠিক বলেছেন, আপনি আপনার উত্তরে যা লিখেছেন তা মূলত আমি আমার মন্তব্যেও উল্লেখ করেছি, তবে সিভিসিআরএম এর রচয়িতা জসসন যতক্ষণ পর্যন্ত এর সিমফোনির উপাদানগুলির জন্য "~ 2.5.0" উল্লেখ করেছেন, এটি কার্যকর হবে না। Github.com/civicrm/civicrm-core/blob/master/composer.json দেখুন । সুতরাং আমার উত্তরটি "আপনি দুটি পৃথক সংস্করণ ব্যবহার করতে পারবেন না" এখনও সঠিক আইএমএইচও, আপনি কেবল নাগরিকের সংস্করণ সংকোচকে উন্নত / আপডেট করতে পারেন এবং তারপরে এটি সুরকারের মাধ্যমে ইনস্টল করে একই সংস্করণটি ব্যবহার করতে পারেন।
বেরদির

1

তাত্ত্বিকভাবে এখানে কেবলমাত্র সমস্যাগুলি হ'ল ফাইলের অবস্থান এবং শ্রেণীর নাম স্থান। দুর্ভাগ্যক্রমে আমি যে সুরকারীর জন্য জানি তার জন্য কেবলমাত্র সরঞ্জামগুলি আপনাকে কেবল প্রতি প্যাকেজের নামে প্রতি ভার্সন নির্দিষ্ট করতে দেয় না।

আপনি কি একে একে সম্পূর্ণ আলাদা অটোলোডার হিসাবে স্থাপন করার চেষ্টা করেছেন?


আপনি কী বোঝাতে চেয়েছেন আপনি আরও বিশদে ব্যাখ্যা করতে পারেন?
জ্যাকরবিত্তন্না

getcomposer.org/doc/faqs/… কাস্টম অবস্থানটি কীভাবে করা যায় is আমি লোককে এই প্রকল্পটি সম্ভব করার জন্য একটি প্রকল্প কাঁটাচামড়া দেখেছি ... এছাড়াও সুরকারের অটোলোডার পৃথক রাখার বিকল্পের জন্য getcomposer.org/doc/06-config.md#prepend-autoloader । শেষ পর্যন্ত অটোলোডার কেবল একটি পিএইচপি ফাইল, যাতে আপনি নিজের অটোলোডার লিখতে পারেন যা সিদ্ধান্ত নেয় যে কোনটি অন্তর্ভুক্ত করতে হবে আপনার পছন্দের কারণগুলির উপর নির্ভর করে।
ওহহেহেগমানাতে

এছাড়াও প্রাসঙ্গিক: stackoverflow.com/questions/30000063/...
Ohthehugemanatee

পরিষ্কার হয়ে নিন, এটিএম-তে সি 8 কে ডি 8 ইনস্টল করার জন্য কোনও সুরকার ভিত্তিক ইনস্টলেশন পদ্ধতি নেই। আমি যদিও এটি সম্ভবত এটি এক উপায় ছিল। প্রশ্নটিতে উল্লিখিত সার্ভিস প্রোভাইডার অবজেক্টটি এটাই ছিল, যেমন সিভিলসিআরএম লাইব্রেরির দিকে নির্দেশ করার জন্য দ্রুপালকে পিএসআর -4 নামস্থান যুক্ত করার মতো ... আমি যদি এটি করি, তবে সিভির 'ফাইল সিমফনি from থেকে তার সমস্ত ফাইল পরিবর্তন করা দরকার ছিল? .... 'সিভিক্রিম \ সিমফনি \ ..' ব্যবহার করতে? ক্ষমা করুন আমার সুরকার প্লিজ সম্পর্কে অজ্ঞতা।
জ্যাকরবিত্তন্না
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.