configlet

command module
v2.0.2+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 8, 2017 License: MIT Imports: 4 Imported by: 0

README

Configlet

A linter for exercism language track repositories.

The API that delivers language-specific exercism problems makes certain assumptions. Configlet makes it simple to verify up-front that the changes to existing problems or the addition of new problems will play nicely with the API.

Configlet checks for the following configuration issues:

  1. config.json contents that are invalid according to the specification.
  2. Inconsistencies between the lists of track slugs in config.json and the corresponding implementation files:
    • Slugs referenced in config.json that have no corresponding implementation.
    • Slugs referenced in config.json whose implementation is missing an example solution.
    • Implementations for slugs that are not referenced in config.json.
    • Implementations for slugs that have been declared as foregone in config.json.

Usage

$ configlet path/to/problem/repository

If you have installed the configlet binary and are at the root of an exercism language track, then you can run the following:

$ configlet .

Documentation

Overview

Command configlet sanity-checks Exercism track configuration.

Each track has a script that downloads the binary to run on Travis CI.

See http://exercism.io for more information about the project.

Compile the CLI:

$ go build -o out/configlet

Run the command:

$ path/to/configlet path/to/track

Cross-compile using the build script:

$ bin/build

To verify the command, use the fixture files:

$ go build -o out/configlet
$ out/configlet configlet/fixtures/track

The command should exit with status 1, and output a list of issues.

Directories

Path Synopsis
Package configlet sanity-checks Exercism track configuration.
Package configlet sanity-checks Exercism track configuration.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL