Skip to content

Allow submitting solution without specifying files #991

@ErikSchierboom

Description

@ErikSchierboom

One of the most requested features for the CLI is to be able to submit a solution without having to explicitly specify the files to submit. With Exercism v3, each exercise will have a .meta/config.json file (see https://github.com/exercism/docs/blob/main/building/tracks/concept-exercises.md#file-metaconfigjson and https://github.com/exercism/docs/blob/main/building/tracks/practice-exercises.md#file-metaconfigjson). This file contains a files property with a nested a solution string array property. The values in the solution array are the names of the files that the student should work on. In other words: these file names can be used to determine the files that should be submitted, provided no files were specified by the student.

As an example, consider the following .meta/config.json file:

{
  "files": {
    "solution": ["Lasagna.fs"],
    "test": ["LasagnaTests.fs"],
    "exemplar": [".meta/Exemplar.fs"]
  }
}

If the student runs exercism submit (no file names specified), the CLI should then interpret this as if the student ran exercism submit Lasagna.fs.

Note that if a student does specify files, the CLI should use those and ignore the .meta/config.json file.

Also note that the solution property is an array, so it can contain multiple files (which should all be submitted).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions