7 * Add tracing activity and tracing section API to check whether or not
8 the traced thread is currently within a barectf tracing function and
9 to enable or disable tracing.
13 * Add tox configuration.
17 * Fix various testing infrastructure issues.
18 * Fix generated `bitfield.h` big-endian macros.
23 **Minor improvements**:
25 * barectf now generates ANSI C code.
26 * The generated code can be compiled with a C++ compiler.
30 * barectf claims to generate ANSI C code.
31 * Reword some paragraphs.
38 * Add `$default` boolean property to stream objects, and
39 `$default-stream` string property to the metadata object, to specify
40 a _default stream_: when a default stream exists, tracing function
41 aliases without the default stream name (`barectf_trace_my_event()`,
42 for example) are also generated
43 * Add `options` property to the configuration object, with:
44 * `gen-prefix-def`: true to generate a preprocessor definition
45 (`#define`) in `barectf.h` for the effective prefix
46 * `gen-default-stream-def`: true to generate a preprocessor
47 definition for the default stream name, if any
48 * Create `barectf-tracepoint.h`, a bridging C header file that
49 allows LTTng-UST tracepoints to be used as is with barectf by
50 providing the same `tracepoint()` macro
54 * Test the new `$default` (stream object), `$default-stream` (metadata
55 object), and `options` (configuration object) properties
59 * Add instructions for installing barectf on Arch Linux using the AUR
60 * Add instructions for installing barectf on Ubuntu using a PPA
65 **Minor improvements**:
67 * Override default metadata `env` entries with user entries instead of
69 * Statically align and compute the size of event fields when possible
70 for the `_get_event_size_*()` functions when possible
74 * Do not write event's `stream_id` or stream's `id` when the trace
75 packet header type has no `stream_id` field.
79 * Add config test for multiple streams, no `stream_id` field in packet
84 * Indicate how to install the command's man page
89 **Minor improvements**:
91 * Allow no or empty event payload type, as long as the event is not
92 empty itself (contains at least one field in its 4 entities)
96 * Remove no/empty event payload type config tests
97 * Add config test for empty event
102 * Add Community section
109 * Inherit from appropriate unsigned integer type aliases in
110 `stdint.yaml` for self-aligned, signed integer type aliases
117 * Force clock offset object properties to their default values when
122 * Update Babeltrace's URL
123 * Add `--python=python3` option to virtualenv line in the
131 * Add `$include` property to metadata, clock, trace, stream, and
132 event objects to [include external YAML files](https://github.com/efficios/barectf/wiki/Including-external-YAML-files)
133 * Object properties which have a default value can force it
134 with `null`; this is especially useful when also using type
135 inheritance or including external YAML files
139 * Fix a few error messages
140 * Use appropriate prefix for event context type parameters in
142 * `_write_cstring()`: use prefix
143 * Enumeration type object: start from current last value when
144 adding label-only members to parent object
145 * Check the size of the `id` (event header) and `stream_id`
146 (packet header) to make sure they can fit all events/streams
147 * Reduce the number of compiler warnings when using `-Wall` and
149 * Make sure all entity types are structure types
150 * Make sure all enumeration type object member values fit within
151 the enumeration's value type
152 * Check for unknown properties in enumeration type object
153 * Check for unknown properties in floating point number size object
154 * Check for unknown `base` values in integer type object
155 * Check the type of the `byte-order` property in trace object
156 * Check the signedness of the `uuid` field's element type in the
157 trace packet header type
158 * Check for unknown properties in configuration object
159 * Check node type before checking its properties
160 * Use unions to write floating point numbers to avoid aliasing warnings
164 * Add configuration file tests
169 * Add C99 compliance limitation
170 * Move documentation to the project's wiki
178 * Fix Arch Linux installation command line
185 * Fix various bugs in the Parallella platform
192 Major changes from barectf 0.x:
194 * Single YAML configuration input
195 * TSDL metadata is generated by barectf instead of being consumed
196 * Introduction of platforms to handle buffers automatically with
197 custom callbacks and to allow continuous tracing
198 * Various optimizations in the generated C code