7 * Share operations between event size computation and event
8 serialization to avoid buffer overflow.
9 * Do not sample clock when closing and opening packets when this is
10 done because the current event does not fit the current packet. This
11 avoids a packet's first event having a timestamp that is less than
12 the packet's beginning timestamp.
18 * Add tracing activity and tracing section API to check whether or not
19 the traced thread is currently within a barectf tracing function and
20 to enable or disable tracing.
24 * Add tox configuration.
28 * Fix various testing infrastructure issues.
29 * Fix generated `bitfield.h` big-endian macros.
34 **Minor improvements**:
36 * barectf now generates ANSI C code.
37 * The generated code can be compiled with a C++ compiler.
41 * barectf claims to generate ANSI C code.
42 * Reword some paragraphs.
49 * Add `$default` boolean property to stream objects, and
50 `$default-stream` string property to the metadata object, to specify
51 a _default stream_: when a default stream exists, tracing function
52 aliases without the default stream name (`barectf_trace_my_event()`,
53 for example) are also generated
54 * Add `options` property to the configuration object, with:
55 * `gen-prefix-def`: true to generate a preprocessor definition
56 (`#define`) in `barectf.h` for the effective prefix
57 * `gen-default-stream-def`: true to generate a preprocessor
58 definition for the default stream name, if any
59 * Create `barectf-tracepoint.h`, a bridging C header file that
60 allows LTTng-UST tracepoints to be used as is with barectf by
61 providing the same `tracepoint()` macro
65 * Test the new `$default` (stream object), `$default-stream` (metadata
66 object), and `options` (configuration object) properties
70 * Add instructions for installing barectf on Arch Linux using the AUR
71 * Add instructions for installing barectf on Ubuntu using a PPA
76 **Minor improvements**:
78 * Override default metadata `env` entries with user entries instead of
80 * Statically align and compute the size of event fields when possible
81 for the `_get_event_size_*()` functions when possible
85 * Do not write event's `stream_id` or stream's `id` when the trace
86 packet header type has no `stream_id` field.
90 * Add config test for multiple streams, no `stream_id` field in packet
95 * Indicate how to install the command's man page
100 **Minor improvements**:
102 * Allow no or empty event payload type, as long as the event is not
103 empty itself (contains at least one field in its 4 entities)
107 * Remove no/empty event payload type config tests
108 * Add config test for empty event
113 * Add Community section
120 * Inherit from appropriate unsigned integer type aliases in
121 `stdint.yaml` for self-aligned, signed integer type aliases
128 * Force clock offset object properties to their default values when
133 * Update Babeltrace's URL
134 * Add `--python=python3` option to virtualenv line in the
142 * Add `$include` property to metadata, clock, trace, stream, and
143 event objects to [include external YAML files](https://github.com/efficios/barectf/wiki/Including-external-YAML-files)
144 * Object properties which have a default value can force it
145 with `null`; this is especially useful when also using type
146 inheritance or including external YAML files
150 * Fix a few error messages
151 * Use appropriate prefix for event context type parameters in
153 * `_write_cstring()`: use prefix
154 * Enumeration type object: start from current last value when
155 adding label-only members to parent object
156 * Check the size of the `id` (event header) and `stream_id`
157 (packet header) to make sure they can fit all events/streams
158 * Reduce the number of compiler warnings when using `-Wall` and
160 * Make sure all entity types are structure types
161 * Make sure all enumeration type object member values fit within
162 the enumeration's value type
163 * Check for unknown properties in enumeration type object
164 * Check for unknown properties in floating point number size object
165 * Check for unknown `base` values in integer type object
166 * Check the type of the `byte-order` property in trace object
167 * Check the signedness of the `uuid` field's element type in the
168 trace packet header type
169 * Check for unknown properties in configuration object
170 * Check node type before checking its properties
171 * Use unions to write floating point numbers to avoid aliasing warnings
175 * Add configuration file tests
180 * Add C99 compliance limitation
181 * Move documentation to the project's wiki
189 * Fix Arch Linux installation command line
196 * Fix various bugs in the Parallella platform
203 Major changes from barectf 0.x:
205 * Single YAML configuration input
206 * TSDL metadata is generated by barectf instead of being consumed
207 * Introduction of platforms to handle buffers automatically with
208 custom callbacks and to allow continuous tracing
209 * Various optimizations in the generated C code