clojure-italy 2020-08-19

Grande @andrea.crotti , salutami i Juxters. E buongiorno channel. Vacanze finite.

eh chissa' quando li vedro di persona 😄

forse quando mi danno il computer

Immagino faranno qualche hangout ogni tanto e non solo Slack

Il computer magari te lo spediscono 😄

ma no ha detto che possibile ci vediamo

@andrea.crotti mi sembrava che avessi parlato del problema in passato. Come potrei fare per fallire la build se sul codice non e’ stato usato (ad esempio) cljfmt

vorrei che il responsabile del fattaccio lo vedesse e verificasse il formatting con un nuovo push

Beh basta mettere il check in ci e far fallire il build

Che fa fallire la pr in teoria

Quindi per poter merge deve aggiustarlo

Assumendo che si accorge che la sua pr fallisce

Giusto, vedo che cljfmt ha un check mode

la nostra ocnfig e' una roba cosi

cljfmt:
    <<: *base_config
    docker:
      - image: *lein
    steps:
      - checkout
      - restore_cache:
          keys:
            - clj-deps-{{ checksum "project.clj" }}
      - run:
          name: cljfmt checks
          command: lein cljfmt check src/clj test/clj

in 2 o 3 progetti ho anche introdotto carve

se aggiungi codice non usato o non rimuovi qualcosa che e' diventato orfano fallisce

che secondo me e' un ottimo modo per evitare di accumulare codice inutile

Ma agisce solo sul diff? Anche noi con clj-kondo ho dovuto implementare una roba custom che rompe le balle solo sui nuovi problemi..

assume che hai risolto tutti i problemi esistenti

cosa che faccio io di solito con il primo commit che introduce il check

con cljfmt e' facile visto che basta fare in fix, con altri tools un po' meno ma se po fa

per carve basta mettere in .carveignore le cose che vuoi ignorare

grazie delle info

per iniziare il formatting, che e’ problema caldo, visto che gli Dei dello standard Clojure non concodano su tutto ed ogni editor esibisce un comportamento vagamente differente

eh si un po' una rottura di balle

non avere uno standard chiaro

ma penso che sia nell'ordine di priorita' dopo l'ultima per Rich & co

A tal proposito: https://nextjournal.com/a/MtktDgAwSXrNuwm9Qxf7q?token=3x19a2j9Fin4mWZLZCyziM Io ho implementato la nostra CI sulla nostra piattaforma (🐶 fooding) 😄

questo e' il notebook che usa clj-kondo solo sugli errori nuovi

bisogna fare una statua a borkdude cmq

per tutte le cose che sta rilasciando

Non uso niente di suo (non perche’ non sia un lavoro di qualita’ immagino). Che cosa mi sto perdendo?

principalmente direi babashka

Beh clj kondo, carve, babaksha, jet

E sci sono tutti ottimi progetti