Pracuję nad pakietem R, który otacza pakiet rmongodb
i tworzy przyjazny dla programisty interfejs do pracy z MongoDB. Pakiet używa wewnętrznie proto
.Eksportowanie środowiska z pakietu R
chciałbym wyeksportować jedną metodę fabryczną pośrednictwem obiektu proto (środowisku) o nazwie MongoDB
, którego definicja brzmi:
MongoDB <- proto(
new = function(., ...) {
# Good stuff in here...
}
)
Podczas rozwoju z RStudio & devtools
i podczas testowania lokalnego nie wydaje być problemem. Jestem jednak przeżywa kilka problemów:
devtools::check()
podkreśla kładącimport(MongoDB)
w moim pliku przestrzeni nazw co sprawiaR CMD check
niepowodzeniem z „zależnością przestrzeni nazw nie wymagana:«MongoDB»”.Kiedy usunąć tę dyrektywę import,
R CMD check
nie powiedzie się z „obiekt«MongoDB»not found” podczas uruchamiania moichtestthat
testy, nawet jeśli ręcznie dodaćexport(MongoDB)
. Jednakdevtools::test()
działa dobrze w RStudio.
Jaki jest zalecany sposób eksportu proto
obiektów, które są środowiskami, z pakietów R?
Aktualizacja:
Za sugestią Gabor poniżej, zrobiłem pewien, że MongoDB.Rd
deklaruje MongoDB
jako dane (link ma źródło). Nadal dostaję błąd w MongoDB
, który nie jest widoczny w testach (które używają testthat
). Mój plik DESCRIPTION
to here i NAMESPACE
jest here.
Możesz zajrzeć do ['RMongo'] (http: // cran.r-project.org/web/packages/RMongo/index.html) również pakiet. Używa sterownika Java i ma interfejs wyższego poziomu niż pakiet 'rmongodb'. – Stennie