Line count includes other submitted files

Example: this solution takes 11 lines, but also includes package.yaml, whose 16 lines are included in the reported line count (27).

I believe that if package.yaml is an expected part of the solution it should be added to the relevant key in config.json. If it’s not expected, then we don’t know whether it’s code or not so it makes sense for us to include it in the count (e.g. in cases where there are header files, class-per-file solutions, etc).

@ErikSchierboom Thoughts?

Yes, it is an expected part of the solution – it specifies dependencies and is pointed out in config.json – but no, it isn’t code and shouldn’t be counted.

Could you explain why it’s part of the solution please?

Without it my solution wouldn’t compile.

This particular package.yaml lists the extra package as a dependency. It does not by default: I added it. Had I not included package.yaml in my submission, compilation would trip over the line import Data.List.Extra (chunksOf) in CryptoSquare.hs.

package.yaml is comparable to cargo.toml and such.

There is an option to ignore files in the lines of code counter: GitHub - exercism/lines-of-code-counter

I can’t get the tests to run. Could you please give concrete example commands? I’m probably misinterpreting the instructions in the README. Both ./bin/run.sh and ./bin/run-tests.sh result in ENOENT errors, whatever I do.

You should be using ./bin/run-tests-in-docker.sh. For the others, you’ll need both Ruby and tokei installed (which I assume you don’t?).

You could also create a PR that adds a tests/haskell/<name-of-test> directory and have that directory contain the files submitted and then an expected_response.json file. That can serve as the base line.

The ignore of the file is then done in track/haskell.ignore (which you need to add).

I notice you include *.fsproj in the count. Is this intentional?

Draft PR. Are tests not run when it is closed?

The tests are awaiting approval.

Nope, it shouldn’t do that