в нем четко сказано, что если вы не используете большую часть пакета (как и многие пакеты баз данных, которые выполняют функции OVER DBI), то :: является предпочтительным.

рабатываю пакет R, где это доступно вDESCRIPTIONS файл

Imports: 
    dplyr,
    ggplot2,
    ncdf4

И у меня есть пример функции, где я использую третью зависимость

testFun <- function(file, lat, long){
  ncfname <- file.path(file,fsep = .Platform$file.sep)
  xfile <- nc_open(ncfname) #Opens the NetCDF file
  lat <- ncvar_get(xfile, 'lat') #Extracts all latitudes

  ...Calculations

  return(XYZ)
}

Когда яBuild and Reload пакет, и я запускаю функцию, этоcould not find function "nc_open".

НО, это работает, когда я заменяю егоncdf4::nc_open

Я должен префиксpackagename:: к каждой зависимости, которую я использую в коде? или я что-то упустил?

Обычно я хотел бы, чтобы все зависимости устанавливались изDESCRIPTIONS и его функции доступны для использования, не требуя префикса пакета каждый раз.

Ответы на вопрос(2)

Ваш ответ на вопрос