Description
Now that #602 was merged, it would be great to have all the canonical-data.json
files compliant with the JSON Schema, so that we could automatically check them for errors in the future.
At the moment, we have 74 canonical-data.json
files, but only 3 are compliant.
When porting the files, I guess it would be nice to follow a few guidelines to make reviewing easier:
- Distinct commits with the following:
exercise-name: Make canonical-data.json compliant
, containing the minimal changes to make the test suite compliant.exercise-name: Fix canonical-data.json formatting
, with the changes needed to make it readable again.
- pull-request's title:
exercise-name: Make exercise schema-compliant
- pull-request's body: at least a line containing
Related to #625
. version
should start at 1.0.0 and follow theexercise
property.
Unless there is already a standard in place that I don't know, I suggest formatting with 2-spaces indentation in the second commit, for consistency, which is already the default when running jq '.' canonical-data.json
.
Of course, most of the exercises will demand additional changes to a standard formatting, to make them more compact and readable.
Edit: Just to be clear, this issue is not about style in designing the test suite. Changes that go beyond fixing the test suite to be compliant and fix it to be consistently formatted after that should be avoided here!
canonical-data.json
compliance
- acronym acronym: Make exercise schema-compliant #626
- allergies allergies: Make exercise schema-compliant #628
- all-your-base all-your-base: Make exercise schema-compliant #630
- alphametics alphametics: Make exercise schema-compliant #675
- anagram anagram: Make exercise schema-compliant #631
- atbash-cipher atbash-cipher: Make exercise schema-compliant #632
- beer-song beer-song: Make canonical data more logical #661 / beer-song: Restore original property name #694
- binary binary: Make exercise schema-compliant #644
- binary-search binary-search: Make exercise schema-compliant #676
- bob bob: Make exercise schema-compliant #636
- book-store book-store: Make exercise schema-compliant #635
- bowling bowling: Make exercise schema-compliant #677
- bracket-push bracket-push: Make exercise schema-compliant #680
- change change: Make exercise schema-compliant #641
- circular-buffer circular-buffer: Make exercise schema-compliant. #681
- clock clock: Make exercise schema-compliant #669
- connect connect: Make exercise schema-compliant #670
- crypto-square crypto-square: Make exercise schema-compliant #652
- custom-set custom-set: Make exercise schema-compliant #672
- diamond diamond: add canonical data #612
- difference-of-squares difference-of-squares: Make exercise schema-compliant #653
- dominoes dominoes: Make exercise schema-compliant #682
- etl etl: Make exercise schema-compliant #654
- flatten-array flatten-array: Make exercise schema-compliant #683
- food-chain food-chain: Make exercise schema-compliant. #684
- forth forth: Make exercise schema-compliant #688
- gigasecond Fix "Gigasecond: Schema Compliance" #685
- grains grains: Make exercise schema-compliant #642
- grep grep: Make exercise schema-compliant #712
- hamming Hamming schema #627
- hello-world hello-world: Make exercise schema-compliant #629
- Need bump to 1.0.0
- isogram Make isogram exercise JSON Schema compliant #686
- largest-series-product largest-series-product: Make exercise schema-compliant #689
- leap leap: Make exercise schema-compliant #633
- list-ops list-ops: Make exercise schema-compliant #690
- luhn luhn: Make exercise schema-compliant #643
- markdown markdown: Make exercise schema-compliant #691
- meetup meetup: Make exercise schema-compliant #663
- minesweeper minesweeper: Make exercism schema-compliant #664
- nth-prime nth-prime: Make exercise schema-compliant #665
- nucleotide-count nucleotide-count: Make exercise schema-compliant #666
- ocr-numbers ocr-numbers: Make exercise schema-compliant #667
- pangram Make pangram exercise JSON Schema compliant #687
- pascals-triangle pascals-triangle: Make exercise schema-compliant #668
- perfect-numbers perfect-numbers: add canonical data #611
- phone-number Make phone-number exercise compatible with the json schema #678
- pig-latin pig-latin: Make exercise schema-compliant #646
- pov pov 1.1.0: Make exercise schema-compliant #704
- prime-factors prime-factors: Make exercise schema-compliant #695
- queen-attack queen-attack: Make exercise schema-compliant #655
- rail-fence-cipher rail-fence-cipher: Make exercise schema-compliant #696
- raindrops raindrops: Make exercise schema-compliant #637
- react react: Make exercise schema-compliant #697
- rectangles rectangles: Make exercise schema-compliant #698
- rna-transcription rna-transcription: Make exercism schema-compliant #638
- robot-simulator robot-simulator: Make exercise schema-compliant #656
- roman-numerals roman-numerals: Make exercise schema-compliant #711
- rotational-cipher rotational-cipher: Make exercise schema-compliant #701
- run-length-encoding run-length-encoding: Make exercise schema-compliant #702
- say say: Make exercise schema-compliant #647
- scrabble-score scrabble-score: Make exercise schema-compliant #639
- secret-handshake secret-handshake: Make exercise schema-compliant #657
- sieve sieve: Make exercise schema-compliant #649
- space-age space-age: Make exercise schema-compliant #703
- sublist sublist: Make exercise schema-compliant #705
- sum-of-multiples sum-of-multiples: Make exercise schema-compliant #650
- tournament tournament: Make exercise schema-compliant #717
- transpose transpose: Make exercise schema-compliant #706
- triangle triangle: Make exercise schema-compliant #651
- trinary trinary: Make exercise schema-compliant #645
- two-bucket two-bucket: Make exercise schema-compliant #713
- variable-length-quantity variable-length-quantity: Make exercise schema-compliant #708
- word-count word-count: Make exercise schema-compliant #634
- wordy wordy: Make exercise schema-compliant #648