Fork me on GitHub
#clojure-italy
<
2019-10-07
>
Lu06:10:32

:waving_black_flag:☠️

skuro07:10:32

@lucio a case of Mondays? 🙂

Lu07:10:32

@skuro tendeva più a: un’altra settimana piena di avventure 😆

alan08:10:50

Ciao uagliò!

🍳 4
andrea.crotti11:10:01

mistero del lunedi mattina

andrea.crotti11:10:05

Caused by: java.lang.IllegalArgumentException: Must assign primitive to primitive mutable: __hasheq
	at clojure.lang.Compiler$ObjExpr.emitAssignLocal(Compiler.java:5081)
	at clojure.lang.Compiler$LocalBindingExpr.emitAssign(Compiler.java:6074)
	at clojure.lang.Compiler$AssignExpr.emit(Compiler.java:616)
	at clojure.lang.Compiler$BodyExpr.emit(Compiler.java:6160)
	at clojure.lang.Compiler$BodyExpr.emit(Compiler.java:6157)
	at clojure.lang.Compiler$LetExpr.doEmit(Compiler.java:6519)
	at clojure.lang.Compiler$LetExpr.emit(Compiler.java:6469)
	at clojure.lang.Compiler$BodyExpr.emit(Compiler.java:6160)
	at clojure.lang.Compiler$IfExpr.doEmit(Compiler.java:2768)
	at clojure.lang.Compiler$IfExpr.emit(Compiler.java:2734)
	at clojure.lang.Compiler$BodyExpr.emit(Compiler.java:6160)
	at clojure.lang.Compiler$BodyExpr.emit(Compiler.java:6160)
	at clojure.lang.Compiler$LetExpr.doEmit(Compiler.java:6519)
	at clojure.lang.Compiler$LetExpr.emit(Compiler.java:6469)
	at clojure.lang.Compiler$BodyExpr.emit(Compiler.java:6160)
	at clojure.lang.Compiler$BodyExpr.emit(Compiler.java:6160)
	at clojure.lang.Compiler$ObjMethod.emitBody(Compiler.java:5860)
	at clojure.lang.Compiler$NewInstanceMethod.emit(Compiler.java:8615)
	at clojure.lang.Compiler$NewInstanceExpr.emitMethods(Compiler.java:8289)
	at clojure.lang.Compiler$ObjExpr.compile(Compiler.java:4580)
	at clojure.lang.Compiler$NewInstanceExpr.build(Compiler.java:8081)
	at clojure.lang.Compiler$NewInstanceExpr$DeftypeParser.parse(Compiler.java:7934)
	at clojure.lang.Compiler.analyzeSeq(Compiler.java:7106)

andrea.crotti11:10:42

per lo stesso identico commit, venerdi test coverage (con lein cloverage) funzionava, stamattina esplode (sia su CI che localmente)

andrea.crotti11:10:16

pensavamo che fosse un problema di un certo branch dato che master era verde, ma dopo aver fatto ri-girare i test per master, fallisce pure quello 😮

andrea.crotti11:10:56

mai visto rompersi da solo in questo modo senza nessnua modifica a deps o codice

reborg11:10:06

ma la dovete smettere di usare deftype con unsycn mutable, tanto vale usare Java no? 😬

andrea.crotti11:10:31

non facciamo niente di tutto cio' esplicitamente

andrea.crotti11:10:13

c'entra con questa macro probabilmente

(defmacro defpg [name args & sql-value-body]
  `(defrecord ~name ~args
     ;; tell clojure.java.jdbc how to convert this to something it knows how to write
     jdbc/ISQLValue
     (sql-value [~'this]
       ~@sql-value-body)

     ;; tell HoneySQL to pass this as-is
     fmt/ToSql
     (to-sql [~'this]
       (fmt/add-anon-param ~'this))))

andrea.crotti11:10:52

quello che fallisce e' alla fine qualcosa tipo

(deftype* finops-admin.db.postgres/enum finops_admin.db.postgres.enum [type value __meta __extmap __hash __hasheq] :implements [clojure.java.jdbc.ISQLValue...

andrea.crotti11:10:21

che non e' chiarissimo da cosa sia generato, ma soprattutto funzionava fino a 2 giorni fa

andrea.crotti11:10:30

sullo stesso identico commit in CI

andrea.crotti11:10:33

i tests passano comunque tutti, e' solo il coverage report che e' impazzito

reborg11:10:09

mmmh, mah, non ho molte idee

andrea.crotti11:10:43

eh boh dovre' fare un po' di hard core debugging

andrea.crotti11:10:46

beh incredibile penso di aver trovato, a quanto pare lein-cloverage aveva la versione settata a 1.1.0, cloverage non era settato in project.clj

andrea.crotti11:10:12

e da l'altro ieri ha deciso di aggiornare cloverage lasciando lein-cloverage su 1.1.0

andrea.crotti11:10:23

ho notato solo per il timestamp nelle dipendenze in .m2

andrea.crotti11:10:11

la spiegazione e' che e' uscita la 1.1.2 ieri https://clojars.org/cloverage/versions/1.1.2

andrea.crotti11:10:56

si ok sembra semplicemente un bug in 1.1.2

skuro12:10:51

per un attimo mi sono sentito in colpa, visto che c'ho messo del mio nella 1.1.2, poi ho visto che quello che ho fatto non c'entra una fava e mi sono sentito meglio con me stesso 🙂

andrea.crotti13:10:03

hehe si tranquillo

andrea.crotti13:10:09

deftype che esplode