Composer: مستودع المؤلف للحزم الديناميكية لا يتلقى أي معلمات للحزمة التي تم البحث عنها؟

تم إنشاؤها على ١٦ أغسطس ٢٠١٦  ·  3تعليقات  ·  مصدر: composer/composer

أنا بصدد بناء مستودع وكيل _Composer. تتمثل فكرة الخدمة المصغرة في تقديم حزم لغة / ترجمة ديناميكية للقوالب أو المكونات الإضافية من استجابات واجهة برمجة تطبيقات WordPress. الطرق هي كما يلي:

 https://api.wordpress.org/translations/plugins/1.0/?slug={slug}&version={version}

إن خدمة _Nodejs_ نفسها ليست سوى وكيل يجب إضافته كـ repository إلى composer.json من type:project . تقوم الخدمة نفسها بإرجاع المفتاح providers-url كجزء من الملف packages.json (الذي تم إنشاؤه ديناميكيًا).

"providers-url" : "/" + request.params.scope + "/providers/%package%$%hash%.json"

للحصول على مثال ، يرجى الاطلاع على التالي composer.json :

{
    "name"              : "vendor/testproject",
    "type"              : "wordpress-project",
    "minimum-stability" : "dev",
    "repositories"      : [
        {
            "type" : "composer",
            "url"  : "https://{unique-ID}.ngrok.io/test"
        }
    ]
}

حتى الآن يمكنني فقط رؤية الطلبات إلى /endpoint/packages.json ، لكن بدون أي معلمات. في عالم مثالي ، يرسل الملحن عبر حزم required ، إما كرأس أو كمعلمة استعلام.

لقد بحثت بالفعل (واختبرت) من خلال جميع الخيارات المتاحة لمحاولة _fake_ طريقي عبر النظام للحصول على الحزمة المطلوبة بطريقة ما: type:{composer|vcs|…} . هل هناك طريقة لتحقيق ذلك؟ أو هل هناك على الأقل _will_ لقبول PR لتنفيذ هذا - جنبًا إلى جنب مع علامة إضافية لتمكين هذا السلوك؟

_ ملاحظة بخصوص الخدمات المستضافة: يمكن أن يكون هناك مزيج من خيارات notify-batch و request/require لجمع بعض الإحصائيات حول المستودعات التي تم البحث عنها والتي تم جلبها بالفعل. قد يسمح هذا الأسلوب باستهداف حزم "التخزين المؤقت" بشكل أفضل.

Feature

التعليق الأكثر فائدة

هذا غير ممكن في الوقت الحالي ، وأشك في أنه سيكون لبعض الوقت .. ربما في الإصدار 2.0 بمجرد إعادة تشكيل عناصر البلياردو يمكننا تحقيق ذلك. سأترك مفتوحًا الآن ولكن لا تحبس أنفاسك :)

ال 3 كومينتر

هذا غير ممكن في الوقت الحالي ، وأشك في أنه سيكون لبعض الوقت .. ربما في الإصدار 2.0 بمجرد إعادة تشكيل عناصر البلياردو يمكننا تحقيق ذلك. سأترك مفتوحًا الآن ولكن لا تحبس أنفاسك :)

@ الكحول أعتقد أنه يمكنك ضبط الملصقات الآن :)

الإغلاق لأنني لا أرى أن هذا يحدث حقًا ، فقد يكون ممكنًا باستخدام البيانات الوصفية v2 (المسار # 8248 إذا كنت مهتمًا بمزيد من التفاصيل) حيث يمكنك القيام بـ metadata-url: "/p2/%package%.json" هناك وسيتم استدعاء جميع الحزم المطلوبة واحدة من خلال واحد ، ولكن يمكنك فقط إرجاع البيانات الخاصة باسم الحزمة وليس الحزم الأخرى ، لذلك لست متأكدًا من أنها تساعدك حقًا.

يتيح لك إنشاء حزم سريعًا إلى حد ما ، لذلك يمكنك جعل المكونات الإضافية تتطلب foo/plugin-translations-en ثم تأكد من أنك تقوم دائمًا بإرجاع حزمة للتأكد من أنها قابلة للتثبيت ، إما حزمة تحتوي على ترجمات صالحة بالداخل أو حزمة وصفية فارغة لا تثبت شيئًا في حالة عدم توفر ترجمات؟

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

tom-- picture tom--  ·  3تعليقات

vamsiikrishna picture vamsiikrishna  ·  3تعليقات

ghost picture ghost  ·  3تعليقات

GNSubrahmanyam picture GNSubrahmanyam  ·  3تعليقات

ravanscafi picture ravanscafi  ·  3تعليقات