Size: a a a

Clojure — русскоговорящее сообщество

2021 February 04

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
разве что в raven с DSN поприседал
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
может, сменилась апиха, посмотри в доках или на сайте сентри
источник

NA

Nikolay Artamonov in Clojure — русскоговорящее сообщество
я заметил что у джавовой либы версия sentry "4.1.0" а sentry-clj использует "3.2.1". В raven вижу старый api endpoint. Changelog сходу не нашелся
источник

IK

Ivan Kuznetsov in Clojure — русскоговорящее сообщество
Nikolay Artamonov
Попробовал библиотеку sentry-clj
  (sentry/init! DSN {:environment "staging" :debug true})
 (sentry/send-event {:message "Hello Sentry"})

В логах вижу
ERROR: Request failed, API returned 400
ERROR: {"detail":"invalid event envelope","causes":["invalid item header","EOF while parsing an object at line 1 column 49"]}

Может у кого то эта либа работает и проблема какая то моя локальная?
Я проверил этот код на чистом проекте, всё работает. Может зависимости поломаны у тебя.
источник

IK

Ivan Kuznetsov in Clojure — русскоговорящее сообщество
Работает с новым и старым DSN.
источник

NA

Nikolay Artamonov in Clojure — русскоговорящее сообщество
Ivan Kuznetsov
Я проверил этот код на чистом проекте, всё работает. Может зависимости поломаны у тебя.
Чистый проект это сейчас собрали с последней версией?
источник

IK

Ivan Kuznetsov in Clojure — русскоговорящее сообщество
Это голый deps.edn с одной зависимостью — последней версией sentry-clj.
источник

IK

Ivan Kuznetsov in Clojure — русскоговорящее сообщество
В больших проектах бывает, что непрямые зависимости конфликтуют, и что-то ломается внутренне.
источник

NA

Nikolay Artamonov in Clojure — русскоговорящее сообщество
Ivan Kuznetsov
Это голый deps.edn с одной зависимостью — последней версией sentry-clj.
Попробовал тоже голый проект - заработало, но как теперь выяснить в чем причина? Можно по отрубать половину зависимостей и смотреть какая повлияла, но что потом с этим делать?
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
надо бы исследовать lein deps --tree или как-то там
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
clj -Stree
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
найли либу, которая тащит свой сентри и указать для нее exlusions
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
https://clojure.org/reference/dep_expansion#_tree_printing
вот тут больше подробностей
источник

NA

Nikolay Artamonov in Clojure — русскоговорящее сообщество
Какой то странный результат у меня получился( В clj -Stree
Вижу только вот этот Sentry
io.sentry/sentry-clj 3.1.138
 . io.sentry/sentry 3.2.1
   . com.google.code.gson/gson 2.8.5
 . ring/ring-core 1.8.2
   . ring/ring-codec 1.1.2
     . commons-codec/commons-codec 1.11 :newer-version
   . commons-io/commons-io 2.6
   . commons-fileupload/commons-fileupload 1.4
     X commons-io/commons-io 2.2 :older-version
   . crypto-random/crypto-random 1.2.0
     X commons-codec/commons-codec 1.6 :older-version
   . crypto-equality/crypto-equality 1.0.0


Методом перебора отключал/бампал версии зависимостей  и в итоге получил результат - отправка заработала(УРА).
Но я не понимаю как вот это изменение cider/piggieback {:mvn/version "0.5.0"} => {:mvn/version "0.5.2"} могло ее "починить" ?
источник

IK

Ivan Kuznetsov in Clojure — русскоговорящее сообщество
В Leiningen есть флаг, который показывает конфликтующие зависимости. Не соображу сейчас подробностей. В общем виде оно так выглядит: sentry-clj использует стороннюю либу для работы с json, она уже установлена как зависимость другой зависимости, но версия её старая (или новая), и АПИ там слегка другой. sentry-clj вроде как-то работает с ней, но вылезают вот такие косяки.
источник

IK

Ivan Kuznetsov in Clojure — русскоговорящее сообщество
В Leiningen это через exclusions настраивается. Эта фича даёт тебе возможность исключать определенные зависимости, т. к. они уже установлены где-то.
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
lein deps :tree
источник

NA

Nikolay Artamonov in Clojure — русскоговорящее сообщество
Думаю эксклюдить уже не нужно раз это решилось обновлением версии
cider/piggieback 0.5.0
 . org.clojure/clojurescript 1.8.51
   . com.google.javascript/closure-compiler v20160315
     . com.google.javascript/closure-compiler-externs v20160315
     . args4j/args4j 2.0.26
     X com.google.guava/guava 19.0 :older-version
     X com.google.protobuf/protobuf-java 2.5.0 :older-version
     X com.google.code.gson/gson 2.2.4 :older-version
     X com.google.code.findbugs/jsr305 1.3.9 :older-version
   . org.clojure/google-closure-library 0.0-20151016-61277aea
     . org.clojure/google-closure-library-third-party 0.0-20151016-61277aea
   X org.clojure/data.json 0.2.6 :older-version
   . org.mozilla/rhino 1.7R5
   X org.clojure/tools.reader 1.0.0-beta1 :superseded
 . javax.xml.bind/jaxb-api 2.3.1 :newer-version
   . javax.activation/javax.activation-api 1.2.0
 . nrepl/nrepl 0.6.0

Вижу вот эти 2 разные версии com.google.code.gson/gson - возможно же что в этом была проблема?
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Nikolay Artamonov
Думаю эксклюдить уже не нужно раз это решилось обновлением версии
cider/piggieback 0.5.0
 . org.clojure/clojurescript 1.8.51
   . com.google.javascript/closure-compiler v20160315
     . com.google.javascript/closure-compiler-externs v20160315
     . args4j/args4j 2.0.26
     X com.google.guava/guava 19.0 :older-version
     X com.google.protobuf/protobuf-java 2.5.0 :older-version
     X com.google.code.gson/gson 2.2.4 :older-version
     X com.google.code.findbugs/jsr305 1.3.9 :older-version
   . org.clojure/google-closure-library 0.0-20151016-61277aea
     . org.clojure/google-closure-library-third-party 0.0-20151016-61277aea
   X org.clojure/data.json 0.2.6 :older-version
   . org.mozilla/rhino 1.7R5
   X org.clojure/tools.reader 1.0.0-beta1 :superseded
 . javax.xml.bind/jaxb-api 2.3.1 :newer-version
   . javax.activation/javax.activation-api 1.2.0
 . nrepl/nrepl 0.6.0

Вижу вот эти 2 разные версии com.google.code.gson/gson - возможно же что в этом была проблема?
lein deps :tree запусти он покажет конфликты и советы как поправить
источник

NA

Nikolay Artamonov in Clojure — русскоговорящее сообщество
Anton Chikin
lein deps :tree запусти он покажет конфликты и советы как поправить
у меня нет project.clj
источник