7
我有幾個CPAN模塊,廣泛使用元編程來減少鍋爐板並減輕重構。如何告訴CPAN(Perl)使用元編程創建的包?
然而,這樣做的結果是有很多程序包是以編程方式創建的,因此CPAN的源代碼中找不到package X::Y::Z;
行以查找(然後用於將命名空間添加到先到先得保留的命名空間)。
所以我的問題是,如果有一個讓CPAN知道這些運行時創建的包的首選方式。以下是我目前正在考慮的選項:
- 手動搜索所有包併爲CPAN創建一個虛擬文件
pm
以進行索引。 - 手動搜索,然後更新Build.PL,將它們包含在
provides
列表中。 - 一些代碼添加到元編程程序來跟蹤其使用的軟件包,並添加一個勾入到
build dist
更新provides
或META.yaml
最後的選擇一些其他的部分是什麼當前我傾向於。我想知道這種方法是否存在問題,或者是否有更好的方法使CPAN更新爲完整的軟件包列表。
至少在我最惡劣的`List :: Gen`的情況下,運行時創建的包中沒有包含任何終端用戶應該直接調用的函數。因此,爲他們提供最終用戶文檔沒有任何意義。我知道沒有必要聲明所有的軟件包名稱,但我認爲讓PAUSE知道它們是最好的做法。 – 2010-12-01 16:06:14