-
-
Notifications
You must be signed in to change notification settings - Fork 51
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
Create exercise versioning policy based on Haskell track #283
Comments
I'm voting for
|
I'm not sure this change would be so useful (though I'm willing to listen to justifications for it). |
I've read that issue, and the obsolete version tracking is not the same as what I'm suggesting that we adopt from the Haskell track.
So some test suites tried to have test versioning as a dynamic part of the tests so when you test their version with a test suite that is ahead, it detects which tests to apply. This is a non-issue now as What I'm proposing is that we keep track of how up to date we are with problem-specifications so new test cases can propagate to the Ocaml track. |
That may be worth a go... should probably be in the tools folder. |
By closing this, I've marked the policy as chosen. I'll create another issue in which we can track progress. |
The Haskell track uses the
version
property instack
's package.yaml to contain the version of problem-specifications for the given exercise. See for example exercism/haskell@003f9d9 's 1.3.0.6: 1.3.0 is the version in problem-specifications bumped in exercism/problem-specifications#1293 and 6 is a serially incremented value across any local change to the exercise.We could go with the same versioning policy as the Haskell track, but since there's less traffic on the Ocaml track's GitHub, we could do with just the problem-specifications version number for each exercise.
Here are three suggestions as to where we can place the version number:
We could place it in a comment at the top of test.ml:
Embedding information in comments is less ideal.
We could place it as a top-level definition in test.ml:
Since test.ml auto-executes unconditionally, we could change all test.ml files to inspect
Sys.interactive
(equivalent to Python'sif __name__ == "__main__"
).We could embed a version number in
dune-project
:This most closely resembles how the Haskell track does it.
The text was updated successfully, but these errors were encountered: