-
Notifications
You must be signed in to change notification settings - Fork 217
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Should we fail on R CMD check NOTES in check-full? #381
Comments
I think the major blocker to doing this would be the package size NOTE. But perhaps we could use Are there other common NOTES that don't stop a package submission we would have to ignore? |
I think most of the notes we hit are only for CRAN submission, two others I can remember off the top of my head are:
(both from haven) The first is generally easy to fix, but I know the tidymodels folks don't always add when they already have very heavy suggests. |
It looks like we can turn off the first with |
Now that we have a check action, maybe we could have an argument that's like "ignore common unimportant notes" or something? Or some setting that's part way between "warning" and "note"? |
Maybe "note" could mean "notes that generally interfere with cran submission" and "all" could mean "all notes"? |
Or we could make it more clear that this is an opinionated choice that we've made and call "significant" notes "tidy" |
Those sound like good suggestions to me. One thing I worry about is if we will run into a time when a note we want to ignore doesn't have a envvar. Also some of the envvars were added only in later versions of R. It might be worth talking with @gaborcsardi about support for some sort of ignore list in rcmdcheck, so we can ignore them from the package rather than relying on the envvars to disable the checks. |
Yes, I am going to add this: r-lib/rcmdcheck#12 to solve this very issue. |
OTOH, maybe we could just suppress particular NOTEs using env vars? What are the ones that we want to suppress? I could think of two:
Any others? |
Or maybe the best is a combination of both: if |
@gaborcsardi see above 😉 I think @jimhester's worry is that we'll eventually hit a note that we can't easily suppress, which is where something more general from rcmdcheck would come in handy. We could also just switch back to |
:)
That's true, but CRAN is quite meticulously adding env vars for the new NOTEs, probably because some of them don't want to see them. So I think for now I'll just add a custom env var, can can suppress notes and checks on a per package basis. If it turns out that we need an ignore file, we can add support for it later. |
But then maybe rcmdcheck doesn't need to do anything? We could just set those env vars in the |
Yeah, that's not too bad, either. But if it is in rcmdcheck, then it is used locally as well. |
Oh yeah, aligning the local and GHA results is a good motivation for doing this. In that case, are you sure |
So nothing changes, unless people add |
Does the file have to be included in the built package? Couldn't rcmdcheck read it before building? |
Sure, but then it does not work on places where you use a package |
@jimhester But I don't mind that much, if you prefer, I can also put it in |
That makes sense, I just don't really love shipping this file to users, but it is not a huge deal either way. |
Alternatively, we can put it in |
Or in |
Good idea, maybe |
OK, so this is now up to us flipping the switch, probably in the example workflows? Changing the default in the action would probably break many builds. |
I still think we r-lib/rcmdcheck#173 first, because, as you say, switching to notes will be too annoying. Agreed that we should change in the examples. |
For the record, r-lib/rcmdcheck#173 is still blocking this. |
Warning seems like the right default for most package developers, but I keep getting surprised that GHA doesn't fail on NOTES when working on tidyverse packages.
The text was updated successfully, but these errors were encountered: