pachadotdev / analogsea

Digital Ocean R client
https://pacha.dev/analogsea/
Apache License 2.0
155 stars 24 forks source link

analogsea package misses dependency to httuv #50

Closed behrica closed 10 years ago

behrica commented 10 years ago

I started to try the docker related functionality of the lastest code and found some issues. I report them one-by-one.

Install this package from githup and calling droplets() fails with error message Error in authorizer(authorize_url, is_interactive) : httpuv package required to capture OAuth credentials.

After installing "httpuv" it worked.

I did this on a completely fresh Rstudio server instance.

R commands:

install.packages("devtools")
devtools::install_github("sckott/analogsea")
library("analogsea")
droplets()
Attaching package: 'analogsea'

The following object is masked from 'package:graphics':

  image

> droplets()
Error in authorizer(authorize_url, is_interactive) : 
  httpuv package required to capture OAuth credentials.

SessionInfo:

R version 3.1.1 (2014-07-10)
Platform: x86_64-pc-linux-gnu (64-bit)

locale:
  [1] C

attached base packages:
  [1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
  [1] analogsea_0.1.8.9999

loaded via a namespace (and not attached):
  [1] RCurl_1.95-4.3  Rcpp_0.11.3     assertthat_0.1  devtools_1.6    digest_0.6.4    httr_0.5        magrittr_1.0.1  packrat_0.4.1-1
[9] plyr_1.8.1      stringr_0.6.2   tools_3.1.1    
sckott commented 10 years ago

@hadley put httpuv in Suggests?

sckott commented 10 years ago

actually, the error message is pretty clear, and we shouldn't need to include suggests for other pkgs we import here

behrica commented 10 years ago

I am newbie in R, so cannot really judge this. So you say, it is an indirect dependency which is missing ? If yes, then the bug should be reported there, probably.

hadley commented 10 years ago

I've made the flow a little clearer in the non-interactive case. But fundamentally httpuv is not a requirement of the package - it's only needed if you haven't set a DO_PAT env var. I think that's a better way than OAuth2, so I think it's to require an additional package install for that use case.