-
-
Notifications
You must be signed in to change notification settings - Fork 195
Add -Wall to all package.yaml #773
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
Conversation
Version numbers bumped:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
were any missed?
$ find exercises -name package.yaml | xargs grep -L 'this search works' | wc -l (11-17 04:20)
201
$ find exercises -name package.yaml | xargs grep -L 'ghc-options: -Wall' | wc -l (11-17 04:20)
0
did any file somehow get two?
$ for i in $(find exercises -name package.yaml); do n=$(grep 'ghc-options: -Wall' $i | wc -l); if [ "$n" -ne 1 ]; then echo "no" ; fi; done
cool. be careful with two certain versions.
In #522 the following convention was established: > [exercises based on a non-versioned canonical-data.json should use > version 0.9.0.1. If there is a comment containing the date from the data > file used as a reference, it should be added to the YAML file, to ease > transition, like this: The 'binary' exercise appears to be the only package left that honors this convention of non-versioned canonical data. Since the exercise is deprecated, and canonical data has versions in them, I propose that we deprecate this convention in favor of 'version' lines that contain only the MAJOR.MINOR.PATCH.SERIAL version number.
Oh, something I just realised - The motivations written for this PR indicate that this is geared toward students. In that case, you might consider simply not adding the line to examples' package.yaml, since they're already being run with Then again, it's already been done, so shrug. |
Good point. But should students also have |
We can probably base that decision on factors such as:
I caution that it may cause the process of working on an exercise to be more cumbersome. I imagine that during the course of that work there are a few unused bindings, etc. Sometimes I just want to see whether it compiles, even though I have some unused bindings. That was of course quite speculative. It may be valuable to try to complete an exercise from scratch with |
Also, bump version number. This fixes #769.
Righto righto, let me do the README business and this will be good, there will be one PR and one issue for the README business |
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, so now that only the non-example package.yaml are updated, the checks for this got easier, since verification operations need to act on exercises/*/package.yaml instead of find exercises -name package.yaml
$ ls */package.yaml | wc -l (11-22 10:47)
96
$ grep -L 'this search works' exercises/*/package.yaml | wc -l
96
$ grep -L '^ ghc-options: -Wall' exercises/*/package.yaml | wc -l
0
So, we should be good once it's rebased.
I'd like to try really hard never to merge a In PRs that should be merged as one commit, that means Squash and Merge is suitable. But what to do about PRs that should be merged as multiple commits, such as this one? I guess the other solution is to ask for the up-to-date requirement to be turned off. Honestly I thought that exercism/discussions#174 indicates there's a desire to have it on for all repos, but I know of at least two track repos that do not have that option. |
I think I pushed a button that caused this extra merge from master. I really wanted to push it. But it seems like if I had rebased before pushing to my own branch, then I could have gone without clicking it. How about if we ask committers to rebase from master as the last thing they do, since there is no "rebase from master" button, but only a "merge from master" button? |
Yeah, that sounds right. |
Excellent. Learning the GitHub workflow here. :-) |
I added
ghc-options: -Wall
belowsource-dirs: src
for both example solutions and exercise stubs, using the following command:
This causes warnings to show on both
stack build
andstack test
.I realize that version numbers should be bumped, too. Oh dear.