Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Spec: add more commonpractices

Aperta
#477 0 commenti 0 reazioni 1 assegnatario Vedi su GitHub

@practicalli-johnny ci sta già lavorando.

Dal 12/9/2025.

Valutazione

Questa issue non è ancora stata valutata.

Descrizione

Update Practicalli Clojure spec section to include more common practices, especially in organising specs and Generative tests
https://practical.li/clojure/clojure-spec/organising-specs/

Commercial experiences

  • Statsbomb (kafka)
  • Griffin (db abstraction & generative testing)
  • Billie (web)

Community

https://clojurians.slack.com/archives/C1B1BB2Q3/p1757527317316049?thread_ts=1757523204.900519&cid=C1B1BB2Q3

Where do you put the specs?
For domain, I prefer one or more namespaces dedicated to this (consider two layers - one for types, one for attributes) and included via :as-alias
For functions, in a foo.specs namespace
How do you validate the domain constructs? Via pre-/postconditions, within the functions via s/valid?, with s/fdefs and instrumentation or with custom validators?
s/valid? for data validation from public inputs
s/fdef / instrumentation for tests of functions
How do you report spec failures? Just the error or with explain or expound?
for internal stuff, probably s/explain
for public stuff, consider expound or custom
Do you validate at dev-time only or also in production?
for user-side inputs, production
for catching your own programming errors, dev-time only
What libs/tools do you use other than plain spec?
test.chuck

Lingua principale
Makefile
Stelle
117
Fork
36
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di practicalli/clojure

Tutte le issue di practicalli/clojure

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.