This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-07-21
Channels
- # admin-announcements (4)
- # beginners (41)
- # boot (46)
- # cider (8)
- # clojure (132)
- # clojure-austin (15)
- # clojure-belgium (3)
- # clojure-greece (3)
- # clojure-hk (1)
- # clojure-mexico (4)
- # clojure-quebec (5)
- # clojure-russia (46)
- # clojure-spec (225)
- # clojure-taiwan (1)
- # clojure-uk (17)
- # clojurescript (46)
- # clojurewerkz (1)
- # core-async (28)
- # cursive (9)
- # datascript (3)
- # datomic (5)
- # defnpodcast (42)
- # devcards (60)
- # emacs (27)
- # hoplon (7)
- # lein-figwheel (5)
- # leiningen (12)
- # mount (8)
- # om (13)
- # play-clj (2)
- # reagent (47)
- # rethinkdb (5)
- # ring-swagger (7)
- # spacemacs (9)
- # specter (12)
- # testing (1)
- # untangled (1)
- # vim (11)
- # yada (31)
угу, так работает. Мне кажется тут именно специфика is, ибо
@(p/then (p/promise 42) (fn[_](throw (Exception. "a")))) ;; throws
@(p/then (p/promise 42) (fn [_] (is (= 2 1)))) ;; passes
ой, перечитал что ты написал, вот это тоже не работает:
(p/catch (p/then (p/promise 42) (fn[_](is (= 2 1))))
(fn[e](print "Error" e)))
@nicola: а на тему применения-понимания Om Next еще не было трансляции, или я пропустил? Пока в копилке только рассказ @piranha https://youtu.be/KxZGeD2ugOw?t=3820
Мой список закладок по теме Om Next: https://anmonteiro.com/2016/01/om-next-query-syntax/ https://circleci.com/blog/why-we-use-om-and-why-were-excited-for-om-next/ https://github.com/madvas/cljs-react-material-ui-example https://github.com/madvas/todomvc-omnext-datomic-datascript https://github.com/codebeige/om-next-dataflow https://github.com/arohner/foam https://github.com/madvas/re-natal https://awkay.github.io/om-tutorial/
@comerc: ты не смотрел кста враппер над ом-некст? не могу вспомнить название, но вроде от awkay как раз
@artemyarulin: т.к. Om Next сам себе уже враппер, то загуглить - непростая задача :)
Но добавил еще в закладки: https://github.com/artemyarulin/ktoa https://github.com/anmonteiro/compassus https://github.com/bnomis/om-next-datascript-localisation-demo
эх не могу вспомнить название, может и не awkay...
@comerc: давайте сделаем! Только кто за него замолвит? На крайняк давайте Нолана звать.
давайте про Om.Next после 7 августа поговорим, а?) обсудить было бы очень интересно, но тут у меня видеосвязи ближайшие две недели не будет) @nicola @comerc
кстати, если звать кого-то из англоговорящих, то Эрик Норманд (https://github.com/ericnormand) готов поучаствовать в нашем хэнгауте, надо только договориться о времени @nicola
Разобрался с promesa, проблема сводится к тому что ошибки не репортятся даже при (.start (Thread. (fn [] (is false))))
.
Все сводится к функции clojure.test/report которая разворачивается в
(let* []
(clojure.core/push-thread-bindings
(clojure.core/hash-map (var clojure.core/*out*) clojure.test/*test-out*))
(try
(clojure.core/println "\nFAIL in")
(finally (clojure.core/pop-thread-bindings))))
При нормальной работе
>clojure.test/test-out
#object[java.io.PrintWriter 0x6211eb86 [email protected]]
с другого треда
>clojure.test/test-out
#object[java.io.OutputStreamWriter 0x67eee9ec [email protected]]Уточнение - out не причем, ошибки собираются с inc-report-counter, но сути не меняет. Ассерты не работаю если в другом треде, как так ащще
Все - перестаю спамить, последнее: Ассерты работают и из других тредов, надо просто dynamic environment со всеми dynamic переменными перенести в новый тред. Core.async это делает и все там работает, promesa нет, поэтому не работает. Детали кому интересно в https://github.com/funcool/promesa/issues/25
@a.espolov: А во, вроде оно ага. Я правда хз как оно в реальности но вроде как абстрагирует от некоторых сложностей ома
@artemyarulin: правда lein template так и не работает с марта, только из todomvc свое приложение собирать
@nicola: а в route-map нельзя матчить что-то в параметрах? Типа если через двоеточие что-то?
тут вроде грили - но я первый раз попробовал. Можно держать сразу 2 репла, CLJS и CLJ и если есть один файл CLJC то можно евалить его функции в нужном репле переключаясь с clojurescript-mode
<> clojure-mode
Ну иногда когда CLJC пишу то как раз этого и хочется - запустить тест на одном репле, потом на другом
@asolovyov: я вобще думал его с clojure.spec интегрировать - если предикат отработал будет матчить
ну у меня есть урл /something/id1:id2/ и я хочу его отдельно заматчить от кейса, когда /something/id3/ :))
@asolovyov: @prepor хвалил herbert, может оно умеет такое https://www.youtube.com/watch?v=YaAWhOhy6FI&feature=youtu.be&t=3128
@nicola: в джанге просто регекспами это сделано, а что делать в нормальной ситуации - я хз:)
{[fn] branch} - если функция вернула hash-map - значит заматчилась и мы его мерджим в params?
Ты сможешь с дева потестить, если все ок я опубликую - https://github.com/niquola/route-map#functional-params
Привет! Я разбираюсь с clojure окружением, в частности с cider, lein, mount. Есть профиль dev со своим конфигом, этот профиль загружается в repl. Есть профиль test с другим конфигом, который запускается на ci. В конфиге, например, разные настройки базы данных. Когда я работаю в emacs, я хочу запускать тесты через cider в repl, но тут уже запущено приложение через mount с настройками dev. Я весь день гуглил, и из полезного нашел документацию по mount, статью про компоненты в блоге @yogthos, boot pods и yurt. Но все равно не понимаю как это все вместе связать: cider, repl, profile, mount. Подскажите каков ваш workflow, может есть примеры проектов, какие-то статьи. Собственно натолкнулся на это после просмотра хэнгаутса clj tools, за что спасибо))