Peter Taoussanis
5a8c407528
[new] Add :ctx+, :middleware+ signal options
2024-10-29 10:02:12 +01:00
Peter Taoussanis
c1e1c1e4cc
[new] OpenTelemetry handler: try print map vals as EDN
2024-10-29 10:02:12 +01:00
Peter Taoussanis
5ef4f12c6e
[new] [ #28 ] OpenTelemetry handler: support custom signal attrs
...
Thanks to @benalbrecht for assistance on this feature!
2024-10-29 10:02:12 +01:00
Peter Taoussanis
19548d3fac
[new] Simplify default OpenTelemetry providers code, expose SDK
2024-10-29 10:02:12 +01:00
Peter Taoussanis
5ac872566a
[new] Add dispatch-signal! util
2024-10-29 10:02:12 +01:00
Peter Taoussanis
9965450f5b
[new] writeable-file!: resolve sym links, etc.
2024-10-29 10:02:12 +01:00
Peter Taoussanis
d0ad99d528
[new] Extend IIFE-wrap to Clj
...
The perf hit is negligible, and we can always re-evaluate this choice again
later. In the meantime, let's err on the side of greatest compatibility.
2024-10-29 10:02:12 +01:00
Peter Taoussanis
f7a56631c5
[fix] signal-opts: allow map forms as intended
2024-10-29 10:02:12 +01:00
Peter Taoussanis
7f52cb1843
[fix] uncaught->error! wasn't working (@benalbrecht)
...
`__thread` handler arg was being masked by `__thread` in signal implementation,
Ref. https://clojurians.slack.com/archives/C06ALA6EEUA/p1727713025725089
2024-10-29 10:02:12 +01:00
Peter Taoussanis
ecf4824f6b
[nop] Bump deps
2024-10-29 09:48:36 +01:00
Peter Taoussanis
980439c646
v1.0.0-SNAPSHOT
2024-09-25 09:21:05 +02:00
Peter Taoussanis
0a3e3e80c6
v1.0.0-beta25 (2024-09-25)
2024-09-25 09:14:48 +02:00
Peter Taoussanis
ce9864a57b
v1.0.0-SNAPSHOT
2024-09-23 09:23:22 +02:00
Peter Taoussanis
262c6d4324
v1.0.0-beta24 (2024-09-23)
2024-09-23 09:17:49 +02:00
Peter Taoussanis
88f7a3c7d6
[fix] Don't count non-list run forms
2024-09-23 09:14:29 +02:00
Peter Taoussanis
69df7aa86d
v1.0.0-SNAPSHOT
2024-09-22 12:30:14 +02:00
Peter Taoussanis
7e348465ac
v1.0.0-beta23 (2024-09-22)
2024-09-22 12:20:14 +02:00
Peter Taoussanis
85772f7335
[new] Cap length of displayed run-form when tracing
2024-09-22 10:38:10 +02:00
Peter Taoussanis
c9e84e8b38
[new] Avoid duplicated trace bodies
...
Trade off a small performance hit with tracing to avoid duplication
of potentially large expansions, and to help further eliminate potential
issues when embedding within IOT-style macros (`core.async/go`, etc.)
2024-09-20 22:55:12 +02:00
Peter Taoussanis
cbab57be66
[fix] [ #21 ] Work around issue with use in Cljs core.async/go bodies
...
Problem:
(clojure.core.async/go (taoensso.telemere/log! "hello")) ; Compiles fine
(cljs.core.async/go (taoensso.telemere/log! "hello")) ; Compile fails
I could try to get to the bottom of exactly what's going on - but ultimately
IOC mechanisms like `go` are always going to be a bit fragile, especially for
heavily-optimized/unusual code.
In this case, the problem is thankfully only with Cljs - and Telemere's Cljs
performance isn't too critical - so I think we can afford to just bypass any
potential fiddling by the `go` macro by wrapping Cljs Telemere expansions in
an IIFE ((fn [] ...)).
Downside is the (small) added cost of a function construction and call.
Upside is avoiding potential issues with core.async and other similar
IOC-style systems (Electric Clojure, etc.)
2024-09-20 22:55:12 +02:00
Peter Taoussanis
568906c96b
[fix] [ #20 ] Wrong :arglists meta on spy!
2024-09-20 22:55:12 +02:00
Peter Taoussanis
d9c3583631
[new] Add :rate-limit-by option to all signal creators
...
When present, will cause limits to be per [expansion, by-value]
2024-09-20 22:55:12 +02:00
Peter Taoussanis
f703630914
[mod] Update pr-signal-fn to use clean-signal-fn
2024-09-20 22:55:12 +02:00
Peter Taoussanis
be55f44a87
[new] Add clean-signal-fn util
2024-09-20 22:55:12 +02:00
Peter Taoussanis
d12b0b145b
[new] Add signal-allowed? util
...
Useful for using Telemere's filtering features without generating
any signals, etc.
2024-09-20 22:55:12 +02:00
Peter Taoussanis
a9005e7f1c
[mod] Rename taoensso.telemere.api -> taoensso.telemere.shell
2024-09-20 22:55:12 +02:00
Peter Taoussanis
965c2277fd
[new] Allow compile-time config of uid kind
2024-09-20 22:55:12 +02:00
Peter Taoussanis
a09c628f23
[nop] Signal fields: revert to initial behaviour
...
Seems issue with "Electric Clojure" might not be on Telemere's side.
2024-09-20 22:55:12 +02:00
Peter Taoussanis
9b24b54215
[fix] Signal fields: define same fields regardless of platform
...
Attempted fix for possible issue with "Electric Clojure"
2024-09-20 22:55:12 +02:00
Peter Taoussanis
92a7aee530
[fix] Signal fields: define based on target (not macro) platform
...
Attempted fix for possible issue with "Electric Clojure"
2024-09-20 22:55:12 +02:00
Peter Taoussanis
f52a04b4dc
[fix] [ #18 ] Support {:uid :auto} for non-tracing signal creators
2024-09-20 22:55:12 +02:00
Peter Taoussanis
974df3e152
[doc] Drop suggested edn suffixes from env config
2024-09-20 22:55:12 +02:00
Peter Taoussanis
e4a0a41a1b
[doc] Misc improvements
2024-09-20 22:55:12 +02:00
Peter Taoussanis
f9564b2fc5
[nop] Misc improvements
2024-09-20 09:37:28 +02:00
Peter Taoussanis
7e8f692b93
v1.0.0-SNAPSHOT
2024-08-28 18:43:36 +02:00
Peter Taoussanis
97f0eb5efd
v1.0.0-beta22 (2024-08-28)
2024-08-28 18:35:25 +02:00
Peter Taoussanis
77ed27cfd1
[mod] Move dep: com.taoensso/slf4j-telemere -> com.taoensso/telemere-slf4j
2024-08-28 18:26:52 +02:00
Peter Taoussanis
ece51b2ef6
[new] Add experimental facade API for lib authors, etc.
2024-08-28 18:26:52 +02:00
Peter Taoussanis
0f09b797ed
[fix] More robust mechanism for retaining nested macro callsite info
2024-08-28 16:54:57 +02:00
Peter Taoussanis
0e4942e99c
[fix] :line unit tests
2024-08-28 16:54:55 +02:00
Peter Taoussanis
19cd1af3a4
[nop] Restructure repo
2024-08-28 16:53:31 +02:00
Peter Taoussanis
824ebc7802
[doc] Update docs and examples
2024-08-28 09:17:33 +02:00
Peter Taoussanis
96cc9e51f4
[nop] Misc housekeeping
2024-08-27 14:36:32 +02:00
Peter Taoussanis
3388103acf
v1.0.0-SNAPSHOT
2024-08-26 22:14:56 +02:00
Peter Taoussanis
6032d2405e
v1.0.0-beta21 (2024-08-26)
2024-08-26 13:19:43 +02:00
Peter Taoussanis
3068ccf8d7
[new] Simplify signal expansion
2024-08-26 13:13:33 +02:00
Peter Taoussanis
bbfe61106c
[new] Add basic "full" bench numbers (to handled signals)
2024-08-26 13:13:33 +02:00
Peter Taoussanis
b4b06f324b
[nop] Micro-optimize binding conveyance
...
Avoid repeatedly capturing the same callsite binding frame for each registered
handler. While the perf benefit of this change is minimal, the approach is also
conceptually cleaner.
2024-08-26 13:13:33 +02:00
Peter Taoussanis
8066776a80
[doc] Update docs and examples
2024-08-26 09:57:29 +02:00
Peter Taoussanis
54129e91a0
[nop] Misc housekeeping
2024-08-24 11:14:50 +02:00