Describe the bug
After updating QCkit and trying to load NPSdataverse, I get an error that the previous version of QCkit can't be unloaded because it's imported by DPchecker.
This is probably at least in part the fault of my last pull request - happy to help troubleshoot if it's not an obvious fix.
To Reproduce
Steps to reproduce the behavior:
Loaded NPSdataverse and received a message that QCkit (v0.1.1) is out of date.
Unloaded NPSdataverse and installed QCkit v0.1.3 from github.
Re-loaded NPSdataverse.
Add a check that does an API call to DataStore to check whether the title is unique or not. Fails if it is not unique; passes if it is unique. Should there be similarity warnings?
when attaching NPSdataverse, the fucntion should check for any available updates to any constituent packages across github and CRAN. However, at the moment it will tell users that all packages are up to date, even if it is loading an older version of them (from github).
We should break this stuff out into individual issues eventually...
May want to link to NPSdataverse package collection from each individual package's readme
If we want fxn names to conform to tidyverse style guide (snake_case), better to do it now than later.
We should (maybe?) come up with a convention for organizing functions in the R folder.
I'm kind of leaning towards one function per file for small-ish packages because it's easier to see what functions are present. Unexported fxns could all go into a utils.R file.
For larger packages, maybe plan out what categories of functions will be in the package (e.g. validation, read/write, metadata creation, etc) and break files up that way. Downside of this is that there will inevitably be functions that don't fall neatly into one category, and those become hard to find. Documentation helps though.
Currently, NPSdataverse only tells users if packages are out of date.
The output from an older version of NPSdataverse that does not check packages for updates and the output when all packages are up to date is therefore identical, which can be confusing for users and hard for support to trouble shoot.
Add a feature where NPSdataverse alerts users that all packages are up to date (if they are) AND alerts users if packages need to be updated (if they do). That way, if a user sees NO information about package updates it is clear that they need to update NPSdataverse itself.
The NPSdataverse hits the GitHub API a lot - especially when initially installing or updating the NPSdataverse. There has got to be some way to reduce the number of times that it hits the API. For instance, can we eliminate all API hits on installation and only do API calls when the package is loaded?
The first time you install NPSdataverse there at LOTS of packages that need to be updated and the iterative updating process can be tedious, time consuming, and confusing. Is there a way to reduce the packages that need to be updated. For instance, add minimum package version requirements to imports?
Currently, NPSdataverse points to the development version of EMLassemblyline on github. This means that if any changes are made to EAL, it could break NPSdataverse. Instead it would be better to point to the most up to date version/release of EAL. Then if changes are made to EAL we will have time to account for them in NPSdataverse instead of having it all come crashing down.