-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
All exercise test files should reference canonical data version #784
Comments
Thanks for raising the issue, it's an important one. The other thing is that some tests can be trak specific, so it can be also stated in the comment giving the reader a sense of the reason for such decision |
I had some free time this evening, so I put together a fairly rough script for checking the state of version numbering. I put the results into a gist to save making a very long post here, and I have summarised the results below. Up-to-date: 33 |
@N-Parsons wow, that's awesome! |
I realised that some deprecated exercises were included, so I added a check for that, as well as checking whether the version string references Script: gist (rev 2) Summary:Up-to-date: 0 |
@N-Parsons how do you think we should proceed, for which exercises we should open issues? |
I've written a script to automate the update for the 33 exercises that reference The "Out-of-date" and "Unknown" categories will need a more manual approach, so I think issues should be created for these. I'm happy to create the issues if you want, but I don't think that I can label them? (I'm not sure what labels you would want, either) |
@N-Parsons that is awesome. Will it work for you? |
@m-a-ge, that's fine - I'll tweak my script and do the pull request now. Do you want separate commits within the PR? Or just one big commit? |
@N-Parsons I guess one commit message would be enough, since it solves one issue |
@m-a-ge, all of the issues should now be created and correctly labelled :) |
@N-Parsons, thanks! |
I implemented the canonical data in
|
Updated lists: Do not reference existing canonical-data:
No canonical data:
This list will no longer be kept up to date. Script bin/check_test_version.py can be used to determine which exercises are out-of-date. |
Closing this issue as all issues for which canonical data exists contain a reference, and a script has been put in use for detecting new canonical data. |
Currently some of the test files reference
x-common//canonical-data.json
with a version number, and a few test files lack any such a reference. Additionally,x-common
was recently renamed toproblem-specifications
, so references tox-common
are inherently outdated and potentially confusing.Having a consistent version string should help with maintenance, since a script can fairly easily be written to compare the version numbers in the test file and the canonical data, and manual checks for how up to date it is are similarly easy. It also makes it easier for exercism users to find and check the canonical data, and thus to be able to contribute any changes they think are necessary if they identify problems or additional tests that would be useful.
Suggested wording
The currently adopted form for the version string seems to be:
# test cases adapted from `x-common//canonical-data.json` @ version: 1.0.1
To conform to PEP8, we should aim to limit the string to 79 characters, so I propose the following wording (75 chars):
# Tests adapted from `problem-specifications//canonical-data.json` @ v2.0.0
Does anyone have any alternatives or suggestions for improvements to this wording?
How to proceed
There are a couple of options for how to go about updating the test files:
Option 1 is obviously the less work-intensive one, but it would leave some inconsistency for quite a while. Option 2 is more work-intensive and should get everything up-to-date quicker, but it might burn people out a bit.
The text was updated successfully, but these errors were encountered: