-
-
Notifications
You must be signed in to change notification settings - Fork 21
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
WIP: Starting on concepts. #128
base: main
Are you sure you want to change the base?
Conversation
221da9b
to
25e47b7
Compare
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.
(Came here from Slack).
The configlet lint
output of:
The Concept Exercise
lucians-luscious-lasagna
hasbasics-1
in itsconcepts
, which is not aslug
in the top-levelconcepts
array:
/home/runner/work/pony/pony/config.json
is trying to point out that the exercise claims to teach the basics-1
concept, but that concept does not exist here:
Line 186 in 25e47b7
"concepts": [], |
To resolve that output, we need to add something like:
"concepts": [
{
"uuid": "753569f6-14f1-4e9d-ab70-db4819a17162",
"slug": "basics-1",
"name": "Basics 1"
}
(Although I think we generally just call it basics
, and then have stuff that doesn't fit in "basics" as separate concepts).
Then re-running configlet lint
will produce some new errors complaining that the concept's files don't exist.
See e.g.
- The
config.json
for a launched track, like Elixir's - The docs here: https://exercism.org/docs/building/tracks/concepts
Ah ha! I apparently had So I just pushed a change which removed line 186 and… it still fails with the same response. This is what it looks like: https://github.com/redvers/pony/blob/5cbf3657a8210540772b396d6102aecfafec5132/config.json#L11-L17 I don't see how it looks different to your example. (edit: I re-ran the linter in debug and the error changed state to the state you said would be next up - thank you) |
Ah. I didn't catch that A duplicate key name is valid JSON, but generally recommended against. For one thing, it's less portable, as different parsers handle it differently. But it's common to silently use the last value, and that's what the Ruby library that powers the Exercism website does.
But it turns out that we don't hit this problem much in practice, so this hasn't been a priority. In the future, |
"concepts": [ | ||
{ | ||
"uuid": "3e6e4a21-cc66-4c48-857b-90e1ca5298f9", | ||
"slug": "basics-1", |
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.
Could you rename the concept to basics
? There should really only be one basics
concept. Any other concepts should be "real" concepts (like numbers, booleans, etc.)
Initial commit will fail CI as the exercise isn't there yet.