Notes de relâche du troisième candidat de relâche
[babeltrace.git] / rc3.adoc
CommitLineData
59cc6e66
SM
1// Render with Asciidoctor
2
3= Babeltrace 2.0.0-rc3 release notes
4Jérémie Galarneau, Simon Marchi, Philippe Proulx
515 November 2019
6:toc:
7:toclevels: 5
8:bt2: Babeltrace{nbsp}2
9
10
11Hi everyone!
12
13Two weeks after
14https://diamon.org/babeltrace/docs/release-notes/babeltrace-2.0.0-rc2-release-notes.html[having released]
15{bt2}'s second release candidate,
16today we're releasing Babeltrace{nbsp}2.0.0-rc3.
17
18== What's new since Babeltrace{nbsp}2.0.0-rc2?
19
20=== Improvements
21
22General::
23+
24--
25* Introduce the `BABELTRACE_EXEC_ON_ABORT` environment variable.
26 `BABELTRACE_EXEC_ON_ABORT` can contain a shell command line to execute when
27 any part of the Babeltrace project aborts (for example, when an internal
28 assertion fails) before the process exits.
29+
30See https://github.com/efficios/babeltrace/commit/8403432f[`8403432f`].
31
32* Add precondition assertions to verify that the current ihread has no error
33 when you call a libbabeltrace2 function (except reference count functions).
34+
35See https://github.com/efficios/babeltrace/commit/7c7324d3[`7c7324d3`].
36
37* Add postcondition assertions to verify that the user functions which
38 libbabeltrace2 calls return an error status code when the current thread has
39 an error.
40+
41See https://github.com/efficios/babeltrace/commit/d6f6a5aa[`d6f6a5aa`].
42
43* Emit dedicated bright terminal color codes if supported by the terminal
44 emulator.
45+
46This makes the
47https://diamon.org/babeltrace/docs/v2.0/man1/babeltrace2.1/[`babeltrace2`] CLI
48tool and some project plugins emit correct bright color codes for the kitty
49terminal emulator, for example.
50+
51You can override this behaviour with the new
52`BABELTRACE_TERM_COLOR_BRIGHT_MEANS_BOLD` environment variable.
53+
54See https://github.com/efficios/babeltrace/commit/4253e1eb[`4253e1eb`].
55
56* In libbabeltrace2's API: make the `bt_value_map_foreach_entry_func`
57 and `bt_value_map_foreach_entry_const_func` function types return a
58 status code instead of `bt_bool`.
59+
60This makes it possible for the user function to append a cause to the
61current thread's error and return an error status code. When the user
62function returns a general error status code,
63`bt_value_map_foreach_entry()` returns
64`BT_VALUE_MAP_FOREACH_ENTRY_STATUS_USER_ERROR` (and an equivalent code
65for `bt_value_map_foreach_entry_const()`).
66+
67The new way to interrupt the outer loop from the user function is to
68return `BT_VALUE_MAP_FOREACH_ENTRY_FUNC_STATUS_INTERRUPT`.
69--
70
71Command-line interface::
72+
73--
74* Exit with status{nbsp}2 when the process receives the `SIGINT` signal.
75+
76This makes it possible to distinguish a successful execution (status{nbsp}0)
77from an execution that ends because of an error (status{nbsp}1).
78+
79See https://github.com/efficios/babeltrace/commit/851802b1[`851802b1`].
80--
81
82`source.ctf.fs` component class::
83+
84--
85* Check the version of https://lttng.org/[LTTng] index files to avoid reading
86 files of future backwards-incompatible versions.
87+
88See https://github.com/efficios/babeltrace/commit/2068d50b[`2068d50b`].
89+
90* Handle reading overlapping snapshots of the same trace. Even if some
91 packets are present in multiple snapshots, they will only be read once.
92+
93See https://github.com/efficios/babeltrace/commit/FIXME[`FIXME`].
94--
95
96`source.ctf.lttng-live` component class::
97+
98--
99* Better handle signal interruptions during I/O syscalls.
100+
101Return `BT_COMPONENT_CLASS_MESSAGE_ITERATOR_NEXT_METHOD_STATUS_AGAIN` when I/O
102syscalls are interrupted by a `SIGINT` signal and restart the syscall on other
103signals.
104+
105See https://github.com/efficios/babeltrace/commit/f79c2d7a[`f79c2d7a`].
106--
107
108`filter.utils.muxer` component class::
109+
110--
111* Append error causes when encountering some error conditions.
112+
113See See https://github.com/efficios/babeltrace/commit/FIXME[`FIXME`].
114--
115
116=== Bug fixes
117
118Simple sink component class::
119+
120--
121* Append error causes only when returning an error status code.
122+
123See https://github.com/efficios/babeltrace/commit/eb657c7b[`eb657c7b`].
124--
125
126== Upcoming
127
128We are still hard at work putting the finishing touches on our way to
129the final 2.0.0 release.
130
131We invite you to try this release candidate and report any problems you
132may encounter to the
133https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev[`lttng-dev@lists.lttng.org`]
134mailing list or through the
135https://bugs.lttng.org/projects/babeltrace[Babeltrace bug tracker].
136
137
138=== Documentation
139
140We are currently documenting the entire {bt2}{nbsp}C{nbsp}API to make
141the development of new component classes as easy as possible.
142
143We'll also work on the Python bindings documentation.
144
145The documentation of the API will be made available on the official
146https://diamon.org/babeltrace/[Babeltrace website].
147
148
149=== Other tasks
150
151* Improve test coverage.
152* Improve resilience to corrupted/malformed CTF traces.
153* Minor internal cleanups and bug fixes.
154
155
156== Important links
157
158* https://www.efficios.com/files/babeltrace/babeltrace-2.0.0-rc3.tar.bz2[Babeltrace 2.0.0-rc3 tarball]
159* https://diamon.org/babeltrace[Babeltrace website]
160* https://lists.lttng.org[Mailing list] for support and
161 development: `lttng-dev@lists.lttng.org`
162 * irc://irc.oftc.net/lttng[IRC channel]: `#lttng` on `irc.oftc.net`
163 * https://bugs.lttng.org/projects/babeltrace[Git repository]
164 * https://github.com/efficios/babeltrace[GitHub project]
165 * https://ci.lttng.org/view/Babeltrace/[Continuous integration]
166 * https://review.lttng.org/q/project:babeltrace[Code review]
This page took 0.02779 seconds and 4 git commands to generate.