Skip to content
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

release: 4.0.0-alpha.37 #528

Merged
merged 1 commit into from
Mar 2, 2022
Merged

release: 4.0.0-alpha.37 #528

merged 1 commit into from
Mar 2, 2022

Conversation

ee7
Copy link
Member

@ee7 ee7 commented Mar 2, 2022

Let's create a release for these user-facing changes:

  • d0cd08c lint: error on missing concept/exercise files (#522)
  • a71637f lint: add annotation for key features in config.json
  • 09d5108 lint: add annotation for tags in config.json
  • cf70d5f validators: pass error annotation to hasValidRuneLength
  • 856ad41 lint: link to docs on exercism.org, not GitHub (#520)
  • aa22e35 lint: allow overlap of solution and test files for d and plsql tracks
  • fea7bcc lint: allow overlap of files.example and files.exemplar values
  • 3a55f57 lint: support error annotations (#517)

@ee7 ee7 requested a review from ErikSchierboom as a code owner March 2, 2022 13:48
@ee7 ee7 mentioned this pull request Mar 2, 2022
Copy link
Member

@ErikSchierboom ErikSchierboom left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you run your script to see how the latest version will affect the track repos?

@ee7
Copy link
Member Author

ee7 commented Mar 2, 2022

Could you run your script to see how the latest version will affect the track repos?

Sure. The below is the diff to the output of per-track configlet lint - does it look right to you?

05ab1e

+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

ada

+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

babashka

+The lint command is under development.
+To check your track using the latest linting rules,
+please regularly update configlet and re-run this command.
+
+`./exercises/concept` contains a directory named `international-calling-connoisseur`, which is not a `slug` in the array of concept exercises. Please add the exercise to that array. If the exercise is not ready to be shown on the website, please set its `status` value to "wip":
+./config.json
+
+`./exercises/concept` contains a directory named `interest-is-interesting`, which is not a `slug` in the array of concept exercises. Please add the exercise to that array. If the exercise is not ready to be shown on the website, please set its `status` value to "wip":
+./config.json
+
+`./exercises/concept` contains a directory named `annalyns-infiltration`, which is not a `slug` in the array of concept exercises. Please add the exercise to that array. If the exercise is not ready to be shown on the website, please set its `status` value to "wip":
+./config.json
+
+`./exercises/concept` contains a directory named `cars-assemble`, which is not a `slug` in the array of concept exercises. Please add the exercise to that array. If the exercise is not ready to be shown on the website, please set its `status` value to "wip":
+./config.json
+
+`./exercises/concept` contains a directory named `squeaky-clean`, which is not a `slug` in the array of concept exercises. Please add the exercise to that array. If the exercise is not ready to be shown on the website, please set its `status` value to "wip":
+./config.json
+
+`./exercises/concept` contains a directory named `log-levels`, which is not a `slug` in the array of concept exercises. Please add the exercise to that array. If the exercise is not ready to be shown on the website, please set its `status` value to "wip":
+./config.json
+
+`./exercises/concept` contains a directory named `elyses-destructured-enchantments`, which is not a `slug` in the array of concept exercises. Please add the exercise to that array. If the exercise is not ready to be shown on the website, please set its `status` value to "wip":
+./config.json
+
+`./exercises/concept` contains a directory named `lucians-luscious-lasagna`, which is not a `slug` in the array of concept exercises. Please add the exercise to that array. If the exercise is not ready to be shown on the website, please set its `status` value to "wip":
+./config.json
+
+`./exercises/concept` contains a directory named `tracks-on-tracks-on-tracks`, which is not a `slug` in the array of concept exercises. Please add the exercise to that array. If the exercise is not ready to be shown on the website, please set its `status` value to "wip":
+./config.json
+
+`./exercises/concept` contains a directory named `bird-watcher`, which is not a `slug` in the array of concept exercises. Please add the exercise to that array. If the exercise is not ready to be shown on the website, please set its `status` value to "wip":
+./config.json
+
+Configlet detected at least one problem.
+For more information on resolving the problems, please see the documentation:
+https://exercism.org/docs/building/configlet/lint

ballerina

-A `files.exemplar` value is `.meta/reference/%{snake_slug}.bal`, which is not a unique `files` entry:
-./config.json
-
+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

c

+The lint command is under development.
+To check your track using the latest linting rules,
+please regularly update configlet and re-run this command.
+
+`./concepts` contains a directory named `booleans`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+`./concepts` contains a directory named `conditionals`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+`./concepts` contains a directory named `loops`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+`./concepts` contains a directory named `recursion`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+`./concepts` contains a directory named `pointers`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+Configlet detected at least one problem.
+For more information on resolving the problems, please see the documentation:
+https://exercism.org/docs/building/configlet/lint

ceylon

+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

coq

+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

d

-The lint command is under development.
-To check your track using the latest linting rules,
-please regularly update configlet and re-run this command.
-
-A `files.test` value is `source/%{snake_slug}.d`, which is not a unique `files` entry:
-./config.json
-
-Configlet detected at least one problem.
-For more information on resolving the problems, please see the documentation:
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md

forth

+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

gleam

-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

gnu-apl

+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

gnucobol

+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

groovy

-The lint command is under development.
-To check your track using the latest linting rules,
-please regularly update configlet and re-run this command.
-
-A `files.exemplar` value is `.meta/src/reference/groovy/%{pascal_slug}.groovy`, which is not a unique `files` entry:
-./config.json
-
-Configlet detected at least one problem.
-For more information on resolving the problems, please see the documentation:
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md

haxe

+The lint command is under development.
+To check your track using the latest linting rules,
+please regularly update configlet and re-run this command.
+
+Warning: The following concepts exist in the `practices` array of a Practice Exercise in `./config.json`, but do not exist in the top-level `concepts` array
+recursion
+
+Warning: The Concept `strings` appears 15 times in the `practices` arrays of user-facing Practice Exercises, but can only appear at most 10 times:
+./config.json
+
+Warning: The following concepts exist in the `prerequisites` array of a Practice Exercise in `./config.json`, but are not in the `concepts` array of any user-facing Concept Exercise
+regular-expressions
+strings
+arrays
+booleans
+numbers
+if-statements
+for-loops
+floating-point-numbers
+integral-numbers
+enums
+exceptions
+maps
+basics
+string-interpolation
+bit-manipulation
+optional-arguments
+
+The `chars` concept is missing its required files. Please create the `./concepts/chars` directory with its required files:
+./config.json
+
+The `indexers` concept is missing its required files. Please create the `./concepts/indexers` directory with its required files:
+./config.json
+
+The `foreach-loops` concept is missing its required files. Please create the `./concepts/foreach-loops` directory with its required files:
+./config.json
+
+The `integral-numbers` concept is missing its required files. Please create the `./concepts/integral-numbers` directory with its required files:
+./config.json
+
+Configlet detected at least one problem.
+For more information on resolving the problems, please see the documentation:
+https://exercism.org/docs/building/configlet/lint

idris

+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

io

+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

j

+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

julia

-`./concepts` contains a directory named `arithmetic-operators`, which is not a `slug` in the concepts array. Please add the concept to that array:
+`./concepts` contains a directory named `vectors`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+`./concepts` contains a directory named `pairs`, which is not a `slug` in the concepts array. Please add the concept to that array:
-`./concepts` contains a directory named `iterator-protocol`, which is not a `slug` in the concepts array. Please add the concept to that array:
+`./concepts` contains a directory named `arithmetic-operators`, which is not a `slug` in the concepts array. Please add the concept to that array:
-`./concepts` contains a directory named `pairs`, which is not a `slug` in the concepts array. Please add the concept to that array:
-./config.json
-
-`./concepts` contains a directory named `vectors`, which is not a `slug` in the concepts array. Please add the concept to that array:
+`./concepts` contains a directory named `iterator-protocol`, which is not a `slug` in the concepts array. Please add the concept to that array:
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

kotlin

-A `files.exemplar` value is `.meta/src/reference/kotlin/%{pascal_slug}.kt`, which is not a unique `files` entry:
-./config.json
+Warning: The following concepts exist in the `prerequisites` array of a Practice Exercise in `./config.json`, but are not in the `concepts` array of any user-facing Concept Exercise
+lists
+arrays
+conditionals
+loops
+
+Warning: The following concepts exist in the `prerequisites` array of a Practice Exercise in `./config.json`, but do not exist in the top-level `concepts` array
+lists
+arrays
+conditionals
+loops
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

nim

(Yes, I'll rename it to lasagna)

+The lint command is under development.
+To check your track using the latest linting rules,
+please regularly update configlet and re-run this command.
+
+`./exercises/concept` contains a directory named `basics`, which is not a `slug` in the array of concept exercises. Please add the exercise to that array. If the exercise is not ready to be shown on the website, please set its `status` value to "wip":
+./config.json
+
+Configlet detected at least one problem.
+For more information on resolving the problems, please see the documentation:
+https://exercism.org/docs/building/configlet/lint

nix

+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

ocaml

-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

pharo-smalltalk

-The lint command is under development.
-To check your track using the latest linting rules,
-please regularly update configlet and re-run this command.
-
-A `files.exemplar` value is `.meta/solution/%{pascal_slug}.class.st`, which is not a unique `files` entry:
-./config.json
-
-Configlet detected at least one problem.
-For more information on resolving the problems, please see the documentation:
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md

php

+The lint command is under development.
+To check your track using the latest linting rules,
+please regularly update configlet and re-run this command.
+
+`./concepts` contains a directory named `variable-scope`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+`./concepts` contains a directory named `variables`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+`./concepts` contains a directory named `user-defined-functions`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+`./concepts` contains a directory named `while-loops`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+`./concepts` contains a directory named `foreach-loops`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+`./concepts` contains a directory named `union-types`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+`./concepts` contains a directory named `variable-functions`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+`./concepts` contains a directory named `type-juggling`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+`./concepts` contains a directory named `for-loops`, which is not a `slug` in the concepts array. Please add the concept to that array:
+./config.json
+
+Configlet detected at least one problem.
+For more information on resolving the problems, please see the documentation:
+https://exercism.org/docs/building/configlet/lint

plsql

-The lint command is under development.
-To check your track using the latest linting rules,
-please regularly update configlet and re-run this command.
-
-A `files.test` value is `ut_%{snake_slug}#.plsql`, which is not a unique `files` entry:
-./config.json
-
-Configlet detected at least one problem.
-For more information on resolving the problems, please see the documentation:
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md

pony

+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

qsharp

+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

scala

+The lint command is under development.
+To check your track using the latest linting rules,
+please regularly update configlet and re-run this command.
+
+`./exercises/concept` contains a directory named `basics`, which is not a `slug` in the array of concept exercises. Please add the exercise to that array. If the exercise is not ready to be shown on the website, please set its `status` value to "wip":
+./config.json
+
+Configlet detected at least one problem.
+For more information on resolving the problems, please see the documentation:
+https://exercism.org/docs/building/configlet/lint

shen

-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

solidity

+The `tags` array is empty:Tracks are annotated with tags to allow searching for tracks with certain tags.
+Tags must be chosen from our list of supported tags.
+Tags should be selected based on the general usage of their language.
+For more information on tags and the list of supported tags see:
+https://exercism.org/docs/building/tracks/config-json#h-tags
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

system-verilog

-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

z3

+The `functions` concept is missing its required files. Please create the `./concepts/functions` directory with its required files:
+./config.json
+
+The `basics` concept is missing its required files. Please create the `./concepts/basics` directory with its required files:
+./config.json
+
+The `bools` concept is missing its required files. Please create the `./concepts/bools` directory with its required files:
+./config.json
+
+The `tuples` concept is missing its required files. Please create the `./concepts/tuples` directory with its required files:
+./config.json
+
+The `return-keyword` concept is missing its required files. Please create the `./concepts/return-keyword` directory with its required files:
+./config.json
+
+The `integers` concept is missing its required files. Please create the `./concepts/integers` directory with its required files:
+./config.json
+
+The `for-loops` concept is missing its required files. Please create the `./concepts/for-loops` directory with its required files:
+./config.json
+
-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

zig

-https://github.com/exercism/docs/blob/main/building/configlet/lint.md
+https://exercism.org/docs/building/configlet/lint

@ErikSchierboom
Copy link
Member

Yep, that looks good!

(Yes, I'll rename it to lasagna)

😄

@ee7 ee7 merged commit 23a986d into exercism:main Mar 2, 2022
@ee7 ee7 deleted the release-4.0.0-alpha.37 branch March 2, 2022 16:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants