ropensci / software-review

rOpenSci Software Peer Review.
291 stars 104 forks source link

Pre-submission request: World Magnetic Model calculator #461

Closed wfrierson closed 3 years ago

wfrierson commented 3 years ago

Submitting Author: Will Frierson (@wfrierson)
Repository: https://github.com/wfrierson/wmm Submission type: Pre-submission


Package: wmm
Type: Package
Title: World Magnetic Model
Version: 1.1.1
Authors@R: person("Will", "Frierson", email = "will.frierson@gmail.com",
  role = c("aut", "cre"))
Maintainer: Will Frierson <will.frierson@gmail.com>
Description: Calculate magnetic field at a given location and time according to 
  the World Magnetic Model (WMM). Both the main field and secular variation 
  components are returned. This functionality is useful for physicists and 
  geophysicists who need orthogonal components from WMM. Currently, this package 
  supports annualized time inputs between 2000 and 2025. If desired, users can
  specify which WMM version to use, e.g., the original WMM2015 release or the 
  recent out-of-cycle WMM2015 release. Methods used to implement WMM, including 
  the Gauss coefficients for each release, are described in the following 
  publications: Chulliat et al (2020) <doi:10.25923/ytk1-yx35>,
  Chulliat et al (2019) <doi:10.25921/xhr3-0t19>, 
  Chulliat et al (2015) <doi:10.7289/V5TB14V7>, 
  Maus et al (2010) <https://www.ngdc.noaa.gov/geomag/WMM/data/WMMReports/WMM2010_Report.pdf>, 
  McLean et al (2004) <https://www.ngdc.noaa.gov/geomag/WMM/data/WMMReports/TRWMM_2005.pdf>,
  and Macmillian et al (2000) <https://www.ngdc.noaa.gov/geomag/WMM/data/WMMReports/wmm2000.pdf>.
License: MIT + file LICENSE
Encoding: UTF-8
Depends: 
  R (>= 2.10)
RoxygenNote: 6.1.1
Suggests:
  testthat (>= 2.0.1),
  data.table (>= 1.12.2)
URL: https://github.com/wfrierson/wmm
BugReports: https://github.com/wfrierson/wmm/issues
Language: en-US

Scope

noamross commented 3 years ago

Thank you for the pre-submission, @wfrierson! We consider this in-scope and welcome a full submission. We consider it a data retrieval and munging package as much as anything as it eases access to this data and performs common data processing steps specific to the data on top of that.

mpadge commented 3 years ago

@wfrierson A re-submission will now automatically respond with standard package checks. Documentation for these is forthcoming, so until then could you please install our pgkcheck package and run the following prior to full submission:

x <- pkgcheck("<path>/<to>/wmm")
summary(x)

That will clarify any remaining issues which you can address prior to submission. Thanks!

wfrierson commented 2 years ago

Thanks, @mpadge. I'm trying to install pkgcheck. However, it just won't install.

I'm using Windows (R 3.6.1). When first trying to install pkgcheck, I compile from source using Rtools v3.5.0.4. It errors out saying pkgstats and ssr need to be installed (with extremely long compilation output). I try compiling from source pkgstats and get the output below. I'm stumped. Do I really need to run pkgcheck before submitting, especially if I can't install pkgcheck?

** libs

* arch - i386 mkdir -p ../inst "C:/PROGRA~1/R/R-36~1.1/bin/i386/Rscript.exe" --vanilla "../tools/winlibs.R" cp -rf ../windows/universal-ctags-5.9.20210530.0/bin ../inst/ C:/Rtools/mingw_32/bin/g++ -std=gnu++11 -I"C:/PROGRA~1/R/R-36~1.1/include" -DNDEBUG -I"C:/Users/willf/Documents/R/win-library/3.6/cpp11/include" -O2 -Wall -mtune=generic -c code-symbols.cpp -o code-symbols.o C:/Rtools/mingw_32/bin/g++ -std=gnu++11 -I"C:/PROGRA~1/R/R-36~1.1/include" -DNDEBUG -I"C:/Users/willf/Documents/R/win-library/3.6/cpp11/include" -O2 -Wall -mtune=generic -c cpp11.cpp -o cpp11.o cpp11.cpp:9:1: error: reference to 'writable' is ambiguous writable::integers cpp_loc(const strings flist, const strings cmt_open, const strings cmt_close, const strings cmt); ^ In file included from cpp11.cpp:5:0: C:/Users/willf/Documents/R/win-library/3.6/cpp11/include/cpp11/declarations.hpp:9:39: note: candidates are: namespace writable = cpp11::cpp11::writable; namespace writable = ::cpp11::writable; ^ In file included from C:/Users/willf/Documents/R/win-library/3.6/cpp11/include/cpp11/list.hpp:10:0, from C:/Users/willf/Documents/R/win-library/3.6/cpp11/include/cpp11/data_frame.hpp:12, from C:/Users/willf/Documents/R/win-library/3.6/cpp11/include/cpp11.hpp:7, from C:/Users/willf/Documents/R/win-library/3.6/cpp11/include/cpp11/declarations.hpp:8, from cpp11.cpp:5: C:/Users/willf/Documents/R/win-library/3.6/cpp11/include/cpp11/r_vector.hpp:44:20: note: namespace cpp11::writable { } namespace writable { ^ cpp11.cpp:9:1: error: 'writable' does not name a type writable::integers cpp_loc(const strings flist, const strings cmt_open, const strings cmt_close, const strings cmt); ^ cpp11.cpp: In function 'SEXPREC _pkgstats_cpp_loc(SEXP, SEXP, SEXP, SEXP)': cpp11.cpp:12:250: error: 'cpp_loc' was not declared in this scope return cpp11::as_sexp(cpp_loc(cpp11::as_cpp<cpp11::decay_t>(flist), cpp11::as_cpp<cpp11::decay_t>(cmt_open), cpp11::as_cpp<cpp11::decay_t>(cmt_close), cpp11::as_cpp<cpp11::decay_t>(cmt))); ^ make: [C:/PROGRA~1/R/R-36~1.1/etc/i386/Makeconf:215: cpp11.o] Error 1 ERROR: compilation failed for package 'pkgstats'

mpadge commented 2 years ago

@wfrierson You don't strictly need to run pkgcheck, but it is certainly very helpful to ensure your package has met all pre-submission criteria. If you can't get it to work locally, you could try using the pkgcheck-action GitHub action to run the checks on GitHub. Alternatively, you just have to ensure you read the Dev Guide very carefully and address every single requirement described there.