Skip to content

feat: add simple-cipher exercise - #310

Closed
metif12 wants to merge 1 commit into
exercism:mainfrom
metif12:add/simple-cipher
Closed

metif12 wants to merge 1 commit into
exercism:mainfrom
metif12:add/simple-cipher

Conversation

@metif12

@metif12 metif12 commented Sep 28, 2026

Copy link
Copy Markdown
Contributor

What

Adds the Simple Cipher practice exercise (difficulty 4), split out of #307.

  • simple-cipher.v — stub
  • .meta/example.v — example solution
  • run_test.v — 12 tests, built from the canonical data in problem-specifications
  • .meta/config.json, .meta/tests.toml, .docs/
  • config.json — registers the exercise

Vigenere cipher. The canonical data in problem-specifications still uses the old nested v2 test format, so run_test.v flattens it.

One self-contained commit that touches nothing outside the exercise, so it can be merged on its own.

Verification

  • bin/verify-exercises-in-docker (the current vlang-test-runner image, V 0.4.8): pass, 12/12 tests.
  • V 0.5.2, the version vlang/setup-v installs for bin/test in CI: pass.
  • configlet lint passes; v fmt -l and v vet are clean on the new files.

For the merge commit

Not needed: a brand new exercise does not change the outcome of any existing exercise's tests.

Vigenere cipher. The example turns the key into a repeating sequence of shifts and applies it to each letter of the input, wrapping around the alphabet. The canonical data in problem-specifications still uses the old nested v2 test format, so run_test.v flattens it.

Registers the exercise in config.json. Verified with bin/verify-exercises-in-docker
(the current test runner image) and with V 0.5.2 for bin/test. configlet lint passes,
and v fmt -l / v vet are clean on the new files.
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.

1 participant