Babeltrace 2.0.0 - Release Candidate 2
Pre-releaseHi everyone!
Two weeks after having released Babeltrace 2’s first release candidate, today we’re releasing Babeltrace 2.0.0-rc2.
What’s new since Babeltrace 2.0.0-rc1?
Improvements
- General
-
-
Introduce
BT_ASSERT_DBG()
for assertions that must only be evaluated in debugging mode (when theBABELTRACE_DEBUG_MODE
environment variable is set to1
at configuration time).BT_ASSERT()
assertions are now always evaluated, regardless of the debugging/production mode.This change’s purpose is to keep as many slow-path assertions as possible to detect more Babeltrace 2 programming errors, even in production.
See
98b15851
. -
Remove ABI versioning in Babeltrace 2 shared object plugins as we don’t need this property.
See
7c0244d6
. -
In libbabeltrace2’s API:
-
Rename
BT_RANGE_SET_
prefixes toBT_INTEGER_RANGE_SET_
.See
eb171ee9
. -
Make
bt_version_get_major()
,bt_version_get_minor()
, andbt_version_get_patch()
functions returnunsigned int
instead ofint
.See
78deb913
. -
Remove the
BT_GRAPH_RUN_STATUS_END
status code:bt_graph_run()
now returnsBT_GRAPH_RUN_STATUS_OK
when all the graph’s sink components are ended.See
9669d693
-
-
ctf
plugin-
Append error causes at more source locations.
This means more precise error messages reported by the
babeltrace2
CLI tool, for example. source.ctf.fs
component class-
Return an error when failing to load or create an index for a trace.
See
29a8227a
. filter.lttng-utils.debug-info
component class-
Create stream classes and event classes which correspond to stream classes and event classes in incoming trace classes as soon as we encounter a new trace class, rather than as needed.
See
db5d746d
. - Python bindings
-
In
bt2.Graph.add_component()
, validate that theparams
parameter is implicitly convertible to abt2.Mapvalue
object (dict
, for example).See
401b7022
.
Bug fixes
- General
- Fix many issues reported by static analysis tools (scan-build, Coverity, and compiler warnings).
source.ctf.fs
component class-
Fix an index handling bug which occured when multiple data stream files in a CTF trace belong to the same data stream.
See
ce75de14
. source.ctf.lttng-live
component class-
Fix a bug in which a disappearing LTTng live tracing session could lead to an assertion failure.
See
ba90bce7
. - Python bindings
-
Fix an assertion failure which occurs when a trace or trace class destruction listener raises an exception.
See
64961f8b
.
Upcoming
We are still hard at work putting the finishing touches on our way to the final 2.0.0 release.
We invite you to try this release candidate and report any problems you may encounter to the lttng-dev@lists.lttng.org
mailing list or through the Babeltrace bug tracker.
Documentation
We are currently documenting the entire Babeltrace 2 C API to make the development of new component classes as easy as possible.
We’ll also work on the Python bindings documentation.
The documentation of the API will be made available on the official Babeltrace website.
Other tasks
-
Improve test coverage.
-
Improve resilience to corrupted/malformed CTF traces.
-
Minor internal cleanups and bug fixes.
Important links
-
Mailing list for support and development:
lttng-dev@lists.lttng.org
-
IRC channel:
#lttng
onirc.oftc.net