lambdaisland / lambdaisland/kaocha
#kaocha/v2 wish list
Nobody has claimed this yet.
- Dominant language
- Clojure
- Stars
- 860
- Forks
- 81
- PR merge metrics
- No merged PRs in 30d
Description
The #kaocha/v1 reader tag does two things, it normalizes the test config, and it fills in various defaults.
Now that Kaocha is a bit more mature we can look back at some of the choices made early on, and maybe reconsider some of those defaults. By introducing a #kaocha/v2 we can provide different defaults for new users, while not changing the behavior of existing test suites using #kaocha/v1.
We are not yet sure if we'll add a /v2 or when we would do it, but I do have some ideas of what I would want to do with it, maybe others do too, so this is a wishlist issue where we can collect those ideas.
The general idea I think is to make all the "smart" features that actually end up confusing people opt-in. The documentation would show a default config that has these features turned on, so you still get the rich kaocha experience, but it would be explicit, so people can make a choice if they want these things, and are made aware that they exist.
:capture-output?-> currently defaults totrue, change that tofalse:test-ns-patterns-> currently set to#"-test", change it to match all namespaces (see #60)::skip-add-classpath?-> stop adding test directories to the classpath at runtime, it's too flaky and can interact badly with other tools. Just let people manage their own classpath throughdeps.ednor whatever they are using
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the #kaocha/v1 reader tag and its config normalization and default handling. Review the three proposed defaults and the related discussion in #60 before deciding whether a v2 is wanted. Done means an agreed v2 scope and explicit defaults, rather than implementing this unresolved wishlist.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- clojure
- Domain
- testing, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100