2019-11-01 babeltrace 2.0.0-rc2 (National Vinegar Day) * Cleanup: src.ctf.lttng-live: add missing `#include ` * Cleanup: src.ctf.lttng-live: remove usage of `bt_object` * lib: lib-logging.c: `Babeltrace library` -> `libbabeltrace2` * ctf: msg-iter.c: rename `notit` to `msg_it` * ctf: msg-iter.c: use `_APPEND_CAUSE` variants of logging macros * src.ctf.lttng-live: use `_APPEND_CAUSE` variants of logging macros * src.ctf.lttng-live: make `lttng_live_attach_session()` return status * src.ctf.lttng-live: make `lttng_live_get_one_metadata_packet()` return status * logging: ignore -Wundef in log.c * lib: Make `bt_version_get_*() return unsigned int * Rename `BT_RANGE_SET_` to `BT_INTEGER_RANGE_SET_` * bt2: validate parameters to _TraceClass.create_stream_class before creating the native object * tests: use assertRaisesRegex instead of assertRaises in test_stream_class.py * Cleanup: add `#include ` whenever `bool` type is used * lib: remove `BT_GRAPH_RUN_STATUS_END` * Cleanup: ctf: msg-iter.c: rename `ret` to `status` * Cleanup: ctf: remove duplicated logging statement * Cleanup: msg-iter.c: make `create_msg_*()` return msg * Cleanup: src.ctf.lttng-live: NULL check already done in `_is_canceled()` func * cli: Remove unnecessary NULL check in print_value_rec * source.ctf.lttng-live: clean-up: don't restart session iteration * source.ctf.lttng-live: clean-up: don't restart stream iteration * Fix: source.ctf.lttng-live: assertion on equal messages * Add compile_commands.json to .gitignore * Cleanup: src.ctf.lttng-live: coding style * Fix: add missing decoder-packetized-file-stream-to-buf.h * Fix -Wmissing-prototypes/-Wmissing-declarations warnings * ctf: Remove redundant declarations of lexer/parser functions * ctf-writer: Fix -Wredundant-decls warning * Fix: ctf-writer: field_type_common_has_known_id always returns true * Fix -Wshadow warnings * debug-info: fix one -Wnull-dereference warning * ctf: define yystrlen to strlen * ctf: Fix one -Wnull-dereference warning * ctf, ctf-writer: Fix -Wnull-dereference warnings * Fix -Wjump-misses-init warnings * Fix -Wmissing-include-dirs warnings * Fix -Wduplicated-cond warnings * black: run `black` version 19.10b0 on entire project * Fix: log.h: missing defines of `_ERRNO()` macros to `_UNUSED()` * Fix -Wsuggest-attribute warnings * Fix -Wstrict-prototypes warnings * configure: allow adding compiler-specific warning flags * Fix: tests: add cli/params/test_params to Makefile and fix it * Cleanup: babeltrace2-cfg-cli-args.c: coding style * Cleanup: usages of bt_value_array_borrow_element_by_index{,_const}() * Fix: usage of `bt_value_array_get_length()` * lib: make `bt_attributes_get_count()` return uint64_t * Use typeof instead of __auto_type * Fix: src.ctf.fs: free ds_file_info when add_ds_file_to_ds_file_group fails * Fix: define macros for logging levels * Tests: debug-info: compare output of `CompleteSrc` * Tests: debug-info: compare without `debug-info` component * debug-info: have `copy_*_content()` function return _STATUS * flt.lttng-utils.debug-info: add all SC and EC to output trace class ASAP * Fix: param-validation: remove memory leaks * Fix: shadowed variables * src.ctf.fs: append error causes in ctf_fs_file_open * lib: add _msg parameters to _ERRNO logging macros * lib: remove plugin's ABI version * Remove unused `src/lib/trace-ir/clock-snapshot-set.h` * lib: remove unused bt_graph_remove_unconnected_component() * Always evaluate BT_ASSERT(); add BT_ASSERT_DBG() for debug mode only * lib: remove includes from logging.h * bt2: make log functions clear error indicator * Fix: bt2: clear Python error indicator in trace and trace class destruction listeners * bt2: normalize the code to use some commonly used patterns * bt2: rename exception handling functions * src.ctf.fs: error out when failing to create index * bt2: Force usage of MapValue object on component init * Fix: consider index of all files for data stream groups with multiple files * Use assertRegex instead of assertRegexpMatches * Fix: src.ctf.fs: use BT_COMP_OR_COMP_CLASS_LOGE_APPEND_CAUSE when applicable * Cleanup: Dead assignments * Cleanup: flt.lttng-utils.debug-info: Dead assignment 2019-10-17 babeltrace 2.0.0-rc1 * Fix: avoid double-free in build_index_from_idx_file * Fix: ctf: query.c: Unchecked fclose() return value * Bump required glib version to 2.28 * tests: test eq and ne operators of fields and values against arbitrary objects and None * tests: test_field.py: enable tests using _test_binop_lhs_value_same * babeltrace2-intro(7): refer to `babeltrace2(1)` i/o `babeltrace2-convert(1)` * babeltrace2-intro(7): add more changes since Babeltrace 1 * Cleanup: src.ctf.lttng-live: Dead assignment * tests: remove test_ctf_writer_clock.py * Fix: flt.lttng-utils.debug-info: Dereference after null check * doc/man/common-footer.txt: fix Git repository and bug tracker resources * Update project's README * doc/man/common-footer.txt: refer to `#lttng` IRC channel only * doc/man/common-footer.txt: update bug tracker resource * lib, plugins: use bt_field_class_type_is() where suitable * lib: use powers of two for object type enumerators * lib: rename option/var. "selector" to "selector field" * lib: have dedicated "dynamic array FC with/without length field" types * Fix: destroy_pretty_data: move NULL check earlier * tests: make test_intersection use bt_cli, test error cases * Fix: check for NULL in destroy_pretty_data * Cleanup: src.ctf.lttng-live: coding style * Cleanup: flt.lttng-utils.debug-info: coding style fixes * Fix: avoid -Wmaybe-uninitialized warning in validate_map_value_entry * Fix: actually run the param validation test * Fix: don't use BT_VALUE_MAP_FOREACH_ENTRY_CONST_STATUS_MEMORY_ERROR * filter.utils.trimmer: validate parameters using param-validation * filter.utils.muxer: validate parameters using param-validation * sink.utils.dummy: validate parameters using param-validation * sink.utils.counter: validate parameters using param-validation * sink.text.pretty: validate parameters using param-validation * src.text.dmesg: validate parameters using param-validation * sink.text.details: validate parameters using param-validation * flt.lttng-utils.debug-info: validate parameters using param-validation * flt.lttng-utils.debug-info: tidy up component initialization * src.ctf.lttng-live: validate parameters using param-validation * sink.ctf.fs: validate parameters using param-validation * src.ctf.fs: validate parameters using param-validation * Add parameter validation utility * cli: ensure queries always receive a map * Cleanup: ctf: logically dead code * tests: rename PRINT_FORMAT to TAP_PRINTF_FORMAT * values: make `bt_value_map_extend()` extend the provided base map * tests: make test names in plugins/flt.utils.trimmer/test_trimming unique * Fix: format string warnings on mingw * Fix: lib: field-class.c: memory leak on error * Cleanup: lib: field-class.c: fix logging message for variant FC * Require automake >= 1.12 * Fix: fix wint_t warning on MSYS2/mingw * src.ctf.lttng-live: make lttng_live_component_create static * Cleanup: flt.lttng-utils.debug-info: coding style * port: fix link order of babeltrace2.exe * Fix: lib: field.c: calling _PUT_REF() on unique objects on error * lib: rename `bt_*_compare()` to `bt_*_is_equal()` * Cleanup: lib: graph.c: dead assignment * Fix: fix some warnings shown with -Wextra on gcc 9.1.0 * tests: test_output_path_ctf_non_lttng_trace_output small improvements * Move CLI params parsing to its own lib * Cleanup: flt.lttng-utils.debug-info: remove leftover comments * Fix: tests: remove unused imports * cli: update error message in set_stream_intersections * tests: get rid of missing-field-initializers warning in test_bin_info.c * tests: constify format strings in tap.h * tests: add format attributes to functions receiving format strings in tap.h * trace{-class}.c: BT_ASSERT_PRE() -> BT_ASSERT_POST() (ref. count check) * lib: rename `bt_object_{get,put}_no` -> `bt_object_{get,put}_ref_no` * test_package.py: use list of public names instead of dedicated methods * field_class.py: normalize field class names (`_NAME`) * lib, bt2: rename "signed/unsigned sel." -> "integer signed/unsigned sel." * lib: add option field classes with integer selectors * fs-sink-trace.c: lttng_validate_datetime(): ignore deprecated decl. * Fix: iterator.c: initialize `status` (may be used uninitialized) * m4: sync ax_pthread.m4 with autoconf archive * bt2: add `IntegerRangeSet` const classes * Tests: bt2: move `_create_const_field()` to utils.py * Cleanup: bt2: typo "nsigned" -> "unsigned" * lib: make it mandatory to have seek_X if can_seek_X is defined * lib: make can_seek_ns_from_origin logic use `can_seek_forward` property of iterator * tests: remove CR characters from expected file in test_live * tests: use os.rename instead of os.replace in lttng_live_server.py * tests: convert paths passed to lttng_live_server.py * tests: name temporary files in test_live * Fix: ctf: open metadata file using mode "rb" * cli: print map value in ASCII-betical order of keys * tests: use bt_cli in test_trace_copy * port: mmap offset alignment on Windows * tests: delete temporary files in cli/test_help * Cleanup: tests: remove debugging `diag` leftover * Rename `BT_PLUGIN_EXIT` to `BT_PLUGIN_FINALIZE` * Rename `init` methods to `initialize` * lib: split real FC/field into single and double prec FC/field * Fix: cli: don't log error when using help command with a plugin name * Fix: bt2: duplicate test name in test_field.py * bt2: remove unused variable in UserMessageIteratorSeekNsFromOriginTestCase.test_seek_ns_from_origin * Fix: bt2: duplicate test name in _IntegerRangeTestCase * Fix: bt2: use of undefined variable in _VariantFieldClassWithSelectorTestCase.test_const_append * Fix: bt2: unused assignments in test_field_class.py * bt2: print actual and expected lengths in _StaticArrayField._set_value error message * bt2: ignore comparison to None flake8 warnings in test_value.py * bt2: remove duplicate test test_create_from_vint in RealValueTestCase * bt2: remove duplicated test test_setitem_none in ArrayValueTestCase * bt2: rename test with conflicting name in test_trace.py * Add setup.cfg with sensible flake8 configuration * lib: pass config object to message iterator init method, add can seek forward property * Fix: tests: live: listen on python < 3.5 needs backlog parameter * lib: pass config objects to component init methods * bt2: make it possible to remove a trace class or trace destruction listener * bt2: make it work for Python 3.4 * Update project plugins's properties * utils.sh: expand `${extra_details_args[@]}` conditionally * sink.text.details: add `with-data` initialization parameter * Add basic `sink.text.details` tests * sink.text.details: don't write `:` after `Packet beginning` without ctx * src.ctf.fs: deterministically sort trace's DS file groups * Tests: src.ctf.lttng-live: add inverse ordering from relayd * Add LTTng-independent `src.ctf.lttng-live` tests * bt2: field.py: raise ValueError when setting out of range value to Integer * bt2: remove unused import * Fix: muxer_upstream_msg_iters_can_all_seek_beginning(): init. `status` * flt.utils.muxer: remove `assume-absolute-clock-classes` param * cli: make `--clock-force-correlate` use `force-clock-class-origin-unix-epoch` * src.ctf.fs: add `force-clock-class-origin-unix-epoch` param * bt2: print error causes in bt2._Error.__str__ * tests: utils.sh: add lttng-utils plugin to plugin path * Cleanup: clock-snapshot.c: logically dead code * Fix: test_dwarf.c: close() argument cannot be negative * Cleanup: ctf-writer: field-wrapper.c: logically dead code * Fix: ctf-writer: stream-class.c: Dereference after null check * Fix: flt.lttng-utils.debug-info: bin-info.c: Dereferencing null pointer * Fix: object-pool.c: dereferenced before null check * Cleanup: packet-context-field.c: logically dead code * Fix: output non-LTTng CTF trace with same relative path as input * cli: don't include version.h in babeltrace2-cfg-cli-params-arg.c * bt2: add `if __name__ == '__main__'` snippet to all tests * bt2: remove native_bt.d in `make clean` * Fix: ctf: assert that name is not NULL in warn_meaningless_field() * ctf: silence bogus warning in set_field_refs() * ctf: silence bogus warnings in create_relative_field_ref() * bt2: expose seek_ns_from_origin and can_seek_ns_from_origin * bt2: test_message_iterator: use assertIs instead of assertTrue/assertFalse in can seek tests * bt2: remove _GenericMessageIterator abstraction level * bt2: make can_seek_beginning a method instead of a property * lib: remove END values from bt_message_iterator_seek_{beginning,ns_from_origin}_status * lib: make can_seek_beginning and can_seek_ns_from_origin methods return a status * bt2: refactor test_message_iterator * bt2: rename _FieldPath to _FieldPathConst * Update manual pages for 2.0.0-rc1 * tests: make UUIDs under data/ctf-traces/intersection unique * Fix: fd-cache: Assertion failure if cache not allocated * Fix: plugin-so.c: Assert failure on short name file in plugin-path * Fix: plugin.c: leak of `bt_plugin_set` * bt2: move _append_option to non-const versions of variant classes * bt2: assign non-const version of field_class_variant_option_borrow_user_attributes to _VariantFieldClassOption._borrow_user_attributes_ptr * bt2: field_class: rename range set Python class template to _range_set_pycls * bt2: allow getting self output port from user message iterator * lib: remove bt_self_port{,_input,_output} * bt2: template borrow_user_attributes method in _TraceClassConst, _StreamClassConst and _ClockClassConst * bt2: add `__hash__()` method on hashable fields * Fix: src.ctf.lttng-live: no stream beginning/end messages * bt2: Makefile: track dependencies of native_bt.c * bt2: tests: Assert CC type, not if a subclass * bt2: Add `Const` suffix to non-user component-related classes and adapt tests * bt2: Add `Const` suffix to `_*Port` classes and adapt tests * bt2: Add `Const` suffix to `_Connection` class and adapt tests * bt2: Add remaining trace-ir `*Const` classes and adapt tests * bt2: Add `_Clock*Const` classes and adapt tests * bt2: Add `*ValueConst` classes and adapt tests * bt2: field.py: add index check in `selected_option_index` setter of `_VariantField` * bt2: field.py: add `_count` method to `_VariantField` * lib: add non-const FC borrow functions for container FCs * lib: add `bt_field_borrow_class()` function declaration * lib: fix can_seek_beginning method type cast * bt2: fix _seek_beginning -> _user_seek_beginning in comment * bt2: fix trivial typo * lib: make message iterator creation functions return a status * rename `babeltrace.trace-info` to `babeltrace.trace-infos`, `streams` to `stream-infos` * cli: improve error logging in set_stream_intersections * bt2: pass all params to `babeltrace.trace-info` query when computing stream intersection * ctf: remove `intersection-range-ns` from `babeltrace.trace-info` query * ctf: remove unnecessary assignment * ctf: make src.ctf.fs handle a single trace * ctf: make src.ctf.fs not recurse * ctf: make src.ctf.fs group inputs by UUID in `babeltrace.support-info` query * ctf: add internal ctf_metadata_decoder_get_trace_class_uuid() * ctf: refactor metadata decoder to always have an instance * Add bt_common_append_file_content_to_g_string() * ctf: use create + append/insert functions when possible * ctf: remove ctf_fs_trace::name * cli: remove unused path variable in set_stream_intersections * ctf: remove unused fields from `babeltrace.trace-info` query * tests: fix 'expected 2 blank lines, found 1' warning in utils.py * bt2: add missing bt2 import in interrupter.py * python: fix all "do not use bare 'except'" warnings * python: fix all 'imported but unused' warnings * python: fix all 'is assigned to but never used' warnings * autodisc: don't accept NULL values for `support-info` query `group` key * autodisc: improve logging * bt2: make ComponentSpec take a component class object * autodisc: cast when assigning to different enum type * autodisc: make it possible to interrupt auto source discovery * Make bitfield.h C++-friendly * trimmer: make filter.utils.trimmer append error causes * bt2: make _create_event_message's parent parameter mandatory * ctf: make src.ctf.fs append error causes * Fix: cli: check return value of bt_value_array_append_string_element * Fix: ctf: fix possible use-after-free in ctf_fs_component_create * Fix: cli: replace remaining log level `V` (verbose) -> `T` (trace) * Fix: sink.ctf.fs: dereference before NULL check * Fix: autodisc: possible use-after-free * Fix: sink.utils.counter: possible NULL pointer dereference * sink.ctf.fs: cleanup: duplicated `:` in log statements * Fix: sink.ctf.fs: possible use-after-free * lib: make g++ happy with plugin-dev.h macros * bt2: don't show warning when query method raises a non-error exception * bt_common_parse_lttng_live_url(): don't accept `net://RDHOST/host/TGTHOST` * src.ctf.lttng-live: return unsigned integers in `sessions` query object * Fix: pass `inputs` parameter to implicit `src.ctf.lttng-live`, not `url` * cli: allow map values in --params arguments * tests: add tests for CLI params parsing * cli: exit with error if a plugin fails to load * cli: set log levels earlier * cli: return if bt_plugin_find_all_from_dir fails in load_dynamic_plugins * Fix: lib: increment refcount of bt_value_null when copying it * Fix: cli: increment bt_value_null ref count when returning null value * Fix: field-class.c: dereference before `NULL` check * Tests: ctf: add basic `metadata-info` query test * bt2: add `StringValue.__contains__()` method * cli: "Babeltrace configuration" -> "Babeltrace CLI configuration" * cli: `convert` command: do not allow more than one sink component * cli: make --plugin-path and --omit-{system,home}-plugin-path global opts * Add all CLI `convert` command's tests to project's test suite * Fix: test_convert_args: use correct path to `utils.sh` * live_viewer_connection_create(): fix leak on connection error * Fix: bt_common_string_until(): reset returned variable on error * src.ctf.lttng-live: handle `babeltrace.support-info` query object * lib: make empty array/map appending/inserting functions return new object * lib: rename `BABELTRACE_DISABLE_PYTHON_PLUGINS` -> `LIBBABELTRACE2_...` * Tests: ctf: add tracers timestamp quirks workaround test cases * ctf: decoding: accommodate barectf `event-before-packet` timestamp quirk * ctf: decoding: accommodate LTTng `event-after-packet` timestamp quirk * ctf: decoding: accommodate lttng-crash timestamp quirk * ctf: index: accommodate lttng-crash timestamp quirk * ctf: index: set `beginning` and `end` clock snapshot * ctf: index: accommodate bug in barectf tracer * ctf: index: accommodate bug in LTTng tracers * ctf: add weak ref to stream file in index entry * ctf: add tracer version extraction function * ctf: msg-iter: add event timestamp accessors * ctf: msg-iter: extract func to decode packet until specific states * ctf: introduce dry-run mode for `bt_msg_iter` * ctf: only reset state of `bt_msg_iter` on _reset() * lib: remove unneeded `enum` tags in public headers * lib: assign values to all public enumerators * lib: standardize status of bt_util_clock_cycles_to_ns_from_origin() * lib: graph.h: fix formatting * lib: remove unused `enum bt_self_component_port_status` * lib: rename bt_value_array_get_size() -> bt_value_array_get_length() * bt2: rename `_Trace.env` -> `_Trace.environment` * bt2: add user attributes property support * sink.text.details: print user attributes * flt.lttng-utils.debug-info: copy user attributes * lib: add user attributes property to metadata, stream, and trace objects * lib: trace-class.c: use `LIB/TRACE-CLASS` logging tag * lib: add bt_field_class_variant_borrow_option_by_{index,name}() * bt2: rename `_Field.field_class` -> `_Field.cls` * bt2: add bit array field class and field support * sink.ctf.fs: write bit array field classes and fields * sink.text.details: print bit array field classes and fields * sink.text.pretty: print bit array fields * flt.lttng-utils.debug-info: copy bit array field class and field objects * lib: add bit array field class and field types * bt2: add option field class and field support * sink.ctf.fs: write option field classes and fields * sink.text.details: use write_none_prop_value() for empty array fields * sink.text.details: print option field classes and fields * sink.text.pretty: print option fields * flt.lttng-utils.debug-info: copy option field class and field objects * lib: add option field class and field types * bt2: add boolean field class and field support * sink.ctf.fs: write boolean field classes and fields * sink.text.details: print boolean field classes and fields * sink.text.pretty: print boolean fields * flt.lttng-utils.debug-info: copy boolean field class and field objects * lib: add boolean field class and field types * bt2: cleanup: Remove unused `_StreamClass` id setter * bt2: cleanup: Remove unused `_StreamClassIterator` class * tests: return 0 instead of None for unknown file in test component class support-info query * bt_uuid_compare: return actual comparison * sink.ctf.fs: isa_length is now architecture_bit_width * src.ctf.lttng-live: consider youngest only when timestamp is smaller * Use uuid as first comparison criteria * src.ctf.lttng-live: cleanup: rename functions and variables * Fix: src.ctf.lttng-live: missing ordering within traces and streams * bt2: `TraceCollectionMessageIterator`: find greatest MIP version * cli: find greatest operative MIP version to create `run` command's graph * lib: bt_graph_create(): accept MIP version * bt2: add bt2.get_{greatest_operative,maximal}_mip_version() * bt2: add "get supported MIP versions" method support * bt2: _IntegerRangeSet.add(): make it possible to add a single value * bt2: add `ComponentDescriptor` class and test * lib: add bt_get_{greatest_operative,maximal}_mip_version() functions * Fix: {graph,query-executor}.h: missing `STATUS_` before `MEMORY_ERROR` * lib: add "get supported MIP versions" method support * lib: graph.c: add missing `enum` and `const` keywords * lib: add component descriptor set API * bt2: py_plugin.py: cache `_PluginInfo` objects * bt2: remove unused imports * bt2: raise an exception if an AutoSourceComponentSpec produces no component * tests: remove bt_diff_cli_sorted from utils.sh * tests: use os.pathsep when appending to BABELTRACE_PLUGIN_PATH * cli: mention path separator for Windows in comment * test_plugin.py: do not search in user/system directories for tests * Fix: bt2: replace bt2.CreationError instances with bt2._MemoryError * bt2: add auto source discovery support to TraceCollectionMessageIterator * tests: move auto source discovery test artifacts * Move autodisc to its own convenience library * tests: make auto-source-discovery-{log_level,params} tests use sink.text.details * tests: make auto-source-discovery-grouping test use sink.text.details * tests: print executed CLI command line in bt_cli * tests: make bt_diff check a single file pair * tests: add bt_cli util function * m4/pprint.m4: check that the terminal supports at least 8 colors * Fix: flt.utils.muxer: Explicit null dereferenced * Fix: muxer: check for MUXER_MSG_ITER_CLOCK_CLASS_EXPECTATION_NONE in validate_new_stream_clock_class * Tests: flt.utils.muxer: run `black` on bt_plugin_muxer_test.py * src.ctf.lttng-live: use `common_muxing_compare_messages()` to break TS ties * Add message compare common func/library; make flt.utils.muxer use it * logging/log.h: always write the source file name and line number * Fix: tests: flt.utils.muxer: missing '../' in path to utils.sh * Fix: visitor-generate-ir.c: dereference after `NULL` check * Fix: plugin-so.c: dereference after `NULL` check * Fix: plugin-so.c: dereference before `NULL` check * Fix: common.c: logically dead code * Fix: cli/babeltrace2.c: logically dead code * Fix: dmesg.c: deference before `NULL` check * Fix: translate-trace-ir-to-ctf-ir.c: dereference after `NULL` check * Fix: argpar.c: logically dead code * Fix: babeltrace2-cfg-cli-args.c: uninitialized pointer read * Fix: src.ctf.lttng-live: omitting stream end on stream hang up * Fix: muxer.c: compare_events(): initialize `ret` to 0 * src.ctf.lttng-live fix: remove overly strict check for session name * Tests: flt.utils.muxer: add message ordering tests * flt.utils.muxer: deterministically order messages of same timestamps * Fix: extra '%' causes babeltrace2 to abort() in logging code * Fix: bt2: use unsigned iteration variable * Fix: `ctf` plugin: msg-iter.c: do not switch packet twice * src.ctf.lttng-live: `live_viewer_connection`: make `obj` first member * lib, bt2: make query method receive custom data * Add bt_graph_add_simple_sink_component() tests * Fix: src/lib/graph/graph.h: do not override `comp_status` value * lib: add bt_graph_add_simple_sink_component() * lib: remove colander sink component class * cli, tests: rename "leftover" terms to "non-option" * test_try_again_many_times(): use three times `None`'s ref count * lib: remove output port message iterator * bt2: make `TraceCollectionMessageIterator` not use an output port msg iter * bt2: wrap bt_graph_run_once() (Graph.run_once()) * lib: rename bt_graph_consume() -> bt_graph_run_once() * bt2: pass custom Python object to Python component's __init__() * bt2: remove BT CC entry from global HT in _UserComponentType.__del__() * cli: free auto_source_discovery_result::original_input_indices * cli: free leftover_params and leftover_loglevels * cli: apply log levels (`--log-level` option) to leftovers * cli: apply parameters (`--params` option) to leftovers * bt2: move common internal functions to their own files * bt2: native_bt_version.i: use `%include ` * bt2: put SWIG interface file C code in separate files * tests: reorganize CLI's `convert` tests * cli: handle leftovers in the same loop as components * cli: remove `run` and `convert` commands' --name option * cli: remove `convert` command's --path and --url options * Remove popt from project's dependencies * cli: remove babeltrace2-log * cli: use argpar for parsing query command's arguments * cli: use argpar for parsing list-plugin command's arguments * cli: use argpar for parsing help command's arguments * cli: use argpar for parsing convert command's arguments * cli: use argpar for parsing run command's arguments * cli: use argpar for top-level args * Add internal command-line argument parser API * bt2: stream.py: add `trace` property to _Stream * `ctf` plugins: port: cast to intmax_t all off_t variables when printing * configure.ac: refine Python 3 interpreter and dev. libraries detection * src.ctf.lttng-live: live_..._list_sessions(): remove handshake * Fix: live_viewer_connection_create(): `lttng_live_msg_iter` can be `NULL` * Fix: tests/utils/utils.sh: export `BT_TESTS_PYTHON_CONFIG_BIN` * `ctf` plugin: Use CTF_BYTE_ORDER_UNKNOWN in place of -1 * tests: fix test_auto_source_discovery on mingw * `ctf` plugin: Use CTF_SCOPE_PACKET_UNKNOWN in place of -1 * lib: Explicit cast to bt_plugin_find_status * src.ctf.lttng-live: Use SESSION_NOT_FOUND_ACTION_UNKNOWN in place of -1 * `ctf` plugin: Use is_log_level_set to infer ctf_event_class log_level validity * sink.ctf.fs: remove unusued _is_variant_field_class_tag_valid() * lib: prepare the ground for stateful query operations * bt2: honor self component or query log level when logging * Move `src/plugins/comp-logging.h` -> `src/logging/comp-logging.h` * tests/bindings/python/bt2: remove unneeded `import` lines * Test `bt2` public names (`test_package.py`) * Add `babeltrace.` prefix to `trace-info` and `support-info` query objects * lib: standardize listener ID types with new `bt_listener_id` type * lib: rename INVALID_OBJECT status to UNKNOWN_OBJECT * bt2: move __version__ to version.py.in * *_string() enumerator to string functions: remove common prefix * lib: rename `bt_scope` -> `bt_field_path_scope` * cli: fix "permission denied" test after g_dir_open * tests/Makefile.am: add `test_auto_source_discovery` to suite * bt2: prepend `_user` to overridable protected methods * bt2: make `bt2._OverflowError` inherit `bt2._Error` * bt2: _init_and_register_exit(): remove unused `version` variable * bt2: clean available `bt2` package names * test_error.py: remove dangling print() * bt2: move `_ListenerHandle` to `utils.py` * bt2: prepend `_` to names of exception classes the user cannot call * lib: rename all `*_STATUS_OVERFLOW` -> `*_STATUS_OVERFLOW_ERROR` * lib: append error cause when returning `BT_FUNC_STATUS_OVERFLOW` * bt2: import public names into `__init__.py` * bt2: rename `_Generic*ComponentClass` -> `_*ComponentClass` * lib: remove INVALID_PARAMS status * cli: remove the global volatile `interrupted` variable * lib: bt_query_executor_query(): check interruption state before querying * lib: add bt_plugin_find_all() * lib: add bt_{graph,query_executor}_add_interrupter() * bt2: add interrupter support * lib: add interrupter API * lib: create input port msg iterator from self {msg iterator, sink comp.} * bt2: fix some whitespace issues * lib: make default query implementation return INVALID_OBJECT, remove UNSUPPORTED status * lib: remove LOADING_ERROR status * bt2: remove NonexistentClockSnapshot exception type * bt2: prepend underscore to exceptions not meant to be raised by user * bt2: rename CreationError to MemoryError, handle it in and out of Python bindings * bt2: make bt2.Error wrap current thread's error * bt2: make bt2 add graph listener wrappers append error causes * bt2: make bt_bt2_trace_{,class}_add_destruction_listener return a status * bt2: remove utils._handle_ptr * py-common: make bt_py_common_format_exception accept an arbitrary exception * Fix: bt2: Make bindings target depend on convenience libraries * tests: fix Windows support in test_convert_args * tests: readlink 'canonicalize' is GNU specific * tests: fix Python plugin provider tests on Windows * Standardize `!ptr` i/o `ptr == NULL`, `ptr` i/o `ptr != NULL` * bt2: do not require sink component's _graph_is_configured() method * bt2: move _bt_graph_is_configured_from_native() to `_UserSinkComponent` * Update python bindings gitignore for native_bt.c * cli: automatically detect sources for leftover arguments * src.ctf.lttng-live: LOGI instead of LOGW when getting queried for an unknown object * sink.text.pretty: don't use printf for binary values * sink.text.pretty: use bt_common_g_string_append and bt_common_g_string_append_c * sink.text.pretty: remove field filtering * sink.text.pretty: do not printf field name strings * sink.text.pretty: use bt_common_g_string_append_printf * common: implement bt_common_g_string_append and bt_common_g_string_append_c * common: implement bt_common_g_string_append_printf * tests/Makefile.am: remove needless comment * Fix: bt2: incref Py_None in get_msg_range_common on error * lib: logging: add `%!R` conv. specifier for integer range set and use it * lib: rename functions to clearly indicate API inheritance * Tests: flt.lttng-utils.debug-info: update debug-info tests * Fix: flt.utils.muxer: don't clear an empty `GPtrArray` * `test_plugin.py`: use absolute paths for plugin path comparison * `test_query_trace_info.py`: adapt regex to NT path style * tests/plugins/flt.utils.trimmer/Makefile.am: remove useless HAVE_PYTHON guard * flt.utils.muxer: support stream messages with default clock snapshot * bt2: fix: don't return in bt_bool out typemap * bt2: remove unrelated comment from native_bt_integer_range_set.i * Apply black code formatter on all Python code * Explicitly mention `black` in CodingStyle guidelines * Tests: add `tap` utils code to Black formatter exclusion list * lib: remove `BT_ASSERT_PRE_FUNC` * lib: bt_field_class_dynamic_array_create(): accept length FC parameter * lib: decouple variant FC option names from selector FC mapping names * bt2: add integer range set support * lib: add integer range and integer range set API * Fix various "may be used uninitialized" warnings (GCC) * Fix: CTF writer: bt_ctf_field_unsigned_integer_set_value() -> *get_value() * Fix: BT_ASSERT_PRE_DEV(): use `##__VA_ARGS`, not `#__VA_ARGS` * bt2: report errors from Python component and component class callbacks * bt2: check for _graph_is_configured method in user sink classes * plugins: log failure to load plugin as a warning * tests: run_python_bt2: error out if BT_TESTS_BUILDDIR does not point to a build directory * bt2: don't copy swig interface files to build directory * bt2: run swig by hand instead of through "setup.py build_ext" * configure: report SWIG and SWIG_LIB values * cli: move plugin loading code to its own file * cli: Replace printf_err with BT_CLI_LOGE_APPEND_CAUSE * CONTRIBUTING.adoc: add more content to the "Testing" section * tests: Move tap-driver.sh out of the autotools aux directory * Fix: bt2: remove circular import (not supported before Python 3.5) * tests: bt2: remove test_clock_class_priority_map.py * Fix: flt.lttng-utils.debug-info: possible leak of `bt_message` on error * tests: src.ctf.fs: add 2packets test trace * tests: bt_diff_cli: compare expected `stderr` too * lib: plugin-so.c: ERROR and INFO level messages logged in callee * fix: use g_setenv for portability * Do not check `NULL` to call free(): free() accepts `NULL` * Fix: current-thread.h: append from message iterator, not from component * tests: on Windows the plugin object extension is 'dll' not 'so' * Fix: cygwin does not honour LD_LIBRARY_PATH * cleanup: configure.ac: replace spaces by tabs * Fix warnings with bison >= 3.4 and autoconf < 2.70 * Make the in-tree CLI use the in-tree PPP * Make the Python plugin provider a libtool module * Standardize `strcmp(a, b) == 0` instead of `!strcmp(a, b)` * Do not check `NULL` to call g_free(): g_free() accepts `NULL` * Fix: bt2: adjust reference counting of value objects * Rename PLUGINSDIR to BABELTRACE_PLUGINS_DIR and enable it * tests: update test_trimming to remove the wrapper * trimmer: proper formatting of timestamp conversion error * tests: specify the timezone offset * Fix: use return of bt_localtime_r as success criteria * lib: put __BT_UPCAST() and __BT_UPCAST_CONST() in `babeltrace.h` * Move `include/babeltrace2/ctf-writer` -> `include/babeltrace2-ctf-writer` * Remove legacy `include/babeltrace2/{ctf-ir,ctf}` directories * lib: standardize public header copyright notice * lib: remove "For *" comments in public headers * lib: force user to include `` * lib: standardize public include guards * src/{ctfser,fd-cache}/Makefile.am: remove unneeded `AM_CPPFLAGS` * Fix: lib: conflicting types for `bt_plugin_set_get_plugin_count` * Fix: CTF writer: make library have its own public `types.h` * lib: make BT_ASSERT_{PRE,POST}() always on; add BT_ASSERT_{PRE,POST}_DEV() * lib: rename `bt_*_labels_by_value` -> `bt_*_labels_for_value` * Rename WARN log level to WARNING * src/lib/{current-thread,error}.c: put precond. assertion at right place * lib/lib-logging.c: fix GCC warning: check return value of snprintf() * cli: append error cause when graph or query executor is canceled by user * lib: make packets and packet messages optional, disabled by default * fix: test_trimmer on macOs and Solaris * tests: Use DYLD_LIBRARY_PATH on macOSX * doc: Use DYLD_LIBRARY_PATH on macOSX * Tests: move `test_bitfield` outside lib tests, add `check-no-bitfield` target * Fix: bt_plugin_so_shared_lib_handle_destroy(): use `#ifdef`, not `#ifndef` * lib/graph/message/stream.c: fix clock snapshot leak * lib/trace-ir/clock-snapshot.c: assert that the parameter is not `NULL` * sink.text.details: write discarded events/packets CS props when supported * tests: replace xargs workaround with bash array expansion * Replace libuuid with internal implementation * cli: move `--params` option's format parsing to its own file * lib: remove stream activity messages * Fix: bt_ctfser_write_float64(): use `double` in union, not `float` * tests: don't swallow stderr when running babeltrace CLI * lib: move trace class's name, UUID, and environment props to trace API * cli: print current thread's error causes, if any, before exiting * Add bt_common_get_term_size() * Add bt_common_fold() * src.ctf.fs: append error cause when no traces are found in directory * lib: use BT_LIB_LOG*_APPEND_CAUSE() where appropriate * lib: add internal BT_LIB_LOG*_APPEND_CAUSE() macros * cli: introduce BT_CLI_LOG*_APPEND_CAUSE() and use it where appropriate * tests: call bt_current_thread_clear_error() when handling an error * cli: clear current thread's error, if any, before exiting * plugins: call bt_current_thread_clear_error() when not propagating error * lib: add thread-safe error reporting API * lib: keep plugin name, if any, in component class structure * src.ctf.fs: remove leftover use of pointer arithmetics * bt2: namespace private attributes of inheritable classes * tests: bt2: use `addr` attribute instead of private `_ptr` * cli: fix typo in error message * Fix: src.ctf.fs: segfault following `bt_msg_iter_seek()` * Fix: src.ctf.fs: trace-info: port_name memory leak * bt2: remove probing of BABELTRACE_PYTHON_BT2_NO_TRACEBACK env var * trimmer: use g_match_info_free instead of g_match_info_unref * tests: bt2: Fix `run_python_bt2` usage example * CONTRIBUTING.adoc: add how to run `bt2` tests * tests: bt2: add `--test-case` argument to testrunner.py * Fix: src.ctf.fs: pointer arithmetics on non-adjacent memory * bt2: update `pyproject.toml` following directories changes * Do not use diagnostic pragma when GCC version is lower than 4.6.0 * Missing define when not building with gcc * Assign *_STATUS_OK to ret * Fix: sink.text.pretty: support unknown event class name * tests: Remove stale tests launcher * tests: Add ".exe" when running on a mingw system * Fix: log_level usage on mingw platform * tests: add python plugin provider path to lib search path * Fix: trimmer: use regexes to parse dates and times * tests: Use diff -u * Fix compiler -Wall warnings (mostly incompatible enumerations) * trimmer: remove unused function * Add back (adapted) `test_bt_values` and `test_graph_topo` * Allow only TRACE, DEBUG, and INFO as the build-time, minimal log level * lib: strictly type function return status enumerations * tests/lib: remove `test_bt_values` and `test_graph_topo` * Fix: bt_packet_context_field_create(): remove "frozen" SC precondition * test_{field,value}.py: array test cases: add non-sequence equality tests * test_{field,value}.py: test complex number RHS for binary operations * test_value.py: make `BoolValueTestCase` inherit `_TestNumericValue` * test_value.py: _inject_numeric_testing_methods(): remove `has_neg` * test_{field,value}.py: add comments * bt2: create_value(): check `numbers` and `collections.abc` types * bt2: _ArrayField.__setitem__(): do not check type * bt2: field.py: _value_to_int(): require `numbers.Integral` * bt2: field.py: numeric classes: remove __i*__ operators * bt2: value.py: _IntegerValue._value_to_int(): require `numbers.Integral` * bt2: value.py: numeric classes: remove __i*__ operators * bt2: make `BoolValue` inherit `_IntegralValue` * bt2: field.py: refactor field comparison * bt2: value.py: refactor value comparison * bt2: make `_ArrayField` inherit `collections.abc.MutableSequence` * bt2: let Python message iterators implement seek beginning * lib: internal: message.h: require logging * lib: internal: object-pool.h: require logging * Fix: CTF writer: include CTF writer (own) version of `object-pool.h` * lib: internal: clock-snapshot-set.h: require logging * lib: internal: graph.h: require logging and BT_ASSERT_{PRE,POST}() * lib: internal: define `BT_ASSERT_{PRE,POST}_SUPPORTED` in headers * lib: internal: replace BT_ASSERT_PRE* -> BT_ASSERT_POST* where applicable * lib: internal: add BT_ASSERT_POST() * Add `src/py-common`, containing bt_py_common_format_exception() for now * fix: don't use realpath from GNU coreutils * lib: validate monotonicity of messages from upstream component * Fix: bt2: fix reference counting of messages returned by Python components * lib: fix compilation for glib < 2.40 * tests: Rework test suite * port: Use sig_t instead of sighandler_t * bt2: use `_extract_value()` on comparison * Fix: bt2: erroneous integer comparison of Field and Value * bt2: remove __le__() method already provided by @total_ordering * fix: Use python-config 'ldflags' instead of 'libs' * lib: add logic in auto-seek to recreate stream state * Append "library" to pkg-config packages names * Provide proper pkg-config .pc files * iterator: save original next callback in iterator struct * iterator: move auto-seek data in its own struct, add comments * fix: Add missing include on macOs * tests: remove carriage return when using diff * libs: Do not rely on nftw for detecting the validity of plugin path * Fix: return status instead of ret * lib: rename `BABELTRACE_NO_DLCLOSE` -> `LIBBABELTRACE2_NO_DLCLOSE` * bt2: fix formatting of C code in native_bt_component_class.i * cli: add missing line in --plugin-path help * lib: reverse order of bt_self_component_port_input_message_iterator::auto_seek_msgs queue * bt2: rename native_bt_notifier.i to native_bt_message_iterator.i * bt2: remove unused double* typemap * bt2: replace copy of headers for SWIG with includes * Rename `BT_LOG_LEVEL` -> `BT_MINIMAL_LOG_LEVEL` * Do not require logging support for BT_[CTF_]ASSERT_PRE() * lib: bt_plugin_find*(): return status code; add "fail on load error" param * lib: rename parameter of bt_self_component_filter_add_{in,out}put_port * lib: remove "accept port" concept * Fix: `ctf` plugin: do not have an `mdec` variable where not strictly needed * tests: Add missing copyright headers * tests: Move data files to a common directory * bt2: add missing parameter to _UserComponentType._query * test utils: add failfast option to our testrunner.py * fix: move static functions inside ifdef * Fix: bt_config_convert_from_args(): set default log level at the end too * Rename VERBOSE log level to TRACE * bt2: Rename _set_default_clock_snapshot_ptr callback to _set_default_clock_snapshot * Fix: Unmap before truncating * fix: Add missing stdint include on Windows * fix: test_trimmer on macOs and Solaris * lib: remove BT_LIB_LOG*() macro usage comment * Update `CONTRIBUTING.adoc` * lib: add comment about why `bt_lib_log_level` is exported * lib: use `LIBBABELTRACE2_INIT_LOG_LEVEL` env. var. to initialize log level * src.ctf.fs: use BT_COMP_LOG*() instead of BT_LOG*() * src.ctf.fs: honor component's initial log level * src.ctf.lttng-live: use BT_COMP_LOG*() instead of BT_LOG*() * sink.ctf.fs: use BT_COMP_LOG*() instead of BT_LOG*() * sink.text.details: use BT_COMP_LOG*() instead of BT_LOG*() * sink.text.details: honor component's initial log level * `ctf` plugin: metadata: use BT_COMP_LOG*() instead of BT_LOG*() * `ctf` plugin: `bt_msg_iter`: use BT_COMP_LOG*() instead of BT_LOG*() * `ctf` plugin: `bt_bfcr`: use BT_COMP_LOG*() instead of BT_LOG*() * sink.ctf.fs: honor component's initial log level * src.ctf.lttng-live: honor component's initial log level and query LL * lib/object.h: log conditionally to `BT_OBJECT_DONT_LOG` undefined * Remove unused `src/plugins/ctf/print.h` * Remove unused `src/plugins/ctf/common/utils` * `ctf` plugin: metadata: use local log level * `ctf` plugin: `bt_msg_iter`: use object's log level * `ctf` plugin: `bt_bfcr`: use object's log level * utils.sink.counter: use BT_COMP_LOG*() instead of BT_LOG*() * flt.lttng-utils.debug-info: use BT_COMP_LOG*() instead of BT_LOG*() * flt.lttng-utils.debug-info: honor component's initial log level * lib: rename `lib-logging.h` to `logging.h` * Logging: define `BT_LOG*_SUPPORTED` when logging is supported * flt.utils.muxer: use BT_COMP_LOG*() instead of BT_LOG*() * flt.utils.trimmer: use BT_COMP_LOG*() instead of BT_LOG*() * src.text.dmesg: use BT_COMP_LOG*() instead of BT_LOG*() * Logging: add `src/plugins/comp-logging.h` (BT_COMP_LOG*()) * flt.utils.trimmer: honor component's initial log level * flt.utils.muxer: honor component's initial log level * Move bt_{self_component,message_iterator}_status_string() to `common.h` * sink.utils.counter: honor component's initial log level * src.text.dmesg: honor component's initial log level * tests: bt2: add query log level tests * lib: pass log level to bt_query_executor_query() * Logging: pass dynamic log level to common functions and subsystems * src/logging/log.h: add BT_LOG_WRITE_CUR_LVL(), BT_LOG_WRITE_ERRNO_CUR_LVL() * cli: add component-specific `--log-level` option (run/convert commands) * sink.text.pretty: remove logging (not used) * test_graph.py: add bt2.Graph.add_component() logging level parameter tests * test_component.py: add `logging_level` property tests * lib: set component's initial log level when adding it to the graph * Add internal bt_common_logging_level_string() * cli: use log level integer instead of letter in configuration * src/logging/log.h: add utility functions for log level to/from string * Logging: standardize logging tags * configure.ac: change default minimal log level from VERBOSE to DEBUG * sink.text.pretty: remove message iterator inactivity message logging * lib: plugin.h: force header user to include "lib/logging.h" * Logging: check `BT_DEBUG_MODE` instead of `NDEBUG` * lib: `component-class-sink-colander.c`: remove useless `void *` cast * Rename: -> "some/internal-header.h" * Standardize log levels used by logging statements across the project * bt2: message_iterator.py: packet beginning/end messages have a single CS * bt2: stream activity messages: create with unknown/infinite default CS * Put `flt.lttng-utils.debug-info` tests into their own directory * Remove unused `tests/plugins/test_utils_muxer_complete.in` * Add facilities to test CLI and plugin regressions with expectation files * Add `sink.text.details`, a testing textual sink which prints details * Add bt_common_sep_digits() * fix: Add missing glib include on MINGW * tests: Move ctf-writer to it's own directory * tests: Move libtestcommon to utils * Cleanup: remove plugin-common.h * Cleanup: remove private babeltrace.h * fix: Static build fails with ctfser missing symbols * Re-organize sources * tap-driver.sh: flush stdout after each test result * Fix: src.ctf.fs: increment packet offset before init of index entry * ctf-writer: externalize libbabeltrace2-ctf-writer * Cleanup: Move build logic to python-plugin-provider Makefile * Cleanup: remove useless Makefiles from extras * Fix: use `babeltrace2` instead of `babeltrace` in plugin paths * Fix: doc/bindings/python/Makefile.am: run the `sphinx` Python 3 package * bt2: add `_Trace.cls` property * bt2: rename object's own BT class property to `cls` * bt2: prepend `_` prefix to names of classes that the user cannot create * Remove everything related to the `bt2.ctf_writer` Python module * Remove everything related to the `babeltrace` Python package * tests: clean up test_trimmer * lib: make precondition failure messages more clear on message creation * src.ctf.fs: trace-info: omit stream `range-ns` field when no TS * doc: Rename to babeltrace2 * lib: rename include dir to babeltrace2 * lib: Reset libbabeltrace2 to SONANE 0 * lib: Rename to libbabeltrace2 * cli: Rename to babeltrace2 * Fix: lib: expose bt_lib_log_level symbol * Add missing test_output_ctf_metadata to gitignore * Cleanup: use detected asciidoc to build CONTRIBUTING.html * Fix: src.ctf.fs: trace-info: fields no appended if range not set * src.ctf.fs: merge all indexes to the fs_ds_group level * src.ctf.fs: bubble up `ctf_fs_ds_file_group_create()` error * sink.ctf.fs: add more comments in code where it's not straightforward * Rename "default beginning/end CS" -> "beginning/end default CS" * src.ctf.fs: support no packet beg/end CS and no discarded events/packets * Fix: sink.text.pretty: print_discarded_elements_msg(): add missing space * sink.ctf.fs: support packets, DE, and DP w/o beginning/end clock snapshots * lib: make discarded events/packets support and clock snapshots optional * lib: create_packet_message(): make assertion message less convoluted * lib: create_packet_message(): use pool to determine beginning or end msg * tests: build system spring cleanup * tests: replace BT_ASSERT with exit in test_bin_info * tests: Add expected failure test to test_dwarf * tests: Add powerpc64le-linux-gnu debug-info artifacts * tests: Add powerpc-linux-gnu debug-info artifacts * tests: Add i386-linux-gnu debug-info artifacts * tests: Parametrize test_bin_info to handle multiarch artifacts * tests: Build new x86_64-linux-gnu debug-info artifacts * tests: Add Makefile to build debug-info test artifacts * Cleanup: test_bitfield: nr_bits should be unsigned * Fix: lib: set iterator state even in non-dev mode * bt2: change some bt2.CreationError usages to ValueError * bt2: remove unused exception types * src.ctf.fs: add stream port name to trace-info query, use it for stream intersection * Fix: sink.text.pretty: comma in enum fields * cli: Fix exit code of ctf-metadata output * bt2: Adapt test_trace_collection_message_iterator.py and make it pass * bt2: let components attach "user data" to ports * bt2: Adapt test_message_iterator.py and make it pass * bt2: Adapt test_message.py and make it pass * bt2: Adapt test_field.py and make it pass * bt2: Adapt test_field_class.py and make it pass * bt2: Adapt test_graph.py and make it pass * lib: Make graph listeners return an error status * lib: remove unused _NO_SINK graph status * bt2: Adapt test_packet.py and make it pass * bt2: Adapt test_clock_class.py and make it pass * bt2: Adapt test_event.py and make it pass * Fix: lib: usage of output port message iterator * bt2: Adapt test_event_class.py and make it pass * bt2: Adapt test_stream.py and make it pass * bt2: Adapt test_stream_class.py and make it pass * bt2: Adapt test_trace.py and make it pass * bt2: Add bindings for trace classes * Fix: lib: prevent infinite recursion when destroying trace classes and traces * bt2: Adapt test_connection.py and make it pass * bt2: Adapt test_port.py and make it pass * Add configuration for python code formatter black * lib: make packet beginning/end default CS optional * Fix: flt.lttng-utils.debug-info: memory leak bt_dwarf_die struct * lib: remove "unknown clock snapshot" concept * bt2: always use staticmethod() with native function class attributes * bindings/python/bt2/setup.py.in: put native module in `bt2` package * flt.lttng-utils.debug-info: Replace hardcoded '/' in paths * Fix: test_bitfield: extend coverage by removing off-by-one in bound check * Fix: test_bitfield: extend coverage: 0-len signed write/read * Fix: flt.lttng-utils.debug-info: build id comparison * Fix: src.ctf.lttng-live: possible memory leak on error path * Fix: lib-logging: possible buffer not null terminated * Update renamed file in gitignore * Fix: flt.lttng-utils.debug-info: cannot find addr past the first CU * Fix: flt.lttng-utils.debug-info: note name memcmp() overflow * Cleanup: src.ctf.lttng-live: rename _is_canceled function * Fix: flt.utils.trimmer: no error when upstream can not seek * Add .gitignore entry for .theia * Fix: logging: possible buffer overflows * Add vim .swp files to gitignore * Replace g_build_path with g_build_filename for portability * Fix: test_bitfield: buffer overrun accesses * Cleanup: tests: use underscores in filename * Cleanup: flt.utils.muxer: avoid returning a pointer needlessly * Fix: flt.utils.muxer: Potential memory leak * Cleanup: bitfields: streamline use of underscores * Silence compiler "always false comparison" warning * Extend test_bitfield coverage * Fix: bitfield: shift undefined/implementation defined behaviors * Fix: flt.utils.trimmer: bt_message_put_ref() on freed message * Fix: flt.utils.muxer: Undefined or garbage value returned * fix: Add PROT_READ to ctfser mmap flags * Fix: src.ctf.fs: possible use-after-free in the error path * Fix type-limits warnings, uint can't be < 0 * Fix old-style-declaration warnings * Annotate implicit fall-through * Cleanup: src.ctf.fs: index no longer used in loop * Fix: sink.ctf.fs: Dereference before null check * Fix: sink.ctf.fs: possible uses after free because of unchecked return values * Cleanup: common/assert.c: remove useless calls * Cleanup: src.ctf.fs: erroneous comment * Add -Werror=implicit-function-declaration to AM_CFLAGS * Add missing gitignore for test_ctf_plugin * Harmonize pprint macro across projects * Update macros from the autoconf archive * flt.lttng-utils.debug-info: fd-cache: log to `debug` severity on stat() error * Fix: src.ctf.fs: Using uninitialized value * Fix: sink.ctf.fs: writing 64bit real number as 32bit * Fix: flt.lttng-utils.debug-info: `ip` field is 32bit on 32bit cpus * tests: Run test_bitfield * Fix: duplicate symbol with clang linker * Fix: fd-cache: fd leak on error path * Fix: lib/graph: Dereference before null checks * Fix: cli: value stored is never read * Fix: flt.lttng-utils.debug-info: omitting copy_field_class_content() return value * Fix: flt.lttng-utils.debug-info: memory leak * Fix: sink.text.pretty: Unsigned compared against 0 * Fix: src.ctf.fs: init_index_entry() may return uninitialized value * cli/babeltrace.c: update known log level environment variable names * lib: add unsigned and signed integer value API * lib: value.c: remove BT_VALUE_FROM_CONCRETE() macro * lib: move `bt_value` structures to `value-internal.h` * bt2: Make test_query_executor pass * bt2: Fix Makefile dependency tracking when building out of tree * fix: g_hash_table_insert prior to glib 2.40 returns void * tests/plugins/ctf/Makefile.am: do not set `TESTS` in this file 2019-05-03 babeltrace 2.0.0-pre5 (No Pants Day) * Fix: flt.lttng-utils.debug-info: build id note section non-native byte order * common: add bt_common_read() function * Fix: common: va_list type is implementation dependant * Fix: uninitialized variant fc in set_field_refs() * src.ctf.fs: make trace-info query accept clock-class-offset-{s,ns} parameters * ctf: Use g_time_val_from_iso8601 instead of g_date_time_new_from_iso8601 * tests: update EXTRA_DIST of Python bindings * tests: remove non-existent files from EXTRA_DIST * include: add missing files to dist tarball * bt2: Add wrapper for bt_plugin_get_version * Add git-review config * Fix: bt2: enum-conversion warning in native_bt_component_class.i * Fix: bt2: int-to-pointer-cast warnings in SWIG utils functions * sink.ctf.fs: set_field_refs(): make `fc` `const` as `fc_type` depends on it * Fix: sink.ctf.fs: do not keep different `tgt_fc_type` as `tgt_fc` changes * lib: bt_graph_{consume,run}(): add unlikely() to unlikely condition * src.ctf.fs: compute stream range using entire file info group * bt2: update bindings to make test_plugins pass * bt2: update bindings to make test_component pass * bt2: update bindings to make test_component_class pass * lib: Add functions to borrow specialized component classes from specialized components * bt2: update value.py, make test_value pass * bt2: update object model * Fix: string format warnings on 32 bits * Fix: unused-function warnings in lib/graph/iterator.c * Fix: may-uninitialized warning in trace-ir-metadata-field-class-copy.c * Fix: maybe-uninitialized warnings in translate-trace-ir-to-ctf-ir.c * Fix: maybe-uninitialized warning in create_relative_field_ref() * Fix: unused-variable warnings in lib/graph/iterator.c * Fix: maybe-uninitialized warning in bt_ctf_stream_flush() * Fix: unused-variable warnings in bt_X_freeze() when not in DEV_MODE * Fix: src.ctf.fs: metadata-info: sanitize `path` param * Fix: flt.lttng-utils.debug-info: extra colon in `bin` member * debug info: Skip test that depends on Python bindings * babeltrace: Remove leftovers * doc: Make python bindings doc build * python-plugin-provider: Make it build * Remove clock_class_priority_map.py * Fix: headers: make static inline upcasts compatible with C++ * Fix: headers: add missing end of `extern "C"` curly brackets (for C++) * Fix: include/Makefile.am: add missing `babeltrace/ctf-writer/object.h` * bt2: Rename files to use singular form * bt2: Mass clock_value -> clock_snapshot rename * bt2: Mass field_types -> field_class rename * bt2: Mass notification -> message rename * bt2: Sync native_bt_field_class.i with field-class-const.h * lib: have dedicated, unique unsigned and signed enum FC mapping objects * tests/bindings/python: Mark all tests as skipped * bindings/python/bt2: Make the bt2 package importable * lib: Fix function name to match declaration * Add env wrapper to facilitate importing the in-tree python bindings * bindings/python/bt2: Make the bt2 Python bindings build * lib: Make bt_value_null a const pointer * ctf: Add dash to stream name suffixes * ctf: Use environment fields provided by LTTng to make output trace path * cli: put space after comma between array elements * Fix: test_convert_args: fix malformed test line * test_convert_args: test multiple leftover arguments * Fix: test_convert_args: fix expected arguments * cli: mimic behavior of BT1 when trying to attach to live session * plugins/ctf/fs-src: Session rotation support: merge traces with same uuid * cli, plugins/ctf/fs-src: Make src.ctf.fs accept multiple root paths * cli: Make append_parameter_to_args accept a bt_value value * cli: Remove support for --key and --value arguments * cli: Support arrays in parameters * cli: Adjust integer range check, replace magic numbers with constants * cli: Refactor command line value parsing code * cli: Refactor handling of negative numbers * Fix: tests/Makefile.am: do not run missing `flt.utils.muxer` * Adapt `src.ctf.lttng-live` to current API * sink.text.pretty: print inactivity msg handling with BT_LOGD_STR * graph: Fix: bt_graph_configure() does not propagate errors * Fix: flt.lttng-utils.debug-info: leaking `bin_dir` char array * Fix: flt.lttng-utils.debug-info: ".debug" extension not appended * lib: field path: have a specific item for "current array element" * Fix: bfcr_get_sequence_length_cb(): do not set text array's length * Fix: `tests/Makefile.am`: do not run missing tests * Fix: `tests/ctf-traces/succeed` traces: change CTF version from 0.1 to to 1.8 * Fix: `test_packet_seq_num.in`: change expected disc. packets messages order * Fix: flt.utils.trimmer: accept inited streams ending without other messages * Fix: cli: `flt.utils.trimmer` now expect the `gmt` parameter * Remove `test_bt_message_iterator` * Fix: cli: Acquire reference on bt_value_null while parsing args * flt.lttng-utils.debug-info: cleanup: create dedicated msg_iter destroy function * tests: remove unused automake variable * Fix: lib: Mismatch in function declarations and definitions * flt.lttng-utils.debug-info: Don't copy trace class UUID to output trace class * flt.lttng-utils.debug-info: Implement file descriptor cache * Cleanup: Move `debug-info` in its own sub-directory * Fix: flt.lttng-utils.debug-info: Error in src line reporting * flt.lttng-utils.debug-info: cleanup: remove usage old struct name * flt.lttng-utils.debug-info: cleanup: only print debug message on error * flt.lttng-utils.debug-info: use glib memory and string functions * sink.ctf.fs: Remove unused function * plugins/ctf: Remove unused uuid-related fields in struct ctf_fs_metadata * .editorconfig: add `charset = utf-8` * Add .editorconfig file * Remove babeltrace 1 Python bindings and tests * Remove stale trace-ir test files * BT_ASSERT(): update rendering * Re-implement BT_ASSERT without using the assert macro * Adjust bt_component_borrow_class to match declaration * Small fixes to include/ * ctf-writer: Split clock and clock-class declarations and definitions * Adapt `sink.ctf.fs` to current API * ctfser: have dedicated signed/unsigned integer writing functions * src.ctf.fs: keep empty structures * lib: add structure FC member and variant FC option objects * Fix: pretty/print.c: print comma and space after trace name * Fix: update_field_class_in_ir(): do not have special int fields in trace IR * Fix: msg-iter.c: accept no packet total and content sizes * Fix: handle_conversion_specifier_std(): use `sizeof(PRI*64) - 1` * lib-logging-internal.h: fix minor documentation mistakes * Fix: decoder.c: remove forgotten TODO section * `ctf` plugin: infer packet's total size from packet's content size * Fix: msg-iter.c: create packet message with correct function * Fix: src.ctf.fs: do not use trace IR objects in queries * flt.utils.muxer: validate clock classes on stream beginning messages * Fix: add_component_with_init_method_data(): freeze parameters * plugins/ctf/common: remove unused borrow_named_int_field_class() function * flt.utils.trimmer: fix: variables used uninitialized * lib: remove unused port_connection_iterators_are_finalized() function * lib: remove unused precondition utility function * flt.lttng-utils.debug-info: fix: set but not used warnings * lib: mark graph as faulty when adding a comp. or connecting ports fails * bt_port_output_message_iterator_create(): check that graph has no sinks * lib: remove bt_connection_is_ended() * lib: metadata: add missing non-const borrowing accessors * flt.lttng-utils.debug-info: adapt debug-info component to API changes * lib: replace trace is_static with destruction listeners * Fix: flt.utils.muxer: use return value (clock class) * Fix: flt.utils.muxer: reset is_ended variable after each iteration * sink.utils.counter: use a default step of 10,000 * sink.utils.counter: handle all types of messages * Cleanup: erroneous assert and log messages in stream.c * flt.lttng-utils.debug-info: Fix: dirname(3) might modify input string * Fix: use of wrong enumeration_mapping_ranges type * Fix: add missing `_const` in name of const functions * Fix: BT_ASSERT() on variable not yet initialized * common: prepend `bt_common_` to bt_message_iterator_status_to_self() * Add function converting bt_message_iterator_status to bt_self_* * Add a common, internal CTF serialization library; make CTF writer use it * common-internal.h: prefix functions with `bt_common_` * Adapt `flt.utils.trimmer` to current API * Fix: sink.text.pretty: do not always update last timestamp * flt.utils.muxer: do not release upstream iterators when they're ended * Fix: lib: stop auto-seeking when getting the first satisfying message * Fix: lib: auto_seek_handle_message(): set `msg` to `NULL` when skipping * Fix: print.c: remove extra `)` after `+????????????` * Fix: cli: `list-plugins`: print bold code before "component classes" * Fix: cli: cmd_list_plugins(): pass appropriate by-index functions * Fix: lib: `_const_const` -> `_const` * sink.text.pretty: "discarded a number of X" -> "might have discarded X" * lib: iterator auto-seeking: handle intersecting discarded items messages * lib: create a clock class object from component * lib: rename inactivity msg to msg iterator inactivity msg * lib: Pass raw snapshot value to bt_message_inactivity_create() * lib: add sink component class's "graph is configured" method * Fix: lib-logging.c: use temporary prefix where needed * lib: rename clock class's absolute property to "origin is Unix epoch" * Fix: flt.utils.muxer: make sure message's default clock class exists * sink.text.pretty: use fast clock class access * lib: message API: add fast default clock class accessors * flt.utils.muxer: implement "seek beginning" and "can seek beginning" methods * src.text.dmesg: implement "seek beginning" and "can seek beginning" methods * src.ctf.fs: implement "seek beginning" method * src.text.dmesg: make clock class non-absolute * iterator.c: auto-seeking: use packet messages's clock snapshots * flt.utils.muxer: handle all message types specifically * Update `include/babeltrace/babeltrace.h` * include/Makefile.am: add missing files * lib-logging.c: log event, packet beginnin/end message clock snapshot * Fix some include directives (add missing, remove superfluous) * lib: have default clock snapshot in event message * assert-pre-internal.h: append "error is" to first message * discarded-items.c: add clock class's existence precondition assertion * lib: add default clock snapshot property to packet beginning/end message * Fix: src.text.dmesg: put leaking trace class on component destruction * src.text.dmesg: emit stream activity beginning/end messages * lib: remove redundant `bt_packet` properties * sink.text.pretty: print warning message on discarded events/packets message * src.ctf.fs: emit discarded events/packets messages * src.ctf.fs: emit stream activity beginning/end messages * lib: iterator.c: auto-seek: handle new message types * Make parent parameters const for some object creation functions * lib: add discarded packets message * lib: add discarded events message * lib: set clock snapshot member to `NULL` after bt_clock_snapshot_recycle() * lib: add stream activity beginning/end messages * lib: remove CV snapshot property from stream beginning/end message * lib: add seeking (beginning, ns from origin), with auto-seeking support * lib: fully configure graph (add components, connect ports), then run * Fix: ctf plugin: returning bt_message_iterator_status from src.ctf.fs * Cleanup: use ctf_scope_string function to print `enum ctf_scope` vars * Cleanup: explicitly assigning value of variable to itself * Fix: may be used uninitialized trace_name variable * Fix: setting the wrong status variable on query canceled * Cleanup: add bt_ctf_value_type stringifying function * Cleanup: remove bt_clock_snapshot_set_value_inline function * Cleanup: bt_clock_snapshot_set_raw_value is now a static inline * flt.utils.muxer: fix muxer_init prototypes * Add bt_self_message_iterator_status_string() function * lib: do not allow port to be removed when message iterators are active * plugins/ctf/fs-src/fs.c: "msgier" -> "notifier" * lib: "msgied" -> "notified" (remaining of a previous mass rename) * CLI: use -x as short option for --connection instead of -C * Fix: graph API: add listeners to support filter-to-filter connection * lib: remove CTF concepts of packet and event headers * bt_field_class_*_create(): accept mandatory trace class * bt_clock_class_create(): accept mandatory trace class * bt_trace_class_create(): accept mandatory self component * Component class API: use status * lib: add aliases for Babeltrace enumeration types * Plugin development API: use self enumeration and plugin types * lib: remove unused public `enum bt_plugin_status` * Trace API: use status * Stream API: use status * Trace class API: use status * Stream class API: use status * Packet API: use status * Field API: use status * Field class API: use status * Event API: use status * Event class API: use status * Clock snapshot API: use status * Clock class API: use status * Remove unused lib/graph/message/discarded-{events,packets}.c * lib: rename "clock value" -> "clock snapshot" * lib: rename "notification" -> "message" * lib: rename bt_plugin_create_all_*() -> bt_plugin_find_all_*() * lib: add aliases for Babeltrace structure types * lib: make public reference count functions have strict types * lib: update copyrights * lib: rename plural file names to singular * lib: rename "begin" to "beginning" when used as a noun * bt_value_copy(): put output parameter as last parameter * bt_value_map_extend(): put output parameter as last parameter * Fix typo: "field classe" -> "field class" * lib: split trace API into trace class and trace APIs * lib: make graph API const-correct * lib: make plugin API const-correct * Fix: notif-iter.c: handle single/implicit SC/EC correctly * Fix: ctf-meta-update-meanings.c: only update if root struct FC exists * lib: make trace IR API const-correct * lib: make values API const-correct * lib: bt_object_{get,put}_ref(): accept a `const` parameter * CTF writer: use own `bt_ctf_object` and `bt_ctf_value` internal APIs * lib: move plugin set API declarations to `babeltrace/plugin/plugin-set.h` * lib: have separate `BT_QUERY_EXECUTOR_STATUS` and `BT_QUERY_STATUS` * lib: remove BT_NOTIFICATION_TYPE_{UNKNOWN,NR} * bt_port_output_notification_iterator_create(): remove colander comp. name * lib: rename transforming bt_X_borrow_Y() -> bt_X_as_Y() * lib: plugin: reset pointers to `NULL` on destruction * lib: trace IR, values: reset pointers to `NULL` on destruction * lib: return `void` when setting a simple value with no side effects * lib: graph: add "self" and some "private" APIs * lib: private functions: do not repeat `private` word * Graph API: split into private and public APIs * Trace IR and notification APIs: split into private and public APIs * bt_value_map_extend(): make base/extension objects `const` * Values API: standardize parameters and return values * Values API: split into private and public APIs * Rename: bt_put(), bt_get() -> bt_object_put_ref(), bt_object_get_ref() * Values API: standardize function names * Rename: "float value" -> "real value" * Remove unneeded `BT_VALUE_TYPE_UNKNOWN` * Rename: "field class ID" -> "field class type" * Rename: field type -> field class * CTF IR -> Trace IR * Make API CTF-agnostic * assert-pre-internal.h: add BT_ASSERT_PRE_VALID_INDEX() * Fix: bt_g_hash_table_contains(): handle `NULL`/0 values * assert-pre-internal.h: move include at correct line * lib: merge common CTF IR part with the remaining implementation * lib: fully detach CTF IR and CTF writer implementations * sink.text.pretty: print discarded events/packets warning * lib: bt_packet_create(): accept previous packet to set properties * _bt_packet_set_is_frozen(): fix logging statements * Fix: lib: do not check the frozen state in bt_X_set_is_frozen() * lib: make bt_field_is_*() and bt_field_type_is_*() static inline * lib: use priv connection priv notif iterator to create notif, not graph * lib: remove clock class priority map, use default clock value * lib: make the "port connected" method return a status * lib: notification iterator: transfer a batch of notifications * lib: remove internal stream destroy listener API * lib: graph: remove useless checks, make functions inline on fast path * lib: remove useless checks, make functions inline on fast path * lib: update and simplify the `bt_object` API * test_ctf_writer.c: put statements outside BT_ASSERT() * Fix: freeze field type unconditionally * Use "growing" `GArray` to store string field's payload * lib: simplify the public notification iterator interfaces * Fix: bt_graph_consume(): return status * Fix: CTF writer: use appropriate enumerators * Fix: bt_field*_reset_recursive() returns nothing * tests: use BT_ASSERT() instead of assert() * Fix: bt_event_common_initialize(): use appropriate callback types * BT_ASSERT_PRE(): when disabled, use the expression anyway * Fix: set BT object's shared flag in all modes * ctf: notif-iter: avoid reallocation in stack * ctf: btr: avoid reallocation in stack * lib: use object pool for event and packet notifications * lib: add internal object pool API and use it; adapt plugins/tests * ctf plugin: notif iter: use "borrow" functions for metadata where possible * ctf plugin: BTR: use "borrow" functions where possible * src.ctf.fs: use "borrow" functions where possible * sink.utils.counter: use "borrow" functions where possible * sink.text.pretty: use "borrow" functions where possible * cli: add short option `-l` for `--log-level` * Fix: bt_stream_common_finalize(): check `stream->destroy_listeners` * flt.utils.muxer: use "borrow" functions where possible * lib: add "borrow" functions where "get" functions exist * include/babeltrace/graph: fix some include guards * bt2: by-pass distutils changed file check * Silence unused variable warnings caused by BT_ASSERT() in non-debug mode * bt2: typo staitc -> static * Cleanup: remove GCC precompiled header leftover * Split CTF IR and CTF writer APIs and implementations * lib: metadata: transform fast path precond. checks to BT_ASSERT_PRE() * Notification iterator: transform precondition checks to BT_ASSERT_PRE() * Replace assert() -> BT_ASSERT() and some preconditions with BT_ASSERT_PRE() * Add internal BT_ASSERT() and BT_ASSERT_PRE() helpers * lib: add BT_LIB_LOG*() macros to log/serialize library objects * Common: add internal bt_common_custom_vsnprintf() * Logging: use a TLS buffer and increase its size * bt2: InactivityNotification, _Event: use mapping protocol for clock values * bt2: EnumerationFieldType: rename append_mapping() -> add_mapping() * Fix: call bt_stream_class_map_clock_class() in bt_event_create() * Add tests: CTF writer: `timestamp_begin`/`timestamp_end` autopopulation * Fix: bt_stream_class_map_clock_class(): copy field type when mapping * lib: add internal bt_field_type_structure_replace_field() * lib: logging: change warnings from BT_LOGE to BT_LOGW * Fix: CTF writer: validate and set `timestamp_begin`/`timestamp_end` * lib: add internal bt_field_sequence_get_int_length() * Add stream class's single clock class tests * lib: allow a single mapped clock class within a stream class * Fix: libctfcopytrace: replace clock classes in copies * bt_field_type_compare(): deep-compare mapped clock classes * Add test: no clock class in trace's packet header field type * lib: do not allow any mapped clock class in trace's packet header FT * tests/plugins/test_lttng_utils_debug_info.in: use specific pattern * tests/utils/python/testrunner.py: add optional pattern argument * Fix: invalid alignment of enumeration fields * Add git version string * Fix live-comm: merge TCP socket write-write sequence in a single write * Fix: wrong type specifier used with long argument * Fix: POPT_ARG_LONGLONG does not exist in popt 1.13 * Fix: Use bash for all test scripts * Add missing clock.h compatiblity header under ctf-ir * babeltrace-filter.lttng-utils.debug-info(7): fix LTTng prerequisites * bt2 tests: add unit tests for __str__ implementation of Fields * Implement __repr__ instead of __str__ for python Value * Return 'Unset' on unset field __repr__() * Implement __repr__ for _StringField * Implement __repr__ instead of __str__ for _NumericField * Implement __repr__ for _ArraySequenceField * Implement __repr__ for _VariantField * Implement __repr__ for _StructureField * Implement __repr__ for _EnumerationField * Fix: typo using bt2.ClockClassOffset constructor * Add bindings/python/babeltrace/test_ctf_writer.py test * Fix: stream.c: autopopulate timestamp fields even when not mapped to CC * Fix: writer.py: make `uint64_ft` a 64-bit (instead of 32-bit) int FT * Fix: Replace bt_timegm with a thread-safe implementation * Typo: informations -> information * Typo: paramater -> parameter * Typo: priorty -> priority * Fix: uninitialized variable may be used warning * cli: support --output opt. for -o ctf-metadata and -i lttng-live * Fix: doc/man/Makefile.am: use appropriate variable for sources * Add basic flt.lttng-utils.debug-info tests * bt2: TraceCollectionNotificationIterator: support custom filter CCs * Fix: debug-info: remove `_` prefix when finding fields by name * Remove doc/API.txt (Babeltrace 1.x API documentation) * Add modern Babeltrace man pages * Remove `PLUGIN` from component class log level environment variables * sink.text.dmesg: remove `read-from-stdin` parameter, use absent `path` * Lazy load the python plugin provider * Port: no sighandlers on Windows * Port: normalize path in test_plugin_bt2 * Port: fix library load in python tests on Windows * Fix: use configured python in test_python_plugin_provider * Port: open files in binary mode on Windows * Fix: ctf: notif-iter: do not call request_medium_bytes() when not needed * flt.lttng-utils.debug-info: `dir`/`debug-dir` param -> `debug-info-dir` * cli: do not automatically create an implicit filter.lttng-utils.debug-info comp. * ctf, ir: escape and unescape enumeration FT labels starting with `_` * cli: --stream-intersection is not an implicit src.ctf.fs component's option * cli: do not use --component in help command, only use leftover argument * Add compat layer's log level env. var. to CLI's list of known env. vars * cli: put the project's version on the first line with no args. * Fix: legacy python bindings Makefile * bt2, babeltrace: apply PEP 8 except for E501 and E722 * Fix: babeltrace: writer.py: do not use += on bt2.trace._TraceEnv * bindings/python/babeltrace/Makefile.am: do not clean __init__.py * Rename bt_ctf_X -> bt_X, maintain backward compat. for pre-2.0 CTF writer * Fix: variable declaration shadows previously declared variable * Fix: use tabs rather than spaces in makefile * Port: do not depend on GNU readlink 2017-09-18 babeltrace 2.0.0-pre4 (Cheeseburger Day) * Fix: use the configured swig executable * Tests python: reference ctf traces are not copied to the build dir * Fix: tests/Makefile.am: add missing LOG_DRIVER * Tests: moved files pointed-to in Makefile * Python babeltrace docs: Add missing sphinx dist file * Doc: babeltrace: update the Read the Docs Sphinx theme * Doc: babeltrace: mention _legacy_ Python bindings * Fix: doc/bindings/python: make the doc buildable * Fix: bt2: do not assign an exception to a local variable * Python bt2 fix: missing import in CtfWriter * Python babeltrace fix: handle bt2.Error exception on stream flush * Python babeltrace fix: allow None for event header and packet context setters * Python babeltrace fix: missing return statement in field accessor * Set version to 2.0-pre4 * Python babeltrace fix: initialize stream class with default values * Python babeltrace: use long form attribute names * Tests babeltrace: adapt python tests to use unittest * Fix: ctf-writertype serialization must 'escape' '_'-prefixed field names * Cleanup: use tabs for code indentation * Fix: NULL dereference on sampling and restoration of graph's 'can_consume' * Tests: confusion between python bindings and plugins tests * Update .gitignore: ignore generated API doc files * Update .gitignore: ignore generated __init__.py file * cli: do not use --component in query command, use leftover argument * tests/lib/test_ctf_writer.c: test structure field name is a keyword * tests/lib/test_ctf_writer.c: open trace with `-o dummy` to make it faster * tests/lib/test_ctf_writer.c: update number of tests * Add bindings/python/babeltrace/.gitignore * Fix: remove underscores from CTF IR field names at the source * bt2: trace collection notif. iter.: try to check the query result * ctf: do not add `intersection-range-ns` in `trace-info` query with no intersect. * Fix: ctf: notif-iter: accept EOF at beginning of packet context with no PH * Tests: add tests for the babeltrace python package * python: reimplement the babeltrace package as a bt2 wrapper * python: Remove native code from babeltrace package * Add `bt2.TraceCollectionNotificationIterator` tests * bt2: __init__.py: remove unused NoSuchPlugin * bt2: add trace collection notification iterator * flt.utils.trimmer: allow `begin`/`end` params. to be integers * bt2: values: remove public `value` getter * Python bt2 fix: erroneous imports following split of clock class and value * Omit 'value' from is_set and reset field functions * Python bt2: remove type restriction on structure __setitem__ * Cleanup: line exceeds 80 chars * Fix: ensure sequence length field value is set and freeze it * Cleanup: coding style mandates space after cast operator * Fix Python bt2: sequence length field may be NULL * Python bt2: value is a write-only property * Python bt2: add reset and is_set to fields * Docs: structure_set_field_by_name doesn't garantee field replacement * Add field value is_set and reset functions to the public API * Allocate structure fields on creation * Python test: remove useless test * Python bt2: value properties for sequence and struct * Use boolean for frozen and set field states * Update .gitignore exclusions * Tests: use of non-existant API in bt2 python package test * Python bt2 fix: _ClockValue is no longer part of bt2.clock_class * Enumeration mapping iterator's initial position is inconsistent * CONTRIBUTING.adoc: add step to add env. var. name to cli/babeltrace.c * CONTRIBUTING.adoc: MY_MODULE_LOGGING_H -> BABELTRACE_MY_MODULE_LOGGING_H * CONTRIBUTING.adoc: document BT_LOG*_ERRNO() macros * Add CONTRIBUTING.adoc * lib/ctf-ir/utils.c: lazy-initialize the hash table of reserved keywords * Implement bt_private_connection_notification_iterator_from_private() * Rename bt_X_from_private_X() -> bt_X_from_private() * Avoid unnecessary inclusions in public headers * bt2: split clock value module from clock class module * Split clock value API from clock class API * tests: remove `check` targets in subdirectories * Test bt2._OutputPort.create_notification_iterator() * bt2: add bt2._OutputPort.create_notification_iterator() * Test output port notification iterator * lib: add output port notification iterator * Split notification iterator API into base and specialized functions * Remove notification iterator seeking API until it's supported * lib: graph: disallow recursive consuming * lib: graph.c: call bt_graph_consume_no_check() in bt_graph_run() * ir: stream.c: do not truncate file at each packet flush * Fix: bindings/python/bt2: use appropriate log level variable names * Python plugin provider: only finalize interpreter if we initialized it * Fix: common: improve color support handling * Fix: component.py: pass `other_port`, not `other_port_ptr` to user * Add query executor * Tests: erroneous usage of if preprocessor directive * Fix: remove g_spawn_check_exit_status to support glib 2.22 * Port: don't quote wc output in test scripts * Missing stamp file in .gitignore * Fix: import of ctf_writer in bt2.stream * Fix: typo in ctf_writer error msg * filter.lttng-utils.debug-info fix: wrong type used as function parameter * src.ctf.fs fix: wrong type specifier used in logging statement * Test fix: python plugin provider with new bindings * Fix: silence unused warning in native_bt * Fix: python bindings OOT build * Remove the python bindinds tests switch from configure * Add python tap runner to the tree * Build Python bindings with distutils for consistent installs * Fix: add missing void param to bt_clock_class_priority_map_create * Fix: build lib before python-plugin-provider * Test: run debug-info even with built-in plugins * Fix test: don't link tests directly with plugins * Fix test: OOT build of test_trace_copy and test_trimmer * Fix: support older pkg-config autoconf macros * Port: don't quote wc output in test scripts * Report plugins without a path as "built-in" * Port: replace literal '/' with G_DIR_SEPARATOR * Port: normalize windows path on Mingw * Port: handle ctrl+c on Mingw * src.ctf.fs: implement stream indexing * src.ctf.fs: move internal util to ctf/common/utils * src.ctf.fs cleanup: unused page size variable * Fix: global logging symbols defined multiple times * Port fix: don't round mmap offset to next page * Port fix: Windows does not allow read-only mappings > file's size * Test fix: handle debug info disabled in test_convert_args * Test fix: use portable path code in test_plugin * Test fix: handle timestamps order in test_trace_copy * Test: rework shell test scripts * Port: use SIZE_MAX as max size_t value * Port: fix logging with C99 format specifiers on Mingw * Test fix: free() of uninitialized pointer on error path * Port: Replace fork() in test_ctf_writer * tests: add diag_multiline() helper to escape multi-line diagnostic info * Test: use static data in test_ctf_writer * Fix test: remove hardcoded /tmp path * Add Python plugin provider tests * Python plugin provider: log if Python interpreter is already initialized * lib/plugin/plugin.c: log more details when g_module_open() fails * python-plugin-provider/Makefile.am: link to libbabeltrace * Fix sink.ctf.fs: NULL dereference in logging statement * Fix filter.utils.muxer: NULL dereference in logging statement * Fix: overflowed return value * Fix: attempt to fix improper use of negative value * Fix: add missing overflow check in bt_ctf_stream_pos_access_ok * Fix: uninitialized return value on error * Fix: handle unknown enum mapping * Cleanup: no need to check for NULL before g_free * Update Python bindings and tests to match the latest API * lib/plugin/plugin.c: do not use G_MODULE_BIND_LOCAL for Python plugin provider * Add built-in colander sink component class * Remove include of from public headers * tests/lib/test-plugin-plugins/minimal.c: add missing include * cli/babeltrace-log.c: include for strdup() * graph: check if graph has at least one sink to return the NO_SINK status * Fix: CC prio. map. leak in event notification * lib: do not finalize a non-initialized notification iterator * Fix: cli: Coverity issue: no need to check `status` * bt_ctf_clock_value_create(): freeze clock class * Graph: pass remove listeners when adding listeners * ir: trace: pass remove listeners when adding listeners * include/babeltrace/graph/private-component.h: add missing `extern` * Remove bt_notification_discarded_{events,packets}_set_count() * bt_notification_inactivity_create(): create an empty CC priority map when NULL * bt_notification_event_create(): create an empty CC priority map when NULL * lib: move bt_notification_iterator_next_return to component-class.h * lib: use `enum bt_port_status` where possible * Remove unused bt_port_remove_from_component() * Update .gitignore to add newly generated test files * Re-enable the bin-info and dward tests * Port: Add glib checks for cross compilation * Fix: ctf-testsuite variant-missing-fields * Fix: fallback on content size if packet size is missing * Fix: unchecked return value of bt_value_array_append_string * Fix: tests: offset_s * ns_per_s should not overflow uint64_t * Fix: unchecked return value in ctf-writer test * Fix: unchecked return value of bt_ctf_field_type_get_field_at_index * Fix: unchecked return values of bt_value getters * Fix: unchecked return value of stream flush * Fix: unchecked return value * Fix: remove dead code * Fix: wrong variable checked for NULL after allocation * Cleanup: dereference after null check * Fix: add missing goto end on error * Cleanup: remove logically dead code * Fix: dereference after null check * Fix: wrong variable in NULL check * Cleanup: remove logically dead code * Cleanup: identical code for different branches * Fix: add missing bound checking in decode_packet * Fix: Dereference null return value * Fix: null check after deref, use uninitialized or freed variable * Cleanup: missing empty line between functions * Use logging macros in src.ctf-fs queries * Fix: missing ftell/fseek error handling * Fix: use of file pointer after fclose() * Cleanup: mixing enum types * Fix: missing check of ftell error * Fix: mixed enums used in source.ctf.fs * Fix: Dereference null return value * Fix: assert compared unsigned to 0 * Fix: negative loop bound check * Fix: resolve.c: enum type mismatch * Fix: Explicit null dereferenced * Standard logging for ctf.fs sink * Standard logging for libctfcopytrace * Standard logging for debug_info plugin * Standard logging for trimmer/copy.c * Fix tests: run plugins test wrapper script * Fix test: intersection has too large offset_s * Tests: only run debug info tests when the feature is enabled * Port: Add dummy symbol for macOS linker * Update gitignore * Port: use a separate variable for elfutils libs * Port: built-in plugins support for the macOS linker * Port: 'struct tm' member count vary across platforms * Port: Solaris and Cygwin have no sys/syslimits.h * Port: cast result of be64toh() to uint64_t for print format * Port: __STRINGIFY exists on Cygwin * Port: Add Solaris tid support to logging * Port: Add Cygwin tid support to logging * Port: unlink() requires unistd.h on Solaris and macOS * Port: handle 'size_t' / 'off_t' on Solaris * Port: replace strerror_r() by g_strerror() * Port: replace opendir() by g_dir_open() * Port: replace setenv() by g_setenv() * Fix: append to LIBS, don't override it * Port: do not include malloc.h * Fix: visit_event_decl(): always set stream_id variable * Fix: don't store an int64_t value in a ptr * Fix: use extern for variables instead of BT_HIDDEN * Fix: logging in socket-internal.h * Fix: remove g_ptr_array_insert to keep glib 2.22 compat * Fix: g_hash_table_insert returns 'void' in glib <= 2.39.2 * Fix: G_SPAWN_DEFAULT was introduced in glib 2.37.6 * Pretty plugin: only print negative timestamp warning once per component * Fix test: packet seq num has too large offset_s * ctf: visitor-generate-ir: accept negative clock offsets * Fix: clock-class.c: cache ns from Epoch and check for overflows * Fix: ctf: notif-iter: error on empty events (0 bits of data) * Fix: test: expect the new warning format for seqnum * Fix: packet sequence number handling and discarded packet reporting * ctf: notif-iter.c: check state on BT_CTF_NOTIF_ITER_MEDIUM_STATUS_EOF * cli: do not allow --stream-intersection with --run-args/--run-args-0 * Fix test_convert_args * cli: fix implicit clock class offset parameters * Completely rework configure.ac * Update autoconf archive macros * Clean LICENSE file * Cleanup: bison and flex detection * Cleanup: uuid library detection * Cleanup: popt library detection * Fix: Don't override user variables within the build system * Fix: built-in plugins with new plugin filenames 2017-07-07 babeltrace 2.0.0-pre3 (Comic Sans Day) * Update configure.ac version to pre3 2017-07-07 babeltrace 2.0.0-pre2 (Comic Sans Day) * test_plugin: use env. var. instead of global symbol because G_MODULE_BIND_LOCAL * Test fix: fixed allocation size used for variable length input * babeltrace-log: pass single-trace=yes to sink.ctf.fs * Fix: dead code in lttng_live_iterator_next_no_stream() * Fix: uninitialized return value member * Fix: ds_file_group is checked instead of ds_file_group->stream * Fix babeltrace-log(1) for Babeltrace 2 * src.text.dmesg: add `no-extract-timestamp` option * lib/ctf-ir/clock-class.c: serialize `true`/`false` instead of `TRUE`/`FALSE` * lib/ctf-ir/clock-class.c: only serialize UUID if it is set * Add src.text.dmesg component class * plugins/ctf/plugin.c: fix comment * ctf: notif-iter: pass current stream ID to get_stream() medop * src.ctf.fs: fs.c: add missing `static` * ctf: notif-iter: ensure that all packets refer to the same stream class * Fix: remove clock value leak in sink.text.pretty * sink.text.pretty: append `s` only if plural in discarded elems. msg. * lib: use dedicated BT_LOG*_ERRNO() instead of using strerror() * test_ctf_writer.c: use environment variable to override packet resize length * sink.ctf.fs: use original stream's name as CTF writer stream's name * ir: stream: prefer to use stream's name for (CTF writer) stream's path * sink.text.pretty: print discarded events and packets messages * src.ctf.fs: name the stream objects with their file's path * flt.lttng-utils.debug-info: copy original stream's numeric ID * libctfcopytrace: copy trace's UUID * Add sink.utils.counter * Automatically generate discarded packets/events notifications * lib/ctf-ir/trace.c: validate PH `packet_seq_num` field * ctf: notif-iter.c: ensure that medops's get_stream() always returns the same * flt.lttng-utils.debug-info: forward unhandled notifications * Fix: flt.utils.muxer: not always an ERROR to fail to validate * Simplify sink.utils.dummy: only one upstream notification iterator * src.ctf.fs: use one CTF notif iter per notification iterator * lib/graph/notification/inactivity.c: add missing `ret = -1` * ctf: notif-iter.c: lazily initialize clock value states * visitor-generate-ir.c: validate clock class frequency in visitor * bt_ctf_clock_class_create(): add a frequency parameter * stream.c: standardize "Cannot truncate stream file [...]" log message * BT_LOG_WRITE_ERRNO(): use `_msg ": %s" _fmt` format * lib/graph/notification/stream.c: add logging * lib/graph/notification/packet.c: add logging * Fix: add_clock_classes(): do not add existing clock classes * Remove unused bt_notification_get_stream() * Fix: allow NULL (unnamed) in bt_ctf_stream_class_{get,set}_name() * test_ctf_writer.c: set PACKET_RESIZE_TEST_LENGTH to 100000 again * lib/graph/notification/inactivity.c: add logging * lib/graph/notification/event.c: add logging * doc/logging-guide.adoc: document standard way of choosing tag names * plugins/utils/muxer/muxer.c: add logging * plugins/utils/trimmer/iterator.c: use unique logging tag * Fix: set intersections hashtable to NULL after destruction * Build plugins as unversioned modules * Port: plugin system compat for mingw / macOS * Fix: ctf writer test on Cygwin * Fix: disable debug by default info on Cygwin * Fix: remove AC_FUNC_MALLOC for cross-compile * Add libbabeltrace-ctf for backwards compat * Port: Add winsock support to live for mingw * Port: Replace readdir_r by nftw * Port: dirfd is not portable, replace it * Port: use ghashtable in mman compat * babeltrace-2.0: do not link with -export-dynamic * Fix: bt_component_create is not hidden * stream-intersection: use the trace-info query results to insert trimmers * Fix: ctf_fs_metadata is assumed to be non-null * Improve logging in the LTTng index parsing code * copytrace: check clock_class_count before getting the clock by index * Fix: wrong output name in --help for implicit CTF source * Test the trimmer component * pass --clock-gmt option to the trimmer if enabled * Tests: don't rely on the test script's location * test_trace_copy: compare the two traces with diff rather than wc -l * Test debug-info * Clean-up: coding style adjustments * Cleanup: typo fix in comment * fs-sink: add the single-trace option * Test: validate that the output of ctf-fs sink is identical to source * Fix: event_header is optional * Copy the packet_header in the plugins * Fix: wrong return code check on try_set * Fix copytrace: copy packet_context * copytrace: packet_context is optional * copytrace: create empty stream classes by default * fs-sink: packet_context is optional * Fix: the fields to reset are optional * ctf: remove strict metadata mode, update automatic CC mapping behaviour * Remove the concept of event class attributes * BT_CTF_BYTE_ORDER_NONE -> BT_CTF_BYTE_ORDER_UNSPECIFIED to match base * test_ctf_writer.c: do not check for invalid event class name * plugins/lttng-utils/Makefile.am: add all source files to _SOURCES var. * Add BT_CTF_INTEGER_BASE_UNSPECIFIED * Fix: Stream classes' id field is always serialized * Fix: flush stream without packet_context * Add BT_LOG*_ERRNO() logging macros * debug-info fix: packet_context is optional * Fix: uninitialized return value in copy.c * Remove legacy printf_verbose()/printf_debug() and others * visitor-generate-ir.c: automatically map specific fields to trace's clock class * ctf: add metadata decoder config. and `strict-metadata` param in src.ctf.fs * source.ctf.fs: remove ctf_fs_debug symbol * Fix: cli: help command: accept leftover when --component is not specified * cli: add global --log-level option * Use BABELTRACE_FORCE_COLORS environment variable to force color support * Logging: add colors depending on log level * visitor-generate-ir.c: logging: add stream's line number and other info * visitor-semantic-validator.c: standardize logging * plugins/ctf/common/metadata/visitor-parent-links.c: standardize logging * plugins/ctf/common/metadata/objstack.c: add logging * plugins/ctf/common/metadata/decoder.c: standardize logging * plugins/ctf/common/metadata: logging: standardize in parser and lexer * visitor-generate-ir.c: logging: standardize messages and levels * ir: fields.c: fix public function names to get/set struct. field * Port: Enable libtool to produce DLLs * Port: Remove unused header pwd.h * Add logging to compat * Add missing files to gitignore * Port: Remove unused header in test_plugin * Don't add module symbols to global namespace 2017-06-09 babeltrace 2.0.0-pre1 * Set version extra to pre1 * Fix: debug info plugin incorrect assumption about header and clock * Fix: various fixes for ctf-traces/succeed test cases * configure.ac: make the minimal, build-time log level be VERBOSE * cli: use WARN as the default log level when not explicitly set by user * cli: set all the log level of all known loggers with -v and -d * cli: convert: allow multiple paths to be passed as leftover arguments * Fix: remove listener check * Fix copytrace: check field exists before copy * Fix: uninitialized variable * Fix: event, stream names can be strings * Fix: make check in out-of-tree * Fix: out-of-tree build * Fix: add missing files to make dist, disable python bindings * Remove former logging header print.h from source.ctf.fs Makefile * source.ctf.fs: implement the trace-info query * plugins/lttng-utils/copy.c: fix uninitialized use warning * debug-info: sync the copied trace on static change * debug-info: handle the static notifications * debug-info refactoring * fs-sink: useless active_stream member * include/babeltrace/graph/private-connection.h: add missing `extern` * doc/api: add missing babeltrace-cli.png image * cli: use -o ctf --output /output/path to quickly instantiate sink.ctf.fs * bt_ctf_field_type_integer_set_size(): take unsigned int parameter * bt_ctf_stream_get_discarded_events_count(): return int * utils.muxer: expect specific clock class properties to mux * ir: do not automatically generate a UUID in bt_ctf_clock_class_create() * plugin-so: use list of components instead of glib hash table * cli: use --component=NAME:{source,filter,sink}.PLUGIN.COMPCLS * lttng-live: check graph cancel state, check ctf trace pointer * Fix build with BUILT_IN_PLUGINS=1 * Add bt_graph_add_component(), make bt_component_create() internal * lttng-live: correctly handle ctrl-c and fix leaks * End connection on destruction * Cancel the graph on destruction * connection.c: refuse to create a notif. iter. when the graph is canceled * lib/graph/{filter.c,sink.c,source.c}: fix log messages * Remove dependancies on ctf.fs source component caused by former logging API * Move ctf-fs source query implementations to their own file * Fix: do not use BT_MOVE() when the destination memory could be uninitialized * Make bt_private_connection_create_notification_iterator() return a status code * Refuse to add port to component when parent graph is canceled * graph.c: do not warn when the graph is canceled during bt_graph_run() * Add internal bt_component_borrow_graph() * Make bt_private_component_*_add_*_port() return a status code * Make bt_graph_connect_ports() return a status code * Add bt_connection_is_ended() * plugins/ctf/common/notif-iter/notif-iter.c: add logging * fs-sink: flush open packets on destroy * Fix sink.ctf.fs: mark the trace as static on destroy * fs-sink: fix check trace completed when static is set * lttng-live: populate trace name * Fix: cancel a notif. iter. finalized during its "next" method * Fix: do not allow a notif. iter. to call the user's "next" method once finalized * ir: do not try to create initial packet/event fields when opt. FT is NULL * copy_trace: copy the trace name * fs-sink: handle trace name * always copy packet/content_size, they are overwritten by the lib when necessary * Fix copytrace: copy the entire payload_type * clock description is optional * move the copy of event_context in ctf_copy_event_class * Fix copytrace: packet header is optional * support adding streams on non-static traces * Remove dead code from the debug-info component class * Fix debug-info: handle event layouts of lttng-ust traces prior to 2.9 * fs-sink: fix handling static notifications * fs-sink: move stream and stream_class maps in fs_writer struct * fs-sink: explicitely handle stream_begin notif * fs-sink: trace static handling + cleanup teardown * Use abort() instead of a false assertion * doc/Makefile.am: do not install internal documentation * lib/ctf-writer/writer.c: logging: change tag to `CTF-WRITER` * Add missing include of unistd.h * Port: use portable print format for size_t * Port: internal logging print format for mingw * Port: replace strerror_r() with glib g_strerror() * Port: Use g_setenv instead of setenv * Port: Plugin extension is platform specific * Port: No setuid on windows * Port: Use glib g_get_home_dir to get home dir on mingw * Port: Dummy locking of stdout on mingw in libtap * Port: Add missing includes for mingw * Port: memstream compat for mingw * Port: Use portable format string for ISO 8601 dates * Port: add missing include for stdio.h compat * Port: Add utsname.h compat for mingw * Port: Add mman.h compat for mingw * Port: Namespace tokens in ctf metadata parser/lexer * Port: Add posix_fallocate compat for mingw * Port: Add timegm compat for mingw * Port: Add time.h compat for mingw * Port: Disable debug info by default on mingw * Port: win32 DLLs don't support hidden symbols * Port: Add missing byteswap compat for mingw * Port: Fix libuuid compat on mingw * Port: Add AC_USE_SYSTEM_EXTENSIONS with mingw support * Port: Add bt_common_get_page_size * Port: Use glib portable macros to convert gpointer to int * Port: use portable pointer type in bt_list_entry * Fix: test-utils-muxer.c: initialize "next" return with OK status * ir: do not create empty structure for optional scope field types * test_ctf_writer.c: set PACKET_RESIZE_TEST_LENGTH to 100000 again * utils.muxer: remove upstream notif. iter. once ended/canceled * configure.ac: use $enableval in AC_ARG_ENABLE() * doc/logging-guide.adoc: minor fixes + add "Instrument a module" section * cli: use standard logging files and macros * python-plugin-provider: use standard logging files and macros * plugins/ctf/lttng-live: use standard logging files and macros * plugins/ctf/common/btr: use standard logging files and macros * logging-internal.h: add BT_LOG_LEVEL_EXTERN_SYMBOL(), BT_LOG_INIT_LOG_LEVEL() * plugins/ctf/common/btr/btr.c: add logging * Logging: require modules to define BT_LOG_OUTPUT_LEVEL * bt_value_get_type(): not a warning if value is NULL * bitfield-internal.h: fix negative value shifting warnings * tests/lib: do not call bt_ctf_trace_set_native_byte_order() if not needed * ir: add BT_CTF_BYTE_ORDER_NONE and make it the default trace's native BO * ctf plugins: prepend trace's hostname, if exists, to trace name * ctf.fs source: use last path parameter's element as base for trace names * Docs: add informal comments to common-internal.h * Add bt_common_normalize_path() * stream.c: allow stream PC's `events_discarded` field to be set by user * Remove remaining old test files * tests/cli/Makefile.am: remove duplicate test in TESTS list * Fix: test_convert_args: use util.muxer's `assume-absolute-clock-classes` param * Fix: test_ir_visit.c: create valid SC PC/EH and trace packet header * Fix: test_ctf_ir_ref.c: create valid SC PC/EH and trace packet header * Remove warnings when using bt_plugin_create_all_from_dir() * Fix: make Python plugin provider have its own log level * Add bt_log_get_level_from_env() and use it * configure.ac: add details to final report * python-plugin-provider/python-plugin-provider.c: add logging * cli: check for cancellation before running the graph, add relevant logging * lib/plugin/plugin-so.c: add logging * test_ctf_writer.c: add "trace is static" listener tests * Add bt_ctf_trace_add_is_static_listener() and ..._remove_is_static_listener() * Fix builds with built-in plugins * lib/plugin/plugin.c: improve log levels * text.pretty: create an event string instead of using fprintf()/fputs() * Fix debug-info: prevent invalid access in the original event_context * Make bt_graph_add_*_listener() function return a listener ID * Rename "ignore-absolute" parameter to "assume-absolute-clock-classes" * Tests: possible dereference of NULL argument to strcmp * Fix: return error on empty list in get_unary_unsigned * Fix: missing error code on signed clock value in trimmer * Fix: uninitialized destination component on unknown args * Fix: use of uninitialized value in visit_*_decl_entry * Fix: return of garbage value in copy_find_clock_array_field on error * Fix: return of garbage value on empty specifier list * Fix: return of garbage value when trace has no stream classes * Fix: NULL dereference in logging on btr allocation failure * Fix: NULL dereference in logging on notit allocation failure * Fix: dereference of NULL mdec when opening packetized metadata file * Fix: potential NULL dereference of ctf_fs_file path * Fix: ds_file_munmap must check ds_file for NULL * Fix: unchecked bt_ctf_event_set_clock_value return value * Clean-up: unused next_return assignation in muxer test * Fix: uninitialized ret value used in set_debug_info_field * Fix: possible NULL dereference of uuid in test * lib/plugin/plugin.c: add logging * Replace all assert(false) and assert(0) with abort() * lib/graph/iterator.c: add logging * lib/graph/clock-class-priority-map.c: add logging * lib/graph/component-class.c: add logging * lib/graph/sink.c: add logging * lib/graph/filter.c: add logging * lib/graph/source.c: add logging * Remove useless component/iterator validation functions * bt_notification_iterator_create(): assert the type of comp. class * lib/graph/connection.c: add logging * fix: bt_put on potentially unintialized variable * fs-sink: only subscribe to relevant notifications * fix: useless warning * Fix debug-info leak: unbalanced get/put * trimmer: cleanup the packet_map if iterator destroyed early * debug_info fix: useless reference * debug-info fix: remove useless get function * trimmer: close when end is reached * trimmer fix: notification handling * debug_info: fix graph connection * fix copytrace: set the byte order * copytrace: option to skip the copy of packet/content size * fix: optional fields * lib/graph/notification/event.c: fix clock class leak * lib/graph/port.c: add logging * Remove component's initialization state flag * lib/graph/component.c: add logging * bt_ctf_stream_map_component_to_port(): log before and after * Remove bt_component_set_name() * lib/graph/graph.c: add logging * Remove bt_graph_add_component_as_sibling() * bt_ctf_trace_destroy(): logging: difference between destroying and putting * bt_ctf_stream_class_destroy(): log what is being destroyed/put * lib/ctf-ir/event-class.c: minor logging message edit * lib/ctf-ir/validation.c: add logging * ref.c: warn when the ref count goes from 0 to 18446744073709551615 * ref.c: do not change ref count when release function is not set * lib/ctf-ir/resolve.c: add logging * field-path.c: add internal function to stringify a field path * lib/ctf-ir/trace.c: add logging * ctf.fs source: make traces static when all streams are created * plugin-so.c: use BABELTRACE_NO_DLCLOSE env. var. to avoid dlclose() * ctf.fs source: add trace file rotation (stream instance ID) support * ctf plugin: add bt_ctf_notif_iter_get_packet_header_context_fields() * ir: add stream ID API * cli: --force-correlate -> utils.muxer's `ignore-absolute` parameter * Fix: do not require lttng-utils.debug-info with --disable-debug-info * Fix: ctf.fs source: append all ctf_fs_trace objects to component's list * ctf.fs source: recurse to find multiples CTF traces * Fix warnings emitted by `gcc -Wall` * Library: log version (INFO) on construction * babeltrace(1): reset console after graph stops running * logging-internal.h: use __attribute__((format)) to check parameters * Logging: fix wrong parameters, superfluous commas, etc. * lib/ctf-ir/event.c: replace some BT_LOGE() with BT_LOGW() * CTF writer: stream: handle automatic fields more securely * Validate CTF semantics in selected CTF IR functions * Event notification: make sure contained event has a trace * lib/ctf-ir/stream.c: add logging * fields.c: get non-existing field: log level WARN -> VERBOSE * bt_ctf_event_serialize(): do not log whole function (done in stream.c) * Fix: lttng-live enum mismatch * lib/ctf-ir/field-types.c: use `int`, not `int64_t` for return value * Fix: lib/ctf-ir/event-class.c: fix warnings on `ret` condition * Fix: g_quark_try_string() is usually not a WARN trigger * Fix: set no field in event/packet without warnings or failing * lttng-live: handle EINTR and graph cancelation * Fix: invoke bt_ctf_trace_set_is_static only when trace is destroyed * lib/ctf-ir/utils.c: add logging * lib/ctf-ir/fields.c: add logging * lib/values.c: add more verbose/debug logging * lib/ctf-ir/packet.c: add more debug logging * lib/ctf-ir/event-class.c: add more verbose/debug logging * lib/ctf-ir/attributes.c: add assert() * Update logging guide: more about the WARN level * lib/ctf-ir/field-types.c: logging: log more details * lib/ctf-ir/event.c: logging: fix log levels and more verbose/debug logging * lib/ctf-ir/field-types.c: logging: log struct/var FT field destruction * lib/ctf-ir/field-types.c: logging: log only specific functions * lib/ctf-ir/field-types.c: logging: log more details when freezing * lttng-live: change loglevel env var to BABELTRACE_PLUGIN_CTF_LTTNG_LIVE_LOG_LEVEL * lttng-live: ensure that port connections go to the same component * Fix: don't call iterator finalize more than once * Fix: muxer: handle CANCELED status * Update logging guide * lib/ctf-ir/field-types.c: add verbose logging (modifying functions) * LTTng live: use common url parser * Implement cmd_print_lttng_live_sessions * lib/values.c: use assert() instead of checking error * lib/ctf-ir/stream-class.c: logging: fix typo * Logging: use WARN level where appropriate * lib/ctf-ir/field-types.c: add logging * cli/babeltrace.c: logging: add details in graph listeners * lib/ctf-ir/field-path.c: add logging * lib/values.c: logging: log original and copy addresses * lib/ref.c: logging: show current count and new count in messages * lib/ctf-ir/stream-class.c: add logging * lib/ctf-ir/event.c: logging: remove some context given by other statement * lib/values.c: logging: log array size when out of bound * lib/ctf-ir/event-class.c: add logging * lib/ctf-ir/event.c: add logging * Add internal bt_ctf_field_type_id_string()/byte_order_string() * lib/values.c: logging: log value's type name * lib/ctf-ir/clock-class.c: improve logging with clock class's name * Include before anything else * cli/babeltrace.c: improve main loop's logging * cli/babeltrace.c: handle usleep()'s error * lib/ctf-ir/packet.c: add logging * cli/babeltrace.c: do not call load_all_plugins() in commands * logging-internal.h: fix include name in comments * include/babeltrace/object-internal.h: add logging * Collect useless graph's connections * Implement logging in lttng-live component * cli/babeltrace.c: add logging when the command completes * babeltrace(1): handle SIGINT to cancel the graph gracefully * Fix possible leaks in graph's current design * BT_GRAPH_STATUS_CANCELED is not an error, thus use a positive value * Implement ctf.lttng-live component * Fix: IR visitor: error msg printing * Move print.h header to upper level dir * utils.muxer: fix ownership of objects * Add graph cancellation API * port.{h,c}: use `bt_bool` instead of `int` where appropriate * ir: utils: use `bt_bool` instead of `int` where appropriate * ir: fields/field-types: use `bt_bool` instead of `int` where appropriate * ir: clock class: use bt_bool instead of int for boolean properties * Do not use `bool` type; use new `bt_bool` instead * Update include/babeltrace/babeltrace.h * Add extras/gen-babeltrace-h.py: include/babeltrace/babeltrace.h generator * Move library's version API to include/babeltrace/version.h * include/Makefile.am: add titles (comments) to groups of files * Remove "end of trace" notification headers * Normalize public header include guards * lib/ref.c: add logging * lib/ctf-ir/clock-class.c: add logging * test_ctf_writer.c: remove negative index tests * lib/ctf-ir/attributes.c: add logging * ir: attributes: fix index and count integer types * lib/values.c: add logging * tests/lib/Makefile.am: fix check_ vs. noinst_ prefix * cli: add logging * common: optimize color code functions * Fix CLI to work with multiple ports and dynamically added ports * Add logging API (internal to log, public to set the current log level) * bt_common_shell_quote(): accept new parameter `with_single_quotes` * Rename tests/bin -> tests/cli * configure.ac: define BT_ENABLE_DEBUG_INFO depending on the support * ctf.fs source: metadata: fix error paths * tests/bin/test_convert_args: fix after updating CLI * tests: put TESTS list in each Makefile.am * plugins/ctf/fs-src/data-stream.c: fix text width * babeltrace-internal.h: remove unused declarations * Do not use printf_warning() in the library * Rename writer.writer -> ctf.fs (sink) and standardize plugin descriptions * Rename debug_info.debug_info -> lttng-utils.debug-info * debug-info.debug-info: do not use global opt_* symbols anymore * Fix: ir: bt_ctf_field_type_variant_validate(): do not compare to tag length * Subscribe to notifications when creating a notif. iterator * notif-iter.c: fix warnings * Make bt_ctf_event_class_create() create an empty context FT * Add bt_ctf_stream_class_create_empty() * Remove BT_CTF_FIELD_TYPE_UNTAGGED_VARIANT * Internalize trace listener API and bt_ctf_trace_get_metadata_string() * ir: make bt_ctf_trace_create() create an empty packet header FT * utils.muxer: add and handle `ignore-absolute` parameter * Remove default port API * trace.h: API doc: do not mention listener (now internal) * visitor-generate-ir.c: fix some error reporting terms * visitor-generate-ir.c: set trace object's UUID * Rename bt_ctf_trace_get_byte_order() -> bt_ctf_trace_get_native_byte_order() * ir: add trace UUID getter and setter * utils.muxer: fix bad behaviour caused by notification buffering * Set private port's user data on creation * Remove bt_ctf_stream_class_get_event_class_by_name() * test_trace_listener.c: fix: set trace's native byte order * Standardize *get_*() functions * Make libctfcopytrace a convenience lib. and link to it in plugins * Standardize *get_*_count() functions * ISO C: empty file needs at least one declaration * Rename CTF IR integer FT signedness functions to use "is" * Rename bt_ctf_clock_class_get_is_absolute() -> bt_ctf_clock_class_is_absolute() * text.pretty: use "path" param. name instead of "output-path" * Add static trace tests * Add the concept of a static trace * Add bt_ctf_trace_get_stream_count() and bt_ctf_trace_get_stream() * Add bt_plugin_set object * ctf: bt_ctf_notif_iter_get_next_notification(): require CC prio. map * Use bt_clock_class_priority_map_add_clock_class() to change a priority * Add bt_clock_class_priority_map_copy() * field-types.h: API doc: add missing prehot{} * Freeze bt_clock_class_priority_map in related notifications * Add notification iterator tests * Notification iterator: generate automatic notifications when missing * Remove notification-schema.h: not needed for 2.0 * utils.dummy: handle AGAIN and END statuses correctly * text.pretty: handle AGAIN status * utils.muxer: fix unhandled connected ports during notif. iter. init. * text.pretty: fix handle_notification() * utils.muxer: fix behaviour with ports connected during next/init ops * Add basic utils.muxer tests * Add utils.muxer component class * bt_plugin_create_append_all_from_dir(): use printf_verbose() instead of error * Event notification: validate that CC in the CC prio map have a value * event-class-internal.h: fix include warning * text.pretty: remove unused debug info options * text.pretty: use clock class with highest priority to print the timestamp * Add bt_plugin_find_component_class() * Fix: ctf: notif-iter.c: update_clock() uses the wrong FT sometimes * ctf.fs: make clock classes absolute when it's an LTTng metadata * Use the same values for different status codes * Add bt_component_class_is_source/filter/sink() * Add bt_port_is_input(), bt_port_is_output() * Add bt_component_is_source(), bt_component_is_filter(), bt_component_is_sink() * Fix a few include warnings * plugins/ctf/fs/metadata.c: remove invalid return code assignment * bt_component_create(): create convenient empty map parameters when NULL * Add BT_NOTIFICATION_ITERATOR_STATUS_AGAIN status * test_graph_topo: test both "port connected" and "accept port connection" * Add "port connected" component class method * Rename text.text sink CC to text.pretty * Rename lib/component/ -> lib/graph/ to match include/babeltrace/graph/ * Add `-internal` suffix to all internal header files * Add bt_version_get_*() functions to dynamically get the lib's version * .gitignore: ignore gcov files * ctf plugin: add CTF metadata decoder API * tests/lib/common.c: add missing includes * bt_notification_event_create(): validate and freeze event * Add inactivity notification * Add frozen property to notification objects * ir: bt_ctf_event_set_clock_value(): validate clock value's class * ir: make sure you can't add a SC to a trace with a native BO * CTF writer: restore native byte order is the CPU's native byte order * Rename bt_ctf_trace_set_byte_order() -> bt_ctf_trace_set_native_byte_order() * test_bt_ctf_field_type_validation: fix compiler warnings * Rename bt_ctf_type_id -> bt_ctf_field_type_id (and the enumerators) * fix Makefile for libbabeltrace-ctf * fix warnings * fix missing libbabeltrace-ctf for libctfcopytrace * fixes after rebase on eepp-jgalar/fixes-mar-7 * Text: handle output file * text: escape control sequences characters * Support for --clock-offset and --clock-offset-ns * Text output identical with babeltrace 1 * fix: missing equal sign when printing events without colors * debug-info filter plugin * Make bt_ctf_field_structure_set_field public * cleanup error paths in trimmer, writer and ctfcopytrace * trimmer: Update the bounds of the trimmed packets * Fix graph facilities handling in writer component class * fix trimmer compiled library name * writer: create event classes lazily * libcopytrace: export ctf_copy_event_header * Override clock fields in copied traces * Create a library to copy a CTF trace * Allow to set the size of an integer type * Fix writer: leak of the event classes * Fix writer: missing put ref to values and types * Fix writer: leak of the header fields * Rename converter/ -> cli/ (it's more than a converter now) * Event notification: pass CC priority map on creation * Remove Babeltrace 1 files and reorganize the tree * ctf.fs: bt_ctf_notif_iter_create(): assert() that all medops exist * trace.h: update API doc * tests: add clock class priority map tests * Add clock class priority map object * ctf.fs: split streams, one per port * Add user data for private port * Add graph topology tests * Call a single "ports connected/disconnected" graph listener instead of two * Fix: call acting component's "port disconnected" method too * bt_graph_connect() -> bt_graph_connect_ports() * Rename -> * Update notification iterator's "init" function signature * Remove the need to implement the notification iterator's "get" method * "destroy" method -> "finalize" method * Accept port connection method: take other port as parameter * Visibility: split graph API into public and private interfaces * Add graph event listeners * Allow a component to remove a port and any user to disconnect one * Put Python plugin support in a separate shared object * Add `babeltrace convert` argument tests * CLI: add `run` command and make `convert` command use it * Fix: missing reference release in field reset * Fix: bt_connection_get_*_port() must take a reference on port * Fix: only remove newly added components on connection error * Fix: only add components to graph if they are not already present * Fix: release the reference held by a child to its former parent * babeltrace-cfg.c: do not allow duplicate -v option * babeltrace-cfg.c: add "Command line error" prefix to error messages * babeltrace-cfg.c: do not infer text.text sink with -v * babeltrace(1): add --filter option to create filter components * babeltrace(1): escape '.' in PLUGIN.COMPCLS arguments * common.c: bt_common_colors_supported(): add a few supported terminal prefixes * Return component port counts by parameter * Remove component prefix from graph, connection and port filenames * Add missing include in component-sink-internal.h * Build and run hard-coded component graph in babeltrace.c * Use graph facilities in dummy sink component class * Use graph facilities in text component class * Use graph facilities in trimmer component class * Use graph facilities in writer component class * Add missing forward declarations to component-class.h * Replace add_iterator methods by a single new_connection method * Implement the component graph interface * Hide bt_component_sink_consume * Hide filter iterator creation functions * Hide source iterator creation functions * Hide filter creation functions * Add ports to the source, filter and sink component interfaces * Add the component port interface * Text: print unknown enumeration mappings in red * Implement the component connection interface * Text: tone down the rainbow text color scheme * Rename "query info" to "query" everywhere, and "action" to "object" * text: mask some internal fields * Add the verbose parameter to the legacy text options * babeltrace(1): support -o metadata legacy option * ctf.fs source: add `get-metadata-info` query info action * babeltrace(1): print value with colors * babeltrace(1): add the query-info command * babeltrace-cfg: put comp. class type within struct bt_config_component * bt2: test query info API * bt2: add support for the "query info" API * bt2: raise when bt2.create_plugin_from_name() finds nothing * Add query info API tests * SO plugin API: add comp. class query info method macro and use it * Add bt_component_class_query_info() API * babeltrace(1): handle legacy -o dummy option * Add utils.dummy component class, move plugins/trimmer to plugins/utils * text plugin: add color support * babeltrace(1): add --connect option and connection management * babeltrace convert: add --name option * babeltrace(1): add help command * babeltrace-cfg.c: improve error messages * Make babeltrace(1)'s CLI Git-like and implement the list-plugins command * babeltrace.c: replace printf_verbose() with printf() where appropriate * Cleanup babeltrace-cfg, use BABELTRACE_PLUGIN_PATH * bt2: test comp. class help attribute * bt2: add support for comp. class help * Add shared object comp. class help attribute test * Shared object plugin: add component class help support * Add component class help property * bt2: add create_plugin_from_name() * Add bt_plugin_create_from_name() tests * Add bt_plugin_create_from_name() * Add support for plugins written in Python * Add Babeltrace 2 Python bindings tests * Add Babeltrace 2 Python bindings * bt_ctf_event_set_clock_value() does not need a clock class * Add bt_ctf_clock_value_get_class() * Install notification headers in babeltrace/component/notification * component.c: return NULL when there's no name, not "" * component.c: iterator init method is optional * Writer fix: set packet size to 0 on flush failure * Writer: only reset automatically-set fields * Writer: introduce try_set_structure_integer_field * Writer: set the discarded events's value before serializing * Writer: validating the packet header is not necessary * Tests: add empty packet writer test * Fix: only serialize a field if it is set * Fix: log structure field name on serialization failure * Tests: rename empty packet context test * Rename *create_iterator*() -> *create_notification_iterator*() * Add bt_component_*_create_iterator_with_init_method_data() * Remove unused bt_component_class_filter_init_iterator_method * Tests: close writer object before reading the trace produced * Fix: missing NULL check in ctf_fs_iterator_destroy_data * Test: remove produced trace at the end of the empty packet test * Clarify plug-in ABI version logging on plugin load * Add missing .gitignore entries * Tests: add the plugin tests to the make check target * Fix: add missing NULL check in ctf_fs_destroy_data * Fix Makefile.am files regarding headers * Rename input.h -> component-input-internal.h * Set notification iterator methods to the component class * plugin-dev.h: put selector (type) close to union in structures * Plugins: use UNUSED_VAR instead of casting to void * Add bt_component_create_with_init_method_data() * babeltrace.c: print plugin version when available * Add tests for plugin version * Add plugin (user) version information * Add bt_component_class_freeze() * Prefix {source,filter,sink}*.h file names with component- * Refactor the component class and component API * Move enum bt_component_type to component.h * Refactor the plugin registration and loading machinery * Add bt_plugin test * Decouple component class from plugin subsystem, remove component factory * ref.h: doc: fix typo * Writer: don't allow more than one packet without packet context * Tests writer: write a trace defining no packet context * Writer: minimize packet padding * Writer: support traces defining no packet contexts * Update test_ctf_writer.c header * Fix text plug-in: missing function name change * API doc: document include files and how to build * ref.h, values.h: doc: add #include in description * API doc: update main-page.dox * API doc: add more details about reference counting * values.h: doc: rephrase map foreach callback ref * Fix API doc's content and style for enum. FT mapping iterator * Fix: bt_config_init_from_args has no ownership of cfg * Fix: prepend to $program_transform_name instead overriding it * Docs: document enumeration mapping iterator API * Docs: add documentation for bt_ctf_field_type_enumeration_find_mappings* * Add missing bt_ctf_field_type_enumeration_mapping_iterator declaration * Remove bt_ctf_field_type_enumeration_get_mapping_name * Modify bt_ctf_field_enumeration_get_single_mapping to return iterator * Fix: memory leak when using mapping iterator * Fix: check enum overlap as long as the type is not frozen * Fix: allow duplicate keys and overlapping ranges in enumerations * API doc: add int/float field type examples * stream-class.h: doc: fix trace/packet instead of stream/event * Document fields.h (API) * field-types.h: doc: bt_ctf_field_type_copy(): add not frozen @post * field-types.h: doc: fix missing plural * doc/api/README.adoc: fix double "followed by" * field-types.h: doc: add note about freezing * Test fix: a stream class' clock must be associated to its writer * ir: add bt_ctf_clock_class object, modify bt_ctf_clock object * ir: stream: add bt_ctf_stream_is_writer() * Fix: remove assert() for existing SC field types * Only output configuration diagnostic information in verbose mode * Update .gitignore * Generate a binary looking for in-tree plug-ins * Trimmer fix: don't emit end of trace on out-of-bound event * Trimmer fix: forward evaluation result to downstream components * Clean-up indentation in babeltrace-cfg.c * ctf-fs fix: only apply timestamp end field on packet end * Fix: don't attempt to mmap packet at end of file * Fix: print usage even if omit arguments are received * Fix: integration of legacy mode with implicit source * Tests: adapt writer tests as IR now allows NULL headers and contexts * Stop trimmer iteration when end bound is reached * Fix: passing NULL to glib mapped file unref function is not allowed * Fix IR visitor: set min alignment on structure field type * Fix: don't use implicit source in legacy mode * Fix: babeltrace launch wrapper script * Use build tree plugins when executing from build tree * Move print level of duplicate component warning to verbose * Handle system and home plugin paths * Fix: params arg parsing: apply to current component params * Implement implicit source component * Remove unused index version fields * Build CTF stream indexes from LTTng index files * Add timerange, begin, end parameters * trimmer: error checking, reporting, begin > end check * trimmer: infer end date from begin date * Support standard timestamp formats for begin/end * Trimmer: Filter-out packet that are not in the specified range * Rename bt_notification_packet_start to "begin" * Fix: handle size 0 CTF fs streams * Writer fix: don't skip first notification * Writer: null contexts are not an error * clock working * fix: missing free on error path * use GString instead of non-portable char[PATH/NAME_MAX] * fix: add .a of the ctf writer plugin in Makefile * CTF Writer sink * Add a trimmer component to the graph if begin/end options are used * Additional check added to bt_component_sink_validate * Implement bt_notification_iterator_set_seek_time_cb * Clean-up notification iterator creation function * Add filter component creation and validation callback * Add branch prediction hints in ref count interface * Clean-up: Add missing forward declaration * Add bt_notification_iterator_seek_time_cb to notification iterator * Implement the filter base class validation and creation * Implement the trimmer plug-in * Add a "set" attribute to component begin/end config * Component iterator points to first notification on creation * gitignore TAGS and cscope * Clean-up component-class internal header * Implement the Component Graph API * field-types.h: doc: use FT/field aliases * doc/api: Doxyfile: add FT/field aliases * trace.h: doc: add missing end of group * packet.h: doc: add missing end of group * Document field-types.h (API) * values.h: doc: fix doc * trace.h: doc: ctfirfieldtype -> ctfirfieldtypes * doc/api/dox: update pages * api/doc: update Doxyfile.in and add custom layout file * bt_ctf_field_type_get_byte_order(): support enum FT * field-types.c: check that we don't add self FT to struct/var FT * API doc: CTF IR writer -> CTF writer * Add trimmer plug-in skeleton * Fix compiler warnings * Cleanup: object-internal.h static inlines * Fix: ctf_fs debug variable should be extern * Docs: allow NULL packet, stream and event headers, contexts and payloads * Allow NULL bt_ctf_packet_set_header and bt_ctf_packet_set_context * Handle NULL stream/packet/event headers, contexts and payloads * text output plugin: print time delta * text output: wire up clock options, error checking * Remove callsite text output code * Print other fields * Allow NULL (unset) packet, stream and event headers, contexts * Add time seek interface stub * Move component iterator creation to base component class * event.h: doc: put @cond/@endcond on single lines * ref.h: doc: clarify descriptions * API doc: add notes about automatic resolving * Document field-path.h (API) * event.h: doc: add missing parameter * API doc: add missing @postrefcountsame conditions * API doc: add #include line in the detailed description * Document event.h (API) * stream.h: doc: add missing type doc * event-class.h: doc: reorder functions * trace.h: doc: fix HTML tag * babeltrace-cfg: add the --path option * babeltrace-cfg: always copy the parameters of component instances * trace.h: doc: various fixes * stream-class.h: doc: add freezing postcondition * stream-class.h: doc: add note about CTF IR writer-only API * Document stream.h (API) * Document utils.h (API) * Document visitor.h (API) * Rename visitor and element names * Use components specified on the command line * babeltrace-cfg: fix terminology (component instance vs. class) * babeltrace-cfg: replace " with ` in messages * babeltrace.c: show beginning and end timestamps if available * babeltrace-cfg: add begin/end NS options * babeltrace-cfg: add --base-params and --reset-base-params options * values.c: completely initialize the bt_value_null_instance object * ref-internal.h: do not increment ref count if release not set * test_bt_values.c: test bt_value_map_extend() * values: add bt_value_map_extend() * babeltrace.c: fix printing issues * babeltrace-cfg: use --params to set parameters of latest instance * Document trace.h (API) * Document packet.h (API) * Document stream-class.h (API) * Document event-class.h (API) * Document values.h (API) * Document ref.h (API) * doc/api: add README.adoc * Add Doxygen support to build system to build the API doc * Allow ctf-writer to use new time-keeping facilities * Add a shadow HT to query event classes by id * Implement proper notification comparison * Print timestamps in text plug-in * Replace hackish use of bt_ctf_field_validate by is_set * Fix logging typo * Implement bt_ctf_field_is_set() * Implement bt_ctf_clock_value interface * Track clock states in notification iterator * Freeze original field type copied on validation * Add trace name attribute * Add logging to validation and serialization failure paths * fix leak in structure validation logging * Handle empty strings in the notif-iter btr_string callbacks * Allow stream_id change in event class attributes * Add field validation logging * remove double bt_put * Text output plugin argument parsing * Implement output text plugin (basic) * Fix: documentation: refer to bt_put() * fix initialize stream which may be used in error paths * Coding standard clean-ups * fix leak of event class * fix leak of variant field path * stream leak in ctf_fs_iterator_next * Remove superflous set_current_packet_content_sizes * Add bt_notification_get_stream interface * Merge streams in ctf fs component * Validate notification type before casting * Remove unnecessary check of release callback on bt_ref_get * Large performance improvement by caching event class name and id * Fix: ensure that a stream class is not associated to a trace * Fix: SIGBUS error on reading past a file's end in mmap'ed region * Allow user data in heap compare function * Test bt_notification_heap * Implement the notification heap interface * Add bt_notification_heap interface * Validate ref count opt-in in bt_ref_get * Null check of plug-in properties in debug output * Make --plugin-path optional * Add bt_ctf_field_variant_get_tag * Fix space indentations * Add missing line-feeds in logging * Add support for statically-built plug-ins * Add bt_ctf_event_get_packet * Wrong file name in ctf/plugin.c header * Add test_ir_visit and test_trace_listener to the test list * Fix verbose and debug mode options * ctf-fs: missing component->streams NULL check * converter: parse 1.x and 2.0 options * Fix libadd referring to text plugin * Add missing text plugin files * Missing btr makefile * Add missing event notification implementation file * allow multiple ctf streams to be open * Rename correlator to muxer * Fix packet switch bug * Implement filter component type * Add filter component type * Sinks own their input iterators * text: Remove stream_timestamps hashtable * Docs: bt_ctf_stream_class_add_event_class comment typo * text: wip event formating * Fix source component memory leak * add end of stream notification * Plugins are alive! * add debug printout * Fix: uninitialized use of ctf_fs * Add reading loop to babeltrace binary * Implement notification iterator wrappers * Implement ctf fs iterator functions * Fix: path value retrieval memory leak * Init ctf fs data and metadata streams * Move remaining protorectoral files to ctf fs plugin * Accomodate component destructor API changes in text plugin * Add ctf fs iterator initialization * Check for NULL user destroy in iterator * Code standard cleanup * Implement base iterator interface * Add notification utility library * Add implementation of bt_component_source_set_iterator_init_cb * Cleanup ctf/fs/Makefile.am * Add bt_component_source_validate() implementation * Integrate ctf proto into the plugin build system * destroy_text must conform to bt_component_destroy_cb * Add ctf fs component skeleton * Reorder bt_component_status enum * Remove weird character from ctf-btr.h * Remove bt_ctf_clock_create_empty() usage * Add ctf-reader prototype * ir: make bt_ctf_field_type_copy() public * Tests: NULL clock names are now allowed * Add documentation to bt_ctf_clock_set_name * Allow NULL clock name * ir: allow the creation of an empty clock (nameless) * Workaround glib g_module_open bug * Missing dirent include in component-factory.c * Recursively search the plugin path * Tests: add trace listener interface test * trace listener test * Clean-up: use COMMON_TEST_LDADD to simplify Makefile * Implement trace listener interface * Change "handler" terminology to the more specific listener * Tests: add visitor interface test * Add CTF-IR visitor interface * Add trace moficiation notification handler interface * Docs: fix comment * Cast destroy_text to bt_component_destroy_cb * Update text plugin skeleton * Take ownership of component class in bt_component_source_create * Implement bt_component_sink_set_handle_notification_cb * Register sink components to the event notification by default * Implement sink validation function * Call plugin exit function before unloading * Implement bt_component_set_destroy_cb * Fix error check not checking for BT_COMPONENT_STATUS_OK * Make component class destructor optional * Update copyrights * Clarify bt_component_sink_handle_notification_cb semantics * Clarify bt_component_destroy_cb semantics * Clean-up in babeltrace.c * Leak fix * Add bt_component_sink_register_notification_type * Initialize component class init callback * Remove bt_component_set_error_stream * Warn on duplicate component class registration * Don't load plug-ins recursively by default * Bump library version to 2.0 * Install plugins in $(libdir)/babeltrace/plugins * Plugins: rename reader -> fs, and symbols.c to plugin.c * Plugins: remove unnecessary stuff in Makefile.am files * Move plugin system sources to lib/plugin-system * Strip babeltrace.c * Add base plug-in skeletons * List detected component classes * Fix header guard * Component creation * Introduce public component class interface * Remove specialized reference counting functions * Plugin symbol resolving fix * Coding style fix * Build fix * text plugin test * Create sink plugins * Discover plugins in converter.c * Adapt plugin system to use unified reference counting * Add ctf-text entry point initialization comment * ctf-text plugin stub * Resolve plugin symbols * Introduce bt_plugin and bt_component_class * Load plugins and components * Start of bt_component_factory implementation * Docs: plugin-system.h documentation * Move initialization of components to init functions * Missing Makefiles * Add iterator and source implementations * Remove unneeded __cplusplus externs from source internal header * Implementation of bt_component_sink_handle_notification * Build fix and sink implementation * Rename plugin.c to component.c in Makefile * Rename plugin implementation to component * Rename to separate the plug-in and component notions * Rename plugin-internal.h to component-internal.h * Missing notification parameter in bt_component_sink_handle_notification * More modifications * Integrate modifications after plugin review * Add options to ctf-text plugin * Implement ctf text output plug-in stub * Build system: build reader plug-in stub * Add initial plug-in stubs * More build fixes * build fixes * remove extra line in reader * Implement source plugin base * Error stream is now an attribute of the base plugin class * Implement plugin base class * Start ctf reader implementation stub * Add headers to build system * Notification interfaces * Add notification documentation * iterator documentation * Add notification iterator documentation * source interface documentation * plugin-system.h documentation * Add missing header plugin-system.h * Minor fixes * Add javadoc documentation of plugin-lib interface * Javadoc fixes * Comment plug-in error codes * Document plug-in interface * Plug-in system update * Add discarded events notification type * Plug-in API corrections * Reader plugin skeleton * Add plugin base implementation * Add plugin interface to build system * Initial plug-in interface draft * Port: Add glib g_mkdtemp to mkdtemp wrapper * Port: Use glib g_mkdir * Cleanup: bt namespace for compat glib * Cleanup: bt namespace for compat memstream.h * Cleanup: bt namespace for compat timegm * Cleanup: bt namespace for compat strerror_r * Use glib portable macros to convert gpointer to int * ax_lib_elfutils -> bt_lib_elfutils * m4/ax_lib_elfutils.m4: use m4_default() for optional args. * m4/ax_lib_elfutils.m4: add cache variable * Fix: text output missing separator when printing the domain * Fix: perform an explicit stdout flush in live even on empty packets * Fix: documentation: output plugin is called ctf-metadata * Fix: Use autoconf provided grep in test_formats * babeltrace: add test for babeltrace --list * Add empty plug-in hooks to prevent their elimination by the linker * Remove useless PACKAGE_LIBS substitution * Do not use g_quark_from_static_string in unloadable code * CTF writer: Add function to add an integer environment field value * python: Add stream event context support * debug info: Call register_event_debug_infos for all events * Typo: configure.ac implemenation -> implementation * configure: fix uuid support detection on static build * Fix: don't assert on lib unload failure * Use lib unload events to prune library mappings * Rename handle_dlopen_event to handle_lib_load_event * Use lttng-ust's new load event to track library mappings * Tests: no substitution needed for multi-trace intersection test * Tests: dereference of NULL pointer on allocation failure * Tests: abort dwarf test on open() failure * Fix: lttng-live does not set a trace descriptor * Tests: Unchecked return value in test_ctf_writer * Tests: unchecked return value in test_ctf_writer * Tests: Add missing --merge LOG_DRIVER_FLAGS * Fix: strerror_r behavior is glibc specific * sys/param.h is required for MAXNAMLEN on musl libc * Tests: unchecked return values in test_ctf_writer * Tests: Unchecked return values in test_ctf_writer * Tests: unchecked return values in test_ctf_writer * Tests: Unchecked return value in test_ctf_writer * Fix: undefined bit shift operation when printing octal numbers * Fix: Wrong variable checked in bin_info_child_die_has_address * Fix: unchecked bt_ctf_field_type_set_alignment return value * Fix: unchecked return value of bt_ctf_field_type_variant_get_field * Fix: validate return value of bt_ctf_field_get_type_id * Fix: Only close valid fds in is_valid_debug_file * Fix: Free die_name in bin_info_lookup_cu_function_name * Fix: Don't dereference null ptr in error path * Standardise spelling of debug info * Fix: typo in --disable-debug-info in configure error message * Docs: change --clock-raw to --clock-cycles * Display binary location even if source and symbol lookups fail * Copy bindings sources to build directory * bootstrap: Standardize on autoreconf -vi * Move Python bindings to babeltrace subfolder * Tests: Multi-trace stream intersection test * Change behaviour of stream-intersection with multiple traces * Python bindings: PEP8 mandates two blank lines before class * Fix: ctf-text: signed base 8, 16 printout * Fix: debug-info feature enable/disable * Fix: swapped libelf and libdw names in configure error message * Don't use the .so extension on test assets * Fix: warnings on Solaris10 * Add missing generated tests to gitignore * Fix: report error when lttng-live is provided with an IPv6 address * Fix: invalid mix of ctf_type_id and bt_ctf_scope enums * Fix: PATH_MAX requires limits.h on OS X and Solaris * Static build fix: change link order of libtestcommon.la * Clean-up: change space indentation to tabs * Test fix: clean trace files left behind by test_ctf_ir_ref * Clean-up: Missing space after cast operator * Fix: overflow of signed integer results in undefined behaviour * Fix: potential close() of uninitialized elf_fd * Clean-up: add missing new line after end of function * Clean-up: remove extra newline in bin-info.c * Clean-up: fix comment style in bin-info.c * Add tap-driver.sh from automake * Tests: skip certain bin-info tests on failure to prevent segfault * Tests: strip ELF symbols from debuginfo-data executables with separate DWARF * Python bindings: add has_intersection property to TraceCollection * Python bindings: make intersect_mode read-only property * Tests: Add missing debuginfo files to dist * Use tar-ustar format for dist * Tests: Replace prove by autotools tap runner * Cleanup test scripts * Fix: Don't clean test scripts * Fix: Make test_dwarf and test_bin_info tests work out-of-tree * Handle test_ctf_writer_complete like the other tests scripts * Fix: let automake handle CLEAN and DIST * Fix: Remove test_seek_empty_packet and test_seek_big_trace from SCRIPT_LIST * configure: introduce new macro AX_LIB_ELFUTILS * Docs: fix typos in babeltrace-log(1) manpage * Docs: update debuginfo doc * Add configure report * configure: check for elfutils (libelf and libdw) >= 0.154 * Set the minimal version of elfutils to 0.154 * Doc: Add elfutils to README * Typo: succesful* -> successful* * Fix: return -1 on bin_info_lookup_dwarf_function_name failure * Harmonize spelling of debug-info * Warning fix: pointer may be uninitialized if assertions are disabled * Indicate default debug-info build settings in configure help * Disable debuginfo by default on Solaris and OSX * Docs: Add --debug-info-target-prefix to man page * Add source and information to regenerate debuginfo-data * Use bool where possible in dwarf and bin-info * Rename so-info to bin-info * Use printf_debug/verbose in so-info * Fix: update tests for new dwarf func name output * Update debuginfo to match UST event rename * Use g_build_path for DWARF build_id lookup * Add --debug-info-target-prefix * Refactor offset string printing out of ELF and DWARF lookups * Print offset relative to function when using DWARF * Print bin location first * Add binary location information * Fix: prevent uninitialized use of elf_file * Only set so info ELF file when needed * Use is_pic field instead of reading ELF header * Fix: make short_src_path from src_path * Tests: clean generated tests scripts * Tests: Add missing test scripts to gitignore * Tests: Use AC_CONFIG_FILES to generate test scripts * Docs: Add debug-info option to BABELTRACE(1) * Print "binary+offset" when function name can't be resolved * Fix: Don't skip binary path print-out in ELF-only case * Show binary path as part of debug info * Add --debug-info-full-path option and shorten source name * Rename opt_debug_dir to opt_debug_info_dir * Clean-up: mark test symbols as static * Fix: Remove traces left over from ctf-writer tests * Fix: cast of 64 bit addresses from trace to 32-bit pointer * Tests: dynamically create test list based on enabled features * Add intersect mode to python bindings * Add bt_ctf_iter_create_intersect to CTF iterator API * Clean-up: remove dead assignment * Tests: erroneous check after bt_ctf_clock_set_offset_s * Docs: add high-level debug info doc * Tests: add unit tests for so_info * Tests: add unit tests for bt_dwarf * Initial implementation of the debuginfo API * Fix: lttng-live flush when output to file * Fix: lttng-live use g_free rather than free * Store "tracer_name" from the trace's environment * Fix: Missing pointer dereference in NULL check * Fix: leak of stream intersection positions * Remove useless bt_iter when creating intersection * Add new test artifacts to .gitignore * Tests: use templates for stream intersection and packet_seq_num * Tests: fix OOT build by adding test scripts to noinst_SCRIPTS * Docs: Add --stream-intersection to the BABELTRACE(1) man page * Rephrase error message * Test the stream intersection feature * Option to only show streams' intersection * Tests for packet_seq_num handling * Fix: lttng-live data_size and version endianness * test_ctf_ir_ref.c: fix coding style * test_ctf_writer.c: test packet functions * Fix: do not set event's parent to a non-writer stream * ir: bt_ctf_stream_append_event(): do not always reset parent * ir: bt_ctf_event_set_packet(): check for common stream class * test_ctf_ir_ref.c: fix indentation * test_ctf_ir_ref.c: test all permutations of put * Solaris build fix: missing inclusion of endian.h * ref.h: add C++ guards * test_ctf_writer.c: test bt_ctf_clock_ns_from_value() * Cleanup: lift function call outside of condition * ir: add bt_ctf_clock_ns_from_value() utility * ir: move clock value accessors to writer header * test_ctf_writer.c: test writer/non-writer clock value accessors * ir: move bt_ctf_stream_class_set_clock() to writer header * ir: disable clock value accessors in non-writer mode * ir: add bt_ctf_event_get_clock_value() * ir: bt_ctf_stream_append_event(): do not append event with parent * ir: remove unused event header/context fields from stream * ir: add optional name property to stream * test_ctf_writer.c: test bt_ctf_stream_create() * ir: make bt_ctf_stream_create() public * test_ctf_writer.c: test stream class clock -> trace clock * ir: bt_ctf_trace_add_stream_class(): add stream class's clock * ir: remove unused bt_ctf_event_copy() * ir: verify stream mode in stream functions * ir: freeze event on bt_ctf_stream_append_event() * ir: add bt_ctf_event_freeze() * ir: add bt_ctf_field_freeze() * ir: remove bt_ctf_trace_get() and bt_ctf_trace_put() * ir: move writer-specific declarations to writer header * ir: remove event header accessors from stream * ir: add bt_ctf_event_set_packet() * ir: add public bt_ctf_packet object * ir: move the stream event ctx field to the event * ir: remove unused event_headers member from struct bt_ctf_stream * ir: validate integer FT's mapped clock against signedness * ir: clock: use value in cycles instead of ns * ir: freeze mapped clock when freezing integer FT * ir: freeze clocks when freezing a trace * ir: split event files into event and event-class files * ir: rename event-fields/event-types -> fields/field-types * ir: rename ctf_type_id -> bt_ctf_type_id * ir: rename ctf_string_encoding -> bt_ctf_string_encoding * ir: rename bt_ctf_field_path_get_root() * ir: rename bt_ctf_node -> bt_ctf_scope * ir: add public bt_ctf_field_path object * ir: rename bt_ctf_field_type_variant_set_tag() * Add validation/resolving tests * test_bt_values.c: fix top comment * ir: freeze attributes when freezing an event * Fix scan-build warning of potential NULL dereference * ir: refactor FT validation and resolving * ir: allow to set variant FT's tag FT even when frozen * ir: add internal bt_ctf_field_path_clear() * ir: validate field types on field creation * values: fix indentation * ref.h: fix doc * values: add `_empty` prefix when relevant * BT_MOVE(): call bt_put(_dst) * Fix: bt_ctf_field_type_floating_point_copy(): set self references * Add bt_ctf_field_type_compare(): field type deep comparison * ir: event-types-internal.h: fix comment * ir: add user byte order to integer/float types * test_ctf_writer.c: assert() unchecked return values * ir: bt_ctf_stream_class_set_byte_order(): EC is already frozen * Python bindings: remove unnecessary semi-colons * Python bindings: missing error check in Clock precision setter * Python bindings: accomodate API changes introduced for negative time * Remove stale comment from event destructor * Handle negative time and offset from Epoch * Fix: CTF parser: accept signed constant literals * Fix: out-of-bound memory access * Fix out-of-tree tests: seek tests can't find traces * Tests: Fix test plans and do not skip on fail * Fix: Check return value of fpathconf * Fix: BABELTRACE_HAVE_LIBC_UUID misspelled as BT_HAVE_LIBC_UUID * Fix: check for socket lib before function checks * Port: Add OSX libuuid compat * Port: Add OSX mman.h compat * Port: Add OSX endian.h compat * Cleanup: remove unused label 'end' * Fix: Wrong variable checked for allocation failure * Implement new CTF-IR reference counting scheme * Use bt_put instead of bt_ctf_field_put as release callback * Clean-up bt_put() implementation * Object: Acquire reference to parent on first acquired reference * Tests: Add CTF-IR reference counting test * Return pointer when using bt_get() * Add internal bt_object reference count accessor * Docs: Document reference counting scheme implemented by Object * Add parented object memory management to the Object interface * Do not use g_list_free_full * Update version to 2.0.0-pre * Only compare "bison -y" to the basename of YACC variable * Python bindings: work around Python 3.5 behaviour change * Output a warning if packets are lost * Clean-up: Use memset() to initialize packet_index * Support ctf index version 1.1 * Cleanup: Don't hardcode include paths unnecessarily * Fix: include ctf-scanner-symbols.h to prefix yy_* symbols * Fix: missing includes break the out-of-tree build * Fix: memstream compat layer requires use of babeltrace_close_memstream * compat send no SIGPIPE: multithread-safe * Fix: truncated value in fgetc() usage * Fix: handle EINTR return value for bt_posix_fallocate * Configure: Add missing checks * Implement bt_getline * Fix: initialize getline linesize argument to 0 * Fix: warning, may be used uninitialized * Port: Replace dirent->d_type by stat S_ISREG * Port: Include config.h globally trough DEFAULT_INCLUDES * Port: Add compat for dirfd * Port: Add compat for mkdtemp * Port: Add compat for strnlen and strndup * Port: Use bash to run tests * Port: Implement faccessat wrapper * Port: implement posix_fallocate wrapper * Port: Set required compiler flags to use pthreads * Port: Add configure check for __attribute__ support * Port: cleanup and portability fix to configure.ac * Port: Add support for linkers with no support for 'no-as-needed' * Port: Add compat for platforms with no MSG_NOSIGNAL or SO_NOSIGPIPE * Port: Add AX_LIB_SOCKET_NSL macro to configure.ac * Port: Replace bzero() by memset() * Port: Add dummy.c to libcompat * Port: uname can return a positive value on success * Port: Replace NAME_MAX by MAXNAMLEN * Change UUID API prefix from babeltrace_ to bt_ * Port: Add Solaris libuuid compat * Port: Add Solaris endian.h compat * Port: make bootstrap script work on most shell * Fix: babeltrace-log packet seek * Fix: posix_fallocate() returns int > 0 on errors * Configure: add check for type * Configure: add check on headers * Configure: add missing check for used funcs * Fix: add compat for glib < 2.32 * Fix: make check in OOT build with absolute path * Fix: make check in out of tree build * Fix: 32bit values index_major/minor used as 64bit * Hide the packet_seq_num field * ir: add bt_ctf_field_type_sequence/array_set_element_type() * ir: do not cache variant type's alignment * Fix: test_ctf_writer: assert() without side effects * ir: empty structures are legal in CTF * ir: add field instance type ID helpers * ir: add bt_ctf_field_get_type_id() * ir: add field type ID helpers * Unify reference counting using a common bt_object base * ir: add bt_ctf_trace_get_stream_class_by_id() * ir: add internal field path getters * Rename bt_object to bt_value * ir: add BT_CTF_MOVE() * test_ctf_writer.c: use bt_ctf_put() everywhere * ir: consolidate reference counting functions * Fix: allow structure types to have a minimum align * test_ctf_writer: add type alignment tests * Fix: require power of two for type alignment * Fix: do not init. BO of enums/arrays/sequences * Build: Update m4 for bison & flex version check to match autoconf-archive file * Build: add version check on flex * Build: add version check on autoconf * Build: m4 macro for Bison version check * Test: Add a test to ensure multiple keywords can be used in a field path * Fix: Missing postfix_expression DOT keywords in CTF grammar * Fix: Create stream after adding its stream class to a trace * Fix: Remove overly-strict freeze check on variants and structures * Docs: A stream has no ownership of its trace * Fix: Missing NULL check in bt_ctf_field_sequence_destroy * Add test_bt_objects to .gitignore * ir: add tests for bt_ctf_field_variant_get_current_field() * ir: add bt_ctf_field_variant_get_current_field() * Clean-up: get_field_type should only have one return statement * Fix: bt_ctf_trace_freeze must fail if type resolving fails * Fix: Return a variant's alignment as 0 (undefined). * ir: copy variants and sequences when setting a field path * Fix: ir: disallow setting the alignment of certain types * ir: compute array, sequence and structure alignment dynamically * ir: support optional parameters in bt_ctf_field_type_variant_get_field * ir: support optional parameters in bt_ctf_field_type_structure_get_field * Clean-up: clean multi-line function call * Tests: fix possible null pointer dereference * Fix: Check validity of returned ctf_type_id * Fix: Missing check that token linked-list is not NULL * ir: validate sequence length fields and variant tags of stream classes * ir: validate sequence length fields and variant tags of event classes * ir: Implement a field type visitor to resolve dynamic scopes * ir: only perform trace freeze if not already frozen * Clean-up: line exceeding 80 chars in trace.c * Docs: add comment about bt_ctf_trace_add_stream_class validation * ir: add bt_ctf_field_type_variant_set_tag() * ir: add tag field path to variant field type * ir: add length_field_path to sequence field type * ir: add bt_ctf_field_path internal API * ir: add bt_ctf_field_type_variant_get_field_name_index() * ir: add bt_ctf_field_type_structure_get_field_name_index() * Clean-up: Missing space in event-types-internal.h * Docs: Updated available input formats on manpage * ir: add tests for bt_ctf_event_copy() * Fix: ir: match .h names for get/set_header() * ir: add bt_ctf_event_set_payload_field() * ir: add bt_ctf_event_get_payload_field() * ir: add bt_ctf_event_copy() (event deep copy) * ir: add tests for bt_ctf_field_copy() * ir: make bt_ctf_field_copy() public * Fix: ir: copy struct/seq/array NULL fields * Fix: ir: incr ref of existing sequence/array field * Fix: ir: return current variant's field if possible * Fix: ir: seq copy: initialize internal array * Fix: ir: bt_ctf_field_copy(): copy payload_set * objects: Doxygen: note about frozen copy * Docs: weird phrasing in Babeltrace(1) * Replace g_string_insert_len() by g_string_append_len() * Add tests for bt_ctf_field_string_append_len() * ir: add bt_ctf_field_string_append_len() * Add tests for bt_ctf_field_string_append() * ir: add bt_ctf_field_string_append() * Fix: return event timestamp in _timestamp_at_pos * Fix: ir: make sure "stream_id" attr is always right * Tests: add environment field can be added after stream creation * Fix: Allow the addition of environment fields to a frozen trace * Cleanup: Remove unused trace environment types * Cleanup: introduce internal bt_ctf_trace_freeze() * Move bt_ctf_attributes API to internal headers * Remove stale file from include/Makefile.am * Fix: possible NULL pointer dereference in CTF Writer/IR tests * Fix: Ensure assertions have no side-effect * Fix: Uninitialized return value in bt_ctf_event_class_get_id * ir: add tests for bt_ctf_event's stream accessor * ir: add tests for bt_ctf_stream_class trace accessor * ir: add trace accessor to bt_ctf_stream_class * ir: add stream accessor to bt_ctf_event * Cleanup: remove unused bt_ctf_stream_set_trace function * ir: add weak reference to parent trace to bt_ctf_stream_class * ir: add weak reference to parent stream to bt_ctf_event * ir: add tests for duplicate event classes * Fix: ir: make duplicate event classes check smarter * ir: add tests for event class attributes * ir: add attributes support to event classes * ir: make trace environment use bt_object * objects: Doxygen: bt_object_type: minor fix * objects: optimize loops by using i instead of x * objects: Doxygen: add cross-references * objects: Doxygen: more details on bt_object_null * objects: add bt_object_freeze() and more statuses * objects: make static functions also inline * objects: Doxygen: \i -> \em * objects: introduce enum bt_object_status * objects tests: bt_object_array_set() * objects: add bt_object_array_set() * objects: simplify destroy functions * objects: use GPtrArray instead of GArray * Fix: remove test_bt_objects from SCRIPT_LIST * Mark object type check functions as static * ir: add tests for bt_ctf_stream_class_get_event_class_by_id() * ir: add bt_ctf_stream_class_get_event_class_by_id() * ir: add tests for bt_ctf_trace_get_clock_by_name() * ir: add bt_ctf_trace_get_clock_by_name() * Add basic object system tests * Add basic object system * Change version from 1.3.0 to 1.3.0-pre * Fix: Don't increment automatic stream-id twice * Implement bt_ctf_trace stream class accessors * Tests: Add a bt_ctf_trace_get/set_byte_order() test * Implement bt_ctf_trace_get_byte_order() * Implement bt_ctf_field_type_variant_set_tag_name() * Fix: CTF 1.8 mandates that event "fields" must be a structure * Fix: check string payload for NULL before calling g_string_free() * Implement bt_ctf_event_class_get/set_payload() * Cleanup: move type_id initialization after byte order check * Add Variant and Sequence IR type validation checks * Remove alias getter from IR field interface * Mark internal IR field function pointers as const * Add bt_ctf_field_type_copy() which allows deep copy of IR types * Allow unset tags on variant field types * Update version to 1.3.0 * Fix: Ensure stream endianness is set when initializing event class * Fix: Check stream fd value before closing * Fix: missing allocation error check * Freeze event classes as they are added to a stream class * Tests: ensure that an event may be instanciated before its stream * Docs: event class must have a stream class before events may be created * Fix: Missing stdint.h in trace.h * Fix: Missing stdint.h in stream.h * Fix: Missing stdint.h in stream-class.h * Fix out-of-tree build for Python bindings + doc * Tests: Add tests for trace environment field accessors * Add trace environment field getters * Support the addition of integer trace environment fields * CTF-IR: Support unnamed streams * Fix: out-of-tree dist fails to find test traces * Fix running tests out of tree * Python: add Sphinx doc project * Python: writer.IntegerBase: remove redundant prefixes * Python: add reader.IntegerFieldDeclaration.size * Python: document writer.Writer * Python: document writer.Stream * Python: document writer.StreamClass * Python: document writer.Event * Python: document writer.EventClass * Python: document writer.StringField * Python: document writer.SequenceField * Python: document writer.ArrayField * Python: document writer.VariantField * Python: document writer.StructureField * Python: document writer.FloatingPointField * Python: document writer.EnumerationField * Python: document writer.IntegerField * Python: document writer.Field * Python: document writer.StringFieldDeclaration * Python: document writer.SequenceFieldDeclaration * Python: document writer.ArrayFieldDeclaration * Python: document writer.VariantFieldDeclaration * Python: document writer.StructureFieldDeclaration * Python: document writer.FloatingPointFieldDeclaration * Pytnon: document writer.EnumerationFieldDeclaration * Python: document writer.IntegerFieldDeclaration * Python: add top-level class writer.IntegerBase * Python: document writer.FieldDeclaration * Python: document writer.Clock * Python: document writer.EnumerationMapping * Python: examples: import explicit BT modules * Python: split API in reader/writer modules * Python: document IntegerFieldDeclaration * Python: document VariantFieldDeclaration * Python: document StringFieldDeclaration * Python: document StructureFieldDeclaration * Python: document FloatFieldDeclaration * Python: document SequenceFieldDeclaration * Python: document ArrayFieldDeclaration * Python: document EnumerationFieldDeclaration * Python: document FieldDeclaration * Python: document EventDeclaration * Python: document FieldError * Python: document Event * Python: document CTFScope * Python: document CTFTypeId * Python: document ByteOrder * Python: document CTFStringEncoding * Python: document TraceHandle * Remove print_format_list Python function * Python: document TraceCollection * Python: CTFWriter: forbid Stream.__init__() * Python: CTFWriter: add FloatingPointFieldDeclaration * Python: CTFWriter: FloatFieldingPoint -> FloatingPointField * Python: bt: do not expose ClockType * Python: remove useless 'return None' * Python: bt.py: PEP 8 + improve readability * Python: remove explicit inheritance from object * Python: decouple Python iface from native binding * Populate event header from mapped timestamp clock * Map default event header timestamp field to the stream class' clock * Fix: erroneous use of semicolon instead of comma in TSDL serialization * Fix: Don't freeze field type on addition to structure * Tests: fix misleading comment * CTF-Writer tests: Delete trace after test * Add support for clock mapping on integer field type * Docs: fix bt_ctf_clock_get_offset function header * ctf-ir: allow 1-bit signed integer types * ctf-ir: disallow creating a 0-bit integer type * Fix: missing paragraph in python bindings license (MIT) * Tests: Add event packet header accessors test * Tests: Don't use diag() to output errors from child processes * Cleanup: line over 80 chars * Add support for custom event headers * Cleanup: Use a switch case instead of conditionals * Fix: Field types native byte order refers to the trace * Fix: duplicate function declaration in stream.h * Test: Add a test that validates that empty streams are valid * Fix: lazy-mmap() streams when flushing * Fix: lock stream class after assigning stream id * Fix: handle 64-bit trace IDs on 32-bit systems * Fix: print format type mismatch warnings on 32-bit * Add utility function to validate CTF identifiers * Revert "Add event header accessors and support for custom event headers" * Fix: missing parenthesis in offset_align_floor * Add event header accessors and support for custom event headers * Tests: Add tests for stream class accessor * Add missing stream class accessor * Cleanup: Typo in bt_ctf_field_type_integer_create's documentation * Tests: Add tests for trace packet header accessors * Add stream packet header accessors * Add trace packet header accessors and support custom headers * Fix: Only allow setting a stream class when not frozen * Fix: allow empty CTF files * Revert test fix: uncomment trace unlink * Tests fix: Unchecked return value * Tests: Add event context accessors unit tests * Docs: Indicate that stream event context is sampled on event append * Add event context accessors * Docs: Remove extra underscore from function header * Fix: Check integer signedness in packet header when auto-populating * Docs: Add a comment about event validation in bt_ctf_stream_append_event * Cleanup: Misplaced end label in bt_ctf_stream_get_packet_context * Tests: Add unit tests for stream event context accessors * Add stream_event_context accessors * Cleanup: Remove unnecessary argument name * Tests: Add unit tests for stream event context accessors * Cleanup: Missing whitespace in comment * Fix: Only allow setting a packet context on a non-frozen stream class * Add stream_event_context accessors * Implement bt_ctf_field deep copy * Fix: Incorrect variant tag validation * Fix: Missing description NULL check in bt_ctf_clock when serializing * Fix: Ensure a packet context is a structure * Add comment indicating the type of ctf_traces' elements * Fix: sanity check in iterator creation * Fix: iterate manually over each live trace to add to catch errors * Remove duplicate include of unistd in test_ctf_writer * Fix: make sure we can exit the get_new_metadata loop * Fix: respect signed integers' length when printing in hex base * Ensure types used for index and count in CTF IR API match * Cleanup: Missing space after cast operator * Tests: add tests for the new trace and trace clock accessors * Add trace accessor to CTF Writer * Add clock accessor to CTF IR Trace * Reuse existing g_string instance when setting a clock name * Don't automatically generate a clock UUID in _bt_ctf_clock_create * Add missing trace-internal.h header file * Add an alias name attribute and accessor to CTF IR field type * Add internal nameless clock creation API * Add Trace CTF IR type * Python bindings clean-up: missing file headers style fixes * Docs fix: Change bt_ctf_writer_create_stream return description * Python bindings clean-up: file headers style fix * Change CTF IR header descriptions from CTF Writer to CTF IR * Detect Python packages directory on configure * Python bindings: fail configure if python version < 3.0 * Add PEP8 style guide requirement to the CodingStyle * Python bindings: Make bindings PEP8 compliant * Python bindings: Make examples PEP8 compliant * Python bindings: clarify invalid argument type exception * Python bindings docs: clarify add_event_class comments * Python bindings: Add packet context accessors * Documentation fix: add expected types to packet context accessors * Python bindings: Add UUID accessors to the Clock class * Clean-up: remove extra whitespace in ctf-ir/clock.h * Python bindings: cleanup whitespace * Python bindings: add "datetime" property to the Event class * Tests: check for < 0 rather than -1 specifically * Tests: cleanup extra whitespace * Tests: Add tests for new clock UUID accessors * Add UUID accessors to CTF-IR clock * Fix: scan-build warnings in CTF Writer/IR tests * Fix: offset_s and CTF clocks with frequency != 1GHz * Fix: incorrect compiler warning * Fix: Don't assume that PROT_WRITE grants read permissions * Fix: align objstack on 8 bytes * Fix Python: Add a comment warning about an API limitation * Replace usages of limits.h with the compatibility header * Tests: Return from main instead of calling exit() * Use BABELTRACE_HOST_NAME_MAX in test_ctf_writer.c * Add limits compatibility header * Fix: don't perform unaligned integer read/writes * Add stream packet header accessors * Reuse previously allocated string when setting value * Fix: bt_ctf_field_type_structure_add_field argument validation * Fix: mmap trace read the stream_id from the first packet * Fix: check the lttng-relayd protocol version * Fix: don't update the trace collection if no new streams were received * Remove logically dead code * Add Python bindings for CTF-IR stream getters * Tests: Add stream getter tests * Implement CTF-IR stream getters * Move CTF-Writer stream to CTF-IR * Add Python bindings for CTF-IR stream class getters * Tests: Add stream class getter tests * Implement CTF-IR stream class getters * Add Python bindings for CTF-IR event getters * Tests: Add event getter tests * Implement CTF-IR event getters * Fix: Set the stream class' id in the packet header * Remove unecessary linking on libbabeltrace-ctf-text * Add Python bindings for CTF-IR event-types getters * Tests: Add an array type and field test * Tests: Add event types getter tests * Implement CTF-IR field types getters * Clean-up: Remove unecessary line break * Add Python bindings for CTF-IR event-field getters * Update CTF-Writer and CTF-IR copyrights * Tests: Test CTF-IR event-field's getters * Docs: CTF-IR sequence's length field must be unsigned * Implement CTF-IR event fields getters * Fix: Check that enumeration container types are integers * Add bt_ctf_field_type_enumeration private search functions * Add Python bindings for CTF-IR clock's getters * Tests: Test CTF-IR Clock's getters * Implement CTF-IR Clock getters * Split the CTF-Writer implementation in IR and Writer parts * Split the CTF-Writer API into IR and Writer-specific parts * Split ctf-writer's stream.h into stream.h and stream-class.h * Fix (Python bindings): Return a string if a sequence's element are chars * Fix: don't use a return code in _bt_ctf_stream_append_discarded_events * Fix: Report the sequence's length field's value as length * Fix: Align buffers from objstack_alloc on sizeof(void *) * Add fallback for betoh/htobe if they do not exist * Fix: Variable name typo in SequenceField and Event classes * Fix python: remove weird char at the end of line * Added bt_ctf_get_decl_event_id() API function. * Fix: add missing files to gitignore * Fix: ctf-text: add missing double-quotes around enum tag * Use autoconf AM_MAINTAINER_MODE * Fix: Support out of tree builds in babeltrace * Fix: Add missing lttng_live_should_quit checks * Fix: Report errors occuring in lttng_live_read * Add README to dist_doc_DATA * Remove outdated Python binding documentation * Fix: Accept an input port in the live URL when no session is provided 2014-02-28 Babeltrace 1.2.0 * Fix: lttng-live parse url port check 2014-02-27 Babeltrace 1.2.0-rc2 * Fix: events discarded timing inaccuracy * Fix: Move offset endianness conversion to get_data_packet * Fix: Remove negative comparison to unsigned value * Fix: Uninitialized scalar variable * Fix: Don't assert on metadata generation failure * Fix: add missing SIGTERM and SIGINT handler * Fix: Reverse incorrect error message argument order * Cleanup: add brackets to lttng-live-plugin.c * Cleanup lttng-live: add brackets in lttng_live_read() * Cleanup lttng-live: 80 columns wrapping * Fix: handle new streams in get_data_packet() * Fix: accept empty metadata on append * Fix: lttng-live: 100ms active poll delay * Fix: lttng-live await metadata * Fix: lttng-live recv() and send() flags, partial recv() * Fix: missing little endian conversion for one index field * Cleanup: remove logically dead code * Fix: untrusted value as argument * Fix: off by one in lttng-live path length check * Fix: fclose return value unchecked * Fix: call to append metadata when new metadata is added * Fix: use memstream instead of tmp file for live metadata * Fix: assign a trace handle to every live trace * Fix: get_new_metadata receive all the metadata * Fix: Coverity warning CWE-457: Use of Uninitialized Variable * Revert "Fix: get_new_metadata receive all the metadata" * Revert "Fix: assign a trace handle to every live trace" * Fix: assign a trace handle to every live trace * Fix: get_new_metadata receive all the metadata * CTF: Support incremental metadata append * Fix: ctf.c fscanf missing integer length check * Bump soname version to 1.0.0 * Move scanner allocation/free outside of ctf_open_trace_metadata_read * CTF parser: prepare for incremental metadata parsing * Python bindings: return char arrays as strings in value() * Python bindings: sched_switch example clean-up * Fix: add missing test scripts to Makefile.am 2014-02-14 Babeltrace 1.2.0-rc1 * Cleanup: lttng-live: use perror() rather than fprintf for err msg * Fix: lttng-live: handle orderly shutdown * Fix: Unchecked array index when importing trace indexes * LTTng-live usage documentation * Fix: ctf: uninitialized packet_index, misuse of index * Cleanup: rename lttng live implementation files * Attach and list by session name and hostname * get_new_streams and multi-session * Create the live viewer session before attaching * Sync lttng live ABI with lttng-tools * Extract adding a trace to the iterator from bt_iter_init * Compute discarded events in live * Merge real index and cycles index into a single index * Fix: import index containing only a header * Remove outdated Python bindings test * Fix: replace assert with proper error handling * Fix: lttng-live: unbounded use of sscanf() in parse_url() * Fix: lttng-live should accept 0 in addresses * Remove default to display field names in live * Remove null checks on g_new0 * Cleanup: iterator unused pointer value * Fix: lttng-live: resource leak * Fix: lttng-live uninitialized scalar variable * Fix: lttng-live non NULL-terminated strings * lttng-live: fix unchecked mkdir return value * lttng-live input plugin * Live: let read API detect inactive streams, allow streams without fd * Add Jérémie Galarneau as co-maintainer * Fix: disallow re-using same event ID in same stream * Fix: check for unknown enum/variant fields * Fix: libbabeltrace lib build dependencies * Fixes in babeltrace core to support non-CTF traces * Add a private pointer to the ctf_stream_pos * Be more widely accepting for missing variant/enum fields * Cleanup: remove index_read (unused var) * Refuse 0 integer size * Fix ctf-writer: possible use after free * Fix data_offset when importing the indexes * Merge branch 'master' into bindings/python * Python-bindings fix: Out of tree build fails to find babeltrace.i * Test: Validate that enumeration mapping strings are properly escaped * Fix ctf-writer: Quote strings provided as enumeration mappings * Fix: read/write mode check * Cleanup: do not duplicate code in float fix * Fix: floats should set content size in tmp definition * Handle empty streams on iterator init * Handle packets containing only a header * Handle the inactive streams * Fix: test content size vs headers len * Fix: check packet index len * Fix: uncheck null pointer * Fix: test for less than 1 byte packets * Fix: reversed logic in packet vs content size * Fix: clarify end of packet error * Fix: string packet boundary handling, bits vs bytes * Fix: add stricter checks on packet boundaries * Parse CTF indexes * Cleanup: fix typo * Fix: fail when reading 0 byte event * Python-bindings fix: outdated dist target babeltrace.i * Python-bindings: Refactor the CTFWriter API * Fix: bt_ctf_field_generic_validate should return < 0 on error * Fix: Take the iterator's end position into account * Fix: Use the bt_iter_set_pos function to set the begin_pos * Python-bindings: Move declaration bindings out of the _Definition class * Python-bindings: Refactor the FieldDecl and EventDecl classes * Python-bindings: Move the _scopes array out of the Event class * Python-bindings: Refactor the Event class * Python-bindings: Refactor the TraceHandle class to use properties * Python-bindings: Refactor the Context class * Test ctf-writer: Verify that enumerations are validated before use * Fix ctf-writer: Reject enumerations containing no mappings * Fix lint warnings * Expose text arrays the same way as regular arrays * Don't generate Python bindings by default * Add a usage example for the CTF Writer Python bindings * Add CTF Writer Python bindings * Rename the ctf class to CTFReader * Fix: Python bindings array access functions write out of bounds * Add support for structure fields in the Python bindings * Add support for variant fields in the Python bindings * Add support for floating point fields in the Python bindings * Fix: Use of functions not provided by glib 2.22 * Fix: Throw a FieldError exception when get_value() fails * Remove Python 2 specific examples * Add a python bindings sequence test * Support for the sequence type * Add a generic get_value() implementation * Support getting the value of enums * Remove the unnecessary underscore prefix * Return event fields by field name * Merge branch 'master' into bindings/python * ctf writer BSD compatibily: remove O_DIRECTORY * Fix ctf writer lints * linter fix: comparison of fd >= 0 * test ctf writer: fix lints * ctf-writer: fix linter defects * ctf-writer: Coding style fix * Tests: Add a CTF Writer test * Add CTF Writer implementation * Add public CTF Writer API headers * Fix: Don't create a new packet if ctf_move_pos() seeks out of a packet * Fix: Uninitialized ctf_stream_pos structure in ctf_float_write() * Fix: Use the packet's final size when mmap-ing the next packet * Fix: Close traces on context destruction * gcc warning fix: -Wextra * Declare enum type to use from C++ * Fix: test_seek should only output one TAP plan * Revert "Add missing declaration of ssize_t as unsigned long for SWIG" * Add missing declaration of ssize_t as unsigned long for SWIG * Fix (python): use of braces in format strings * Add missing call to _bt_ctf_get_decl_from_def() when calling _bt_ctf_get_int_len(). * Merge branch 'master' into bindings/python * Fix: test_seek static linking * Tests: fix string octal encoding * Add missing Makefile.am * make check VPATH build * Add missing test files to make dist * Tests: Use Perl prove as the testsuite runner * Tests: Add trace reading test with babeltrace bin * Tests: Split lib tests in multiple standalone test scripts * Tests: Rename tests under lib with tests naming convention * Tests: Move TAP helpers to tests/utils/tap * Fix ctf_clock_declaration_visit returning an error when reading a boolean * Fix CTF parser hang with bison 3.0 * Add missing lex/bison generated files to make clean * Put the libbabeltrace-ctf specific parts of babeltrace.pc into a babeltrace-ctf.pc file * Test for presence of bison and flex when building from git * Fix: Unchecked asprintf/vasprintf return values * Missing NULL pointer init in tap.c * Add bt_unregister_format function support * Fix: libcompat should be noinst (statically linked) * Add MinGW definitions to endian.h * Add MinGW implementation of UUID functions * Add Windows exe files to .gitignore * Add MinGW32 libraries to executables * Move strerror_r to compat directory * Document: manpage: chronologically ordered events * Make python bindings compile with trunk * Merge branch 'master' into bindings/python * babeltrace-log: UTC timestamps * Cleanup: comment mismatch with code * Add unit test validating seeking to last event of a trace * Remove unused function bt_trace_handle_get_id * Cleanup: remove whitespaces at end of lines * Remove extra -I for python bindings 2013-06-18 Babeltrace 1.1.1 * Compare traces by stream path as secondary key * Fix: use index, not cur_index, for SEEK_SET validation * Fix: ctf-text irregular output with disabled field names * Support old compilers * Remove useless variable assignment * Fix: Remove extra quote after an include directive * Don't dereference before NULL check * eliminate dead code * fix babeltrace-log error checking * Fix resource leak on error path * Fix: handle error checking should compare against NULL * Remove unused array in bt_context_add_traces_recursive * Fix: Suppress a compiler warning (always-false condition) * Cleanup: remove trailing whitespaces * Move memstream.h and uuid.h to include/babeltrace/compat directory * Fix: handling of empty streams * Add new option --clock-offset-ns * Fix: add missing error return when create_event_definitions fails * Fix: ctf-text should link on libbabeltrace-ctf * Move clock to bt_trace_descriptor * Remove unused stream_heap * Move trace collection pointer to bt_trace_descriptor * Move bt_handle to bt_trace_descriptor * Move bt_context to bt_trace_descriptor * Privatize struct bt_trace descriptor, move trace path * Add backward ref from bt_stream_pos to bt_trace_descriptor * Fix kFreeBSD build * Fix: babeltrace-log timestamps should be in nsec * Use objstack for AST allocation * Remove unused gc field * Use objstack to store nodes * Use objstack for strings * Implement objstack for parser * Fix: octal and hex string handling * Simplify error node * Lexer cleanup * Fix: invalid integer suffix parsing * Test cleanup * Test cleanup * Test cleanup * Fix: bootstrap should call libtoolize * Fix bootstrap script * Use uint64_t for packet_map_len * Add smalltrace succeed/fail test cases * Support packets and trace files smaller than page size * Move ctf-metadata plugin into its own shared object * Implement ctf-metadata output plugin * Handle make_node errors with TLS dummy node * Remove nested expressions * Eliminate dead code * Fix: trace_collection_add() add after check * Handle integers in lexer rather than grammar * Implement perror printf * Support escape characters in metadata strings * Add error node to AST * Introduce macro to enforce matching enum to string for node types * Fix: add semantic check in grammar * Implement likely/unlikely ifdefs * Fix unary constant use after error * Use new print macros in ctf-parser.y * Print error on invalid token * Implement macros for error printout * Add line number to parser nodes * Fix: handle errors gracefully * Fix: memleak on error path * Add missing NULL pointer check * Show token in CTF parser error * Remove unused lineno from struct ctf_scanner * Show line numbers in CTF parser errors * Ignore Windows-style EOL character in metadata * Replace AM_PROG_MKDIR obsolete macro with AC_PROG_MKDIR_P 2013-03-23 Babeltrace 1.1.0 * Reinsert "at end of stream" message for discarded events * Improvement: Message from babeltrace concerning discarded events needs i * Cleanup: typo fix * Cleanup: add end of line at end of verbose message * Fix: misleading message from babeltrace --verbose * Fix: babeltrace --fields all overrides --no-delta * Add verbosity to stream id error message * Fix: Ensure the specified input format is CTF * Fix: Undefined behavior of double free on strlist in get_names_args * Fix: ctf-text: don't close stdout * Fix: warning message for unexpected trace byte order * Namespace the struct declaration * Namespace the struct definition * Namespace the struct format * Namespace the struct mmap_stream * Namespace the struct trace_descriptor * Namespace struct stream_pos * Namespace compliance for dependencies function * Cleanup error messages * Fix: babeltrace: make '-w' actually work * Convert the unit tests to the TAP format * Spelling cleanups within comments * Move the bitfield test to tests/lib/ * Fix: Added a null pointer check to bt_ctf_field_name * Add babeltrace.pc to gitignore * namespacing: place flex/bison symbols under bt_yy namespace * namespace the lookup_integer function * namespace the definition functions * namespace the variant functions * namespace the declaration functions * namespace the collection functions * namespace the heap functions * namespace the struct functions * namespace the string functions * namespace the sequence functions * namespace the int functions * namespace the enum functions * namespace definition_ref and definition_unref * namespace declaration_ref and declaration_unref * namespace the array functions * namespace the scope_path functions * Hide internal functions of libbabeltrace-ctf * Hide internal functions of ctf-text * BT_HIDDEN macro * Namespace the lookup_enum function 2012-01-24 Babeltrace 1.0.3 * Fix: Double free when calling bt_context_remove_trace() * Add missing runall.sh to dist packaging * Fix: alignment of compound types containing array field 2012-01-11 Babeltrace 1.0.2 * Fix: add tests/lib missing files to Makefile.am 2012-01-11 Babeltrace 1.0.1 * Provides a basic pkg-config file for libbabeltrace * Fix erroneous warning/error messages * Fix comment in context.h * Cleanup: Remove whitespace at EOL from mit-license.txt * Add missing permission notice in each source file * Adding a test which do a sequence of seek BEGIN, LAST, BEGIN, LAST * Run seek tests on a second trace file * Add #define _GNU_SOURCE to remove warning about asprintf * Include a test for SEEK_BEGIN and SEEK_LAST * Fix: Report success even if we find at least one valid stream in find_max_timestamp_ctf_stream_class * Fix SEEK_BEGIN for streams that do not contain any event 2012-10-27 Babeltrace 1.0.0 * tests: add test traces to distribution tarball * Document bash requirement for make check in README * Add tests to make check * Fix: add missing header size validation * callbacks.c: handle extract_ctf_stream_event return value * Cleanup: fix cppcheck warning * Cleanup: fix cppcheck warnings * fix double-free on error path 2012-10-18 Babeltrace 1.0.0-rc6 * Add valgrind suppression file for libpopt * Fix: unplug memory leak that causes popt-0.13 to segfault * Fix: test all close/fclose ret val, fix double close * Cleanup: add missing newline * Fix: fd leak on trace close * Fix memory leaks induced by lack of libpopt documentation * babeltrace: fix poptGetOptArg memleak * plugins: implement plugin unregister * Doc: valgrind with babeltrace (glib workaround) * callsites: fix memory leak * Fix: free all the metadata-related memory * Fix : Free the iterator callback arrays * Fix : cleanup teardown of context * Fix : protect static float and double declarations * callsite: support instruction pointer field * Document that list.h is LGPLv2.1, but entirely trivial * Fix: callsite support: list multiple callsites * Add callsite support * Fix: Allow 64-bit packet offset * Fix: emf uri: surround by " " * Handle model.emf.uri event info * Fix: Documentation cleanup * Fix: misplaced C++ ifdef * Fix babeltrace-log get big line when the input file last line don't have enter * API Fix: bt_ctf_iter_read_event_flags * Fix: get encoding for char arrays and sequences * Fix: access to declaration from declaration_field * Fix: get_declaration_* should not cast to field * Fix babeltrace-log uninitialized memory (v2) * Revert "Fix babeltrace-log uninitialized memory" * Fix babeltrace-log uninitialized memory * Fix: access field properties by declaration * Fix: check return value of get_char_array * Fix: C++ support to API header files 2012-08-27 Babeltrace 1.0.0-rc5 * Change default printout to add host, process names and vpid * Add support for trace:hostname field * Fix: allow specifying more than one input trace path * Fix: make warnings (partial errors) visible * Fix: --clock-force-correlate to handle trace collections gathered from v * Documentation: update API doc with enum functions * Fix: API: remove unsupported BT_SEEK_END from API * API documentation * Cleanup: shut up gcc uninitialized var warning * Fix: support large files on 32-bit systems * Fix: remove unused fts.h include * Fix: add missing enum support to API * Fix: handle clock offset with frequency different from 1GHz * Cleanup: update ifdef wrapper name * Fix: clarify bt_ctf_get_field_list * Fix trace-collection.h: No such file or directory that build code with l * Fix: check return value of bt_context_create * Fix: ensure mmap_base_offset is zeroed on initialization * Fix: Reswitch to FTW for add_traces_recursive * Fix: don't free unallocated index * Fix: don't close the metadata FD if a FP is passed * Add BT_SEEK_LAST type to bt_iter_pos * Fix: iterator.c BT_SEEK_RESTORE: check return value * Fix: complete error handling of babeltrace API * cleanup: protected -> hidden: cleanup symbol table * Fix: add mmap_base_offset to ctf_stream_pos * Fix: assign the current clock for mmap traces * Fix: libbabeltrace add missing static declaration * Fix: safety checks for opening mmap traces * Remove trace-collection.h from include_headers * Fix: protect visibility of ctf-parser functions * Fix: correct name of bt_ctf_field_get_error in comments and typo in man * Fix: wrong type in bt_ctf_get_uint64/int64 * API cleanup name get_timestamp and get_cycles * fix comment struct bt_saved_pos * Fix: Add missing clock-types.h * Get rid of clock-raw and use real clock * Cleanup (messages): Make the wording of the signedness warning clearer * Fix: error path if heap_init fails * Fix: Remove obsolete bt_iter_seek function * Make the signedness warning useful with the field name * Fix: Restore heap for SEEK_BEGIN * Fix: check if handle is valid * Fix: iterator set_pos * Fix: get rid of consumed flag * Fix: add missing heap_copy * Fix: babeltrace assert() triggered by directories within trace * Several fixes for bt_iter_pos related functions * Fix iterator: various fixes * Fix: remove duplicate yydebug var * Fix babeltrace iterator lib: seek at time 0 2012-05-30 Babeltrace 1.0.0-rc4 * Add CodingStyle to tarball * Add coding style document * Fix: babeltrace should use output format argument * Fix: accept traces which skip stream ids * Use mmap_align * align header: define PAGE_SIZE * Implement mmap alignment header * Cleanup: type warnings * Cleanup: do not overwrite const argv parameters 2012-05-29 Babeltrace 1.0.0-rc3 * Fix: converter error logic * Fix: report appropriate field in error message * Fix: support 64-bit events discarded counter types * Fix: add missing bt_ctf_get_int_len API * Fix bt_context_add_traces_recursive error code 2012-04-24 Babeltrace 1.0.0-rc2 * Fix: return an error if no trace can be opened * Fix: double destroy in context remove 2012-04-18 Babeltrace 1.0.0-rc1 * Fix: -n "field names" option should allow "none" * Fix: Show context field name by default * Manpage fix: babeltrace-log manpage should refer to lttng(1) * Clarify warning message for events discarded * Fix: babeltrace should skip erroneous traces * Fix: put explicit error messages and warnings when opening a trace * Fix: segfault on error handling * Fix: enum must use last value + 1 as next item value * Fix: warn, and don't assert, when reading a value outside enum range * API Fix : missing list fields of event decl * API fix : fill the values for timestamp begin and end * API : list of events in the trace * UUID field should be optional, as specified by CTF spec * Babeltrace ctf-text duplicated error message * API fix/breakage : reexporting bt_ctf_event * fix/breakage API : replace bt_ctf_event * add ctf_event_definition pointer to ctf_stream_definition * Rename ctf_event to ctf_event_declaration * Rename ctf_stream to ctf_stream_definition * Rename ctf_stream_event to ctf_event_definition * Rename ctf_stream_class to ctf_stream_declaration * Cleanup: Remove unneeded local variables from function * API Fix : give access to trace_handle and context * API Fix : handle id to use the public functions * Fix : add the missing seek begin 2012-03-16 Babeltrace 1.0.0-pre4 * fix : bt_ctf_iter_create defaults to BEGIN pos * Fix : only one iterator per context * Fix error checking in bt_context_add_traces_recursive * bt_context_add_trace, bt_iter_pos and bt_iter needed some more comments. * Fix API: add const qualifiers, privatize struct bt_ctf_event * Fix: split ctf/event.c * Fix: seek by timestamp * Fix: remove leftover code from seek begin (unimplemented for now) * Fix: seek error handling * Fix: callbacks.c: more explicit error msg * Fix: ctf/iterator.h bt_ctf_iter_read_event() comment * Add missing iterator.h into the git repo * API fix: Move ctf iterator API members to new babeltrace/ctf/iterator.h * API cleanup: Move bt_iter_create/destroy to internal header * Fix: update missing copyrights and ifdef protection mismatch * Clarify clock correlation error message * Fix build warning: set -lpopt as LDFLAGS rather than CFLAGS * Fix: add missing _GNU_SOURCE define to babeltrace-log.c * Fix: Add memstream.h dependency to Makefile.am * Implement fallback for systems lacking open_memstream and fopenmem * Fix: try to include endian.h by default 2012-03-02 Babeltrace 1.0.0-pre3 * Fix uuid in metadata * Babeltrace wrapper update * uuid wrapper: fix use in visitor * Endian wrapper use fix * FreeBSD uuid wrapper fixes * Fix missing uuid wrapper change * Add endian.h wrapper * Use standard __LONG_MAX__ instead of __WORDSIZE * Create BSD wrapper for uuid * fix API : deal with the optional underscore * Fix API : functions to access fields properties 2012-02-23 Babeltrace 1.0.0-pre2 * linker: privatize prio_heap and babeltrace_types * Linker: privatize libbabeltrace_types * Link statically to internal libraries * Combine duplicated API/pretty-print timestamp code * API : export the offsetted timestamp * Fix : segfault when printing timestamp on index * Fix : coherency in const parameters 2012-02-20 Babeltrace 1.0.0-pre1 * Generically print tracer version (and env) in verbose mode * Fix open_mmap_trace missing support * fix: context.h add missing documentation for packet_seek parameter * Cleanup iterator.h * Fix callback.h documentation * Cleanup: babeltrace.h does not need to include ctf/events.h * API fix: Move callbacks to CTF plugin * Removed unneeded ctf_* forward declarations from babeltrace.h * Remove unneeded forward declarations (ctf-specific) from iterator.h * fix: move read event from iterator to event.h * Fix: ctf specific events.c needs to be within CTF plugin * API fix: packet_seek should take an index rather than offset * Fix API: allow packet_seek override * Fix: add lib missing includes * Fix: packet_seek is local to plugins, but can be overridden * Fix API: rename unclear move_pos_slow to packet_seek * Fix: Check for unknown format * Fix: do not use ctf-specific struct in format.h * fix : callback type, doc and links to libbabeltrace * Fix : callback chain len 2012-02-16 Babeltrace 0.12 * Typedef bt_intern_str * Export the list header with a new namespace * API : add_trace return the trace_handle id * fix manpage: refer to lttng(1) * API : cleanup includes * API : Access CTF events fields * manpage: Add babeltrace-log.1 * API : seek by timestamp * Move the add_traces_recursive out of the library * manpage: use pp instead of PP 2012-02-13 Babeltrace 0.11.1 * Add trace-collection.h to the installed headers 2012-02-13 Babeltrace 0.11 * Add --clock-force-correlate option * lib: open trace error handling fix * Use default if there is no clock declaration * iterator: fix type warning on 32-bit build * Use 64-bit type for packet and content size * Fix context API * Add missing context-internal.h * struct bt_context is opaque * Update comment to match context API code * Print loglevel names * babeltrace lib cleanup, folded with open/remove trace functions * API : iterator get and set position 2012-02-09 Babeltrace 0.10 * Fix clock freq * clock: use freq field * Show env. in verbose mode * Remove all code that depends on trace collection directory structure * Use environment information for extra fields * Parse environment declarations from LTTng-modules and LTTng-UST * Fix typo * Add babeltrace.1 manpage * Update help * Install license files and dependency listing into the system doc * Add ChangeLog to doc install 2012-02-02 Babeltrace 0.9 * Allow signed values in get_signed. Cast unsigned into signed. * Show loglevel information only with value * env needs to be a keyword too * Add env {} warning test case * Add environment (env {}) parser-level support * Revert "Remove leading underscores from identifiers directly in lexer" * Remove leading underscores from identifiers directly in lexer * Fix: do not remove field names when adding fields * API : iterator namespace cleanup * Time offset: use trace offset average * API : trace_handle * Print event discarded at end of stream * Discarded event time range is between last packet event and timestamp_end * Print time range during which events have been dropped * Print events discarded * Add clock offset support * Warn user of clock offsets do not match * Add clocks to trace collection * clock: show as time of day * Implement clock mapping within integer type * Implement clock IR generation * Add warning tests * Relax unknown field handling: warn instead of error * Fix erroneous use of "-n" for additional fields, add "-f" * Output warnings and errors to stderr * Fix double typedef of bt_event_name * Parse clock descriptions * API : split iterator headers from babeltrace.h * Add missing context.h/context.c * Introduce contexts * Fix parallel build for lib/ * Organise libbabeltrace * Export the format.h header * Create the babeltrace include dir on install * callbacks: use correct type for element size * callbacks: Fix set size array size * Fix callback chain array usage * Add time delta to ctf-text * ctf-text: show timestamp in sec.nsec * Fix wrong variable error check * Use the generic call to move_pos_slow 2011-12-12 Babeltrace 0.8 * Add loglevel support * Update libpopt dependency to 1.13 * Document dependency on libpopt >= 1.8 * Describe libtool version dependency * AC_PROG_LIBTOOL is deprecated in favor of LT_INIT * Use realpath for path * Helper function to extract string from fields * Use realpath on trace collection path * allow printing domains when no procname are present, handle various / patterns * Add trace:domain,trace:procname,trace:pid support * Add "-n trace" option to print trace name * Do not install ctf-parser-test * Make ctf open errors more verbose * configure.ac: add check for popt library * Show field names by default, enhance --names option * Move opt_field_names/babeltrace_verbose/babeltrace_debug into lib * Add mmap trace reading * Pass stream pointer with callback caller data 2011-09-29 Babeltrace 0.7 * Add missing stdint.h * Use integer extraction functions * Extract int and char arrays from fields * Add parameters to callbacks * Fix float support * Fix type cast warning * Integer support: add missing signed casts * Remove underscore prefix from field names (pretty-print) * Fix sequence iteration * Fix sequence field name use after free * Fix support for empty streams * Optional file pointer to metadata * Specify callback to move packet in open_trace * Free the callbacks on iter_destroy * Add callback support * Basic seek support * Add callback API * Enhance babeltrace API with position save/restore * Remove unused structure forward declarations * Remove stale local .c struct declarations (unused) * Annotate branches in ctf.c event reading/writing code * Annotate prio heap likely branch * Annotate likely/unlikely branches in headers 2011-08-12 Babeltrace 0.6 * Introduce Babeltrace public API: babeltrace.h * Fix support for gold linker: inappropriate dep removal of plugins 2011-08-12 Babeltrace 0.5 * Initialize size to 0 to eliminate incorrect gcc uninitialized var warning * Fix non-matching packet context wrt last packet event read