Skip to content

Commit 17dcde9

Browse files
committed
v1.0.0-RC2 (2024-12-24)
1 parent a04f255 commit 17dcde9

File tree

4 files changed

+177
-6
lines changed

4 files changed

+177
-6
lines changed

CHANGELOG.md

Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,177 @@ This project uses [**Break Versioning**](https://www.taoensso.com/break-versioni
22

33
---
44

5+
# `v1.0.0-RC2` (2024-12-24)
6+
7+
## 📦 Dependencies
8+
9+
Available on Clojars:
10+
11+
1. [Telemere](https://clojars.org/com.taoensso/telemere/versions/1.0.0-RC1) - main dependency.
12+
2. [SLF4J provider](https://clojars.org/com.taoensso/telemere-slf4j/versions/1.0.0-RC1) - additional dependency for users that want their Java logging [to go to](https://github.com/taoensso/telemere/wiki/3-Config#java-logging) Telemere.
13+
14+
This project uses [Break Versioning](https://www.taoensso.com/break-versioning).
15+
16+
## Release notes
17+
18+
RC2 includes many usability improvements and several minor fixes.
19+
20+
It also includes **3x small breaking changes** (indicated by ➤) that should not affect most users.
21+
22+
If no more unexpected issues come up, RC2 will become **v1 stable** in Jan 2025.
23+
24+
Big thanks to everyone that's been helping test and give feedback. And as always, please **report any unexpected problems** on [GitHub](https://github.com/taoensso/telemere/issues) or the [Slack channel](https://www.taoensso.com/telemere/slack) 🙏
25+
26+
Happy holidays everyone! 🎄🫶
27+
28+
\- [Peter Taoussanis](https://www.taoensso.com)
29+
30+
## Recent CHANGES
31+
32+
### Since `v1.0.0-RC1` (2024-10-29)
33+
34+
#### ➤ Changes to API
35+
36+
Please read these carefully in case you might be affected:
37+
38+
***\[mod]** [#39] Discontinued separate "shell" library \[096c432] (RC2)
39+
***\[mod]** Change return value of experimental [`with-signals`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#with-signals) \[cb6a5d9] (RC2)
40+
***\[mod]** Remove rarely-used advanced options from [`catch->error!`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#catch-%3Eerror!) \[0de5c09] (RC2)
41+
42+
#### Changes to default output
43+
44+
* **\[mod]** Remove "- " msg separator from default [preamble](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.utils#signal-preamble-fn) output \[d61f6c2] (RC2)
45+
* **\[mod]** [Postal handler](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.postal#handler:postal) now uses default preamble fn for email subject \[706a8b6] (RC2)
46+
* **\[mod]** Default [`signal-content-fn`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.utils#signal-content-fn): omit redundant parent/root id namespaces \[55323f1] (RC2)
47+
* **\[mod]** Default [`signal-content-fn`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.utils#signal-content-fn): swap `ctx`, `kvs` position \[b208532] (RC2)
48+
* **\[mod]** Default [`signal-content-fn`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.utils#signal-content-fn): omit `:root` if it's same as parent \[0464285] (RC2)
49+
* **\[mod]** Omit empty `:data`, `:ctx` from [signal content](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.utils#signal-content-fn) output \[d78663a] (RC2)
50+
51+
### Earlier
52+
53+
* \[mod] Update [`pr-signal-fn`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#pr-signal-fn) to use [`clean-signal-fn`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#clean-signal-fn) \[f70363091] (beta 23)
54+
* \[mod] Rename `taoensso.telemere.api` -> `taoensso.telemere.shell` \[a9005e7f1] (beta 23)
55+
* \[mod] Move dep: `com.taoensso/slf4j-telemere` -> [com.taoensso/telemere-slf4j](https://clojars.org/com.taoensso/telemere-slf4j) \[77ed27cfd] (beta 22)
56+
* \[mod] Generalize "intake", rename -> "interop" \[ef678bcc] (beta 20)
57+
* \[mod] Make `:host` output opt-in for default signal handlers \[88eb5211] (beta 20)
58+
* \[mod] [OpenTelemetry handler](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.open-telemetry#handler:open-telemetry): rename (generalize) \[064ef323] (beta 19)
59+
* \[mod] [OpenTelemetry handler](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.open-telemetry#handler:open-telemetry): revert #10 \[599236f4] (beta 18)
60+
* \[mod] Decrease level of :on-init signals \[4d2b5d46] (beta 18)
61+
* \[mod] Removed `*auto-stop-handlers?*` var (beta 15)
62+
* \[mod] Removed `:needs-stopping?` [handler dispatch opt](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#help:handler-dispatch-options) (beta 15)
63+
* \[mod] Cljs handlers MUST now include stop (0) arity (beta 15)
64+
* \[mod] Users MUST now **manually call** [`stop-handlers!`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#stop-handlers!) (beta 15)
65+
* \[mod] SLF4J and `tools.logging` signals now have a custom `:kind` and no `:id` (beta 14)
66+
* \[mod] Renamed `get-min-level` -> [`get-min-levels`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#get-min-levels) (beta 13)
67+
* \[mod] Renamed `shut-down-handlers!` -> [`stop-handlers!`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#stop-handlers!) (beta 13)
68+
* \[mod] Changed default **handler back-pressure** mechanism from `:dropping` to `:blocking` (eaiser for most users to understand and detect; override when calling [`add-handler!`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#add-handler!)) (beta 11)
69+
* \[mod] [`pr-signal-fn`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.utils#pr-signal-fn) now takes only a **single opts map** (beta 10)
70+
* \[mod] [User-level kvs](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#help:signal-options) are **no longer included by default** in handler output. `:incl-kvs?` option has been added to [`format-signal-fn`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.utils#format-signal-fn) and [`pr-signal-fn`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.utils#pr-signal-fn) (beta 7)
71+
* \[mod] Middleware must now be a **single fn**, use [`comp-middleware`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#comp-middleware) to create one fn from many (beta 7)
72+
* \[mod] [OpenTelemetry handler](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.open-telemetry#handler:open-telemetry) is **no longer auto added** (beta 1)
73+
* \[mod] Various API improvements to [included handlers](https://github.com/taoensso/telemere/wiki/4-Handlers#included-handlers) and [utils](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.utils)
74+
75+
## Recent additions
76+
77+
### Since `v1.0.0-RC1` (2024-10-29)
78+
79+
#### Misc improvements
80+
81+
* **\[new]** Add [`timbre->telemere`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.timbre#timbre->telemere-appender) appender and update docs \[ace6e2d] (RC2)
82+
* **\[new]** All signal creators can now take single opts map \[d2386d6] (RC2)
83+
* **\[new]** Add `& opts` support to [`signal!`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#signal!), [`signal-allowed?`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#signal-allowed?) \[a04f255] (RC2)
84+
* **\[new]** Give [`signal!`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#signal!) a default kind and level \[7532c2e] (RC2)
85+
* **\[new]** Better error message when [`signal!`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#signal!) given non-map arg \[d563ac1] (RC2)
86+
* **\[new]** Improve error info on worst-case handler errors \[484b3df] (RC2)
87+
* **\[new]** Allow manual `:run-val` override \[9dc883d] (RC2)
88+
* **\[new]** [#34] Add new [`signal-preamble-fn`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.utils#signal-preamble-fn) opts (@Knotschi) \[0822217] (RC2)
89+
* **\[new]** Alias low-level formatters in utils ns \[9dc9a46] (RC2)
90+
91+
#### Doc improvements
92+
93+
* **\[doc]** [#33] Add community examples link to [Bling Gist](https://gist.github.com/ptaoussanis/f8a80f85d3e0f89b307a470ce6e044b5) \[8cd4ca9] (RC2)
94+
* **\[doc]** Better document pattern of using [`trace!`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#trace!)/[`spy!`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#spy!) with [`catch->error!`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#catch-%3Eerror!) \[5c977a3] (RC2)
95+
* **\[doc]** [#35] Emphasize that [signal opts](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#help:signal-options) must be a compile-time map \[55720ac] (RC2)
96+
* **\[doc]** Add [FAQ item](https://github.com/taoensso/telemere/wiki/6-FAQ#why-the-unusual-arg-order-for-event) re: [`event!`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#event!) arg order \[822032d] (RC2)
97+
* **\[doc]** Document that `:msg` may be a delay \[13d9dbf] (RC2)
98+
99+
### Earlier
100+
101+
* \[new] Add `:ctx+`, `:middleware+` signal options \[5a8c407] (RC1)
102+
* \[new] OpenTelemetry handler: try print map vals as EDN \[c1e1c1e] (RC1)
103+
* \[new] [#28] OpenTelemetry handler: support custom signal attrs \[5ef4f12] (RC1)
104+
* \[new] Simplify default OpenTelemetry providers code, expose SDK \[19548d3] (RC1)
105+
* \[new] Add `dispatch-signal!` util \[5ac8725] (RC1)
106+
* \[new] `writeable-file!`: resolve sym links, etc. \[9965450] (RC1)
107+
* \[new] Extend IIFE-wrap to Clj \[d0ad99d] (RC1)
108+
* \[new] Numerous improvements to docs and examples (RC1)
109+
* \[new] Add `:rate-limit-by` option to all signal creators \[d9c358363] (beta 23)
110+
* \[new] Add `clean-signal-fn` util \[be55f44a8] (beta 23)
111+
* \[new] Add `signal-allowed?` util \[d12b0b145] (beta 23)
112+
* \[new] Allow compile-time config of uid kind \[965c2277f] (beta 23)
113+
* \[new] Avoid duplicated trace bodies \[c9e84e8b3] (beta 23)
114+
* \[new] Cap length of displayed run-form when tracing \[85772f733] (beta 23)
115+
* \[new] Added experimental [shell API](https://cljdoc.org/d/com.taoensso/telemere-shell/CURRENT/api/taoensso.telemere.api) for library authors \[ece51b2ef] (beta 22)
116+
* \[new] Auto stop existing handler when replacing it (beta 22)
117+
* \[new] Added `"(.*)"` wildcard syntax to kind/ns/id filters (beta 22)
118+
* \[new] Internal and doc improvements: \[8066776a8], \[b4b06f324], \[3068ccf8d] (beta 21)
119+
* \[new] OpenTelemetry handler: improve span interop \[84957c6d] (beta 20)
120+
* \[new] OpenTelemetry handler: add experimental trace output \[67cb4941] (beta 18)
121+
* \[new] Improve uid control, switch to nano-style by default \[5ab2736c] (beta 18)
122+
* \[new] Add host info to signal content \[1cef1957] (beta 18)
123+
* \[new] Add extra tracing info to signal content \[d635318f] (beta 18)
124+
* \[new] Ongoing [API](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere) and [wiki](https://github.com/taoensso/telemere/wiki) doc improvements (beta 15)
125+
* \[new] [#5] Added [comparison to Mulog](https://github.com/taoensso/telemere/wiki/6-FAQ#how-does-telemere-compare-to-mulog) (beta 15)
126+
* \[new] SLF4J and `tools.logging` signals now have a namespace (from logger name) (beta 14)
127+
* \[new] Added [`get-handlers-stats`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#get-handlers-stats) (beta 13)
128+
* \[new] [`add-handler!`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#add-handler!) can now specify per-handler `:drain-msecs` (beta 13)
129+
* \[new] Added [`*auto-stop-handlers?*`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#*auto-stop-handlers?*) (beta 13)
130+
* \[new] [`remove-handler!`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#remove-handler!) now auto stops relevant handlers after removal (beta 13)
131+
* \[new] [`with-handler`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#with-handler) and [`with-handler+`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#with-handler+) now auto stops relevant handlers after use (beta 12)
132+
* \[new] (Advanced) Handler fns can now include `:dispatch-opts` metadata, useful for handler authors that want to set defaults for use by [`add-handler!`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#add-handler!) (beta 8)
133+
* \[new] Added [Slack handler](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.slack#handler:slack) (beta 8)
134+
* \[new] Added [TCP](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.sockets#handler:tcp-socket) and [UDP](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.sockets#handler:udp-socket) socket handlers (beta 7)
135+
* \[new] Clj [signal content](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere#help:signal-content) now includes `:thread {:keys [group name id]}` key (beta 7)
136+
* \[new] Added [postal (email) handler](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.postal#handler:postal) (beta 5)
137+
* \[new] Handlers now block to try drain their signal queues on shutdown (beta 3)
138+
* \[new] Rate limiter performance improvements (via Encore) (beta 3)
139+
140+
## Recent fixes
141+
142+
### Since `v1.0.0-RC1` (2024-10-29)
143+
144+
* **\[fix]** Broken signal string representation \[8c701d4] (RC2)
145+
* **\[fix]** Trace formatting: always include root info \[f522307] (RC2)
146+
* **\[fix]** Trace formatting: properly format nil ids \[68a894e] (RC2)
147+
* **\[fix]** [#36] Fix missing cljdoc docstrings \[b58ec73] (RC2)
148+
149+
### Earlier
150+
151+
* \[fix] `signal-opts`: allow map forms as intended \[f7a5663] (RC1)
152+
* \[fix] `uncaught->error!` wasn't working (@benalbrecht) \[7f52cb1] (RC1)
153+
* \[fix] Regression affecting deprecated `rate-limiter*` (beta 25)
154+
* \[fix] Don't try count non-list tracing bodies \[88f7a3c7d] (beta 24)
155+
* \[fix] [#21] Work around issue with use in Cljs `core.async/go` bodies \[cbab57be6] (beta 23)
156+
* \[fix] [#20] Wrong :arglists meta on `spy!` \[568906c96] (beta 23)
157+
* \[fix] [#18] Support `{:uid :auto}` for non-tracing signal creators \[f52a04b4d] (beta 23)
158+
* \[fix] Runtime Clj env config now works correctly in uberjars (beta 23)
159+
* \[fix] Signal `:line` info missing for some wrapped-macro cases \[0f09b797e] (beta 22)
160+
* \[fix] OpenTelemetry handler: use signal callsite Context as root span parent \[a8e92303] (beta 19)
161+
* \[fix] [#16] OpenTelemetry handler: coerce line attrs (@flyingmachine) \[17349a08] (beta 19)
162+
* \[fix] Decrease min Java version (11->8) (@flyingmachine) \[a1c50f10] (beta 19)
163+
* \[fix] Broken handler ns and kind filters \[23194238] (beta 16)
164+
* \[fix] [#10] OpenTelemetry handler: render keywords as plain strings \[6e94215e] (beta 15)
165+
* \[fix] [#11] OpenTelemetry handler: signals without message fail \[863cea15] (beta 15)
166+
* \[fix] [#14] File handler: Don't truncate gzip output \[2d4b0497] (beta 15)
167+
* \[fix] Don't drop signals while draining async buffer during shutdown, add tests (via Encore) (beta 12, beta 13)
168+
* \[fix] [`pr-signal-fn`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.utils#pr-signal-fn) wasn't realizing delayed messages, add tests \[cf72017a] (beta 11)
169+
* \[fix] [`pr-signal-fn`](https://cljdoc.org/d/com.taoensso/telemere/CURRENT/api/taoensso.telemere.utils#pr-signal-fn) broken custom pr-fn support, add tests \[e7cce0c1] (beta 10)
170+
* \[fix] [#6] Missing root stack trace, add tests \[213c6470] (beta 9)
171+
* \[fix] Broken AOT support, add tests \[ffea1a30] (beta 1)
172+
* \[fix] SLF4J broken timestamps, add tests \[e222297a] (beta 1)
173+
174+
---
175+
5176
# `v1.0.0-RC1` (2024-10-29)
6177

7178
## 📦 Dependencies

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ See [here](../../wiki/1-Getting-started) for **full introduction** (concepts, te
2222

2323
## Latest release/s
2424

25-
- `2024-10-29` `v1.0.0-RC1`: [release info](../../releases/tag/v1.0.0-RC1)
25+
- `2024-12-24` `v1.0.0-RC2`: [release info](../../releases/tag/v1.0.0-RC2)
2626

2727
[![Main tests][Main tests SVG]][Main tests URL]
2828
[![Graal tests][Graal tests SVG]][Graal tests URL]

projects/main/project.clj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
(defproject com.taoensso/telemere "1.0.0-RC1"
1+
(defproject com.taoensso/telemere "1.0.0-RC2"
22
:author "Peter Taoussanis <https://www.taoensso.com>"
33
:description "Structured telemetry library for Clojure/Script"
44
:url "https://www.taoensso.com/telemere"
@@ -50,7 +50,7 @@
5050
[org.clojure/test.check "1.1.1"]
5151
[org.clojure/tools.logging "1.3.0"]
5252
[org.slf4j/slf4j-api "2.0.16"]
53-
[com.taoensso/telemere-slf4j "1.0.0-RC1"]
53+
[com.taoensso/telemere-slf4j "1.0.0-RC2"]
5454
#_[org.slf4j/slf4j-simple "2.0.16"]
5555
#_[org.slf4j/slf4j-nop "2.0.16"]
5656
#_[io.github.paintparty/bling "0.4.2"]
@@ -98,5 +98,5 @@
9898
"test-clj" ["with-profile" "+c1.12:+c1.11:+c1.10" "test"]
9999
"test-cljs" ["with-profile" "+c1.12" "cljsbuild" "test"]
100100

101-
"test-clj-ott-off" ["with-profile" "+ott-off" "test-clj"]
101+
"test-clj-ott-off" ["with-profile" "+ott-off" "test-clj"]
102102
"test-all" ["do" ["clean"] ["test-clj"] ["test-clj-ott-off"] ["test-cljs"]]})

projects/slf4j/project.clj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
(defproject com.taoensso/telemere-slf4j "1.0.0-RC1"
1+
(defproject com.taoensso/telemere-slf4j "1.0.0-RC2"
22
:author "Peter Taoussanis <https://www.taoensso.com>"
33
:description "Telemere backend/provider for SLF4J API v2"
44
:url "https://www.taoensso.com/telemere"
@@ -18,7 +18,7 @@
1818
{:dependencies
1919
[[org.clojure/clojure "1.12.0"]
2020
[org.slf4j/slf4j-api "2.0.16"]
21-
[com.taoensso/telemere "1.0.0-RC1"]]}
21+
[com.taoensso/telemere "1.0.0-RC2"]]}
2222

2323
:dev
2424
{:plugins

0 commit comments

Comments
 (0)