- Much more elaborate doxygen comments for the function and its
parameters, allowed input values, and so on.
- Make 'probelist' const, the function doesn't modify it.
- Check for invalid inputs such as NULL pointers.
- Use g_try_malloc() and g_free() for the output buffer. Document who
is expected to g_free() the buffer.
These version numbers represent the sigrok version (i.e., the version
of the tarball, such as "sigrok-0.2.0.tar.gz"), but _not_ the libsigrok
(libtool) library/API/ABI versions. Thus, they should not be in
libsigrok's include file (sigrok.h).
The "Required.private:" field in pkg-config .pc files is used for
declaring that we need the listed libs (pkg-config packages) for
static linking, but not for dynamic linking.
I.e., the "Required.private:" field should be used for libs which we
use internally in libsigrok, but which we do not "expose" ourselves.
For now all libs are listed as "Required.private:" instead of
"Required:", but this may not be entirely correct and needs to be
checked carefully at some later date.
struct sr_datafeed_packet now has timeoffset and duration fields,
expressed in picoseconds (1/10^12 seconds)
length and unitsize are now in a separate struct sr_datafeed_logic
This enables support for devices that have a different VID/PID
than the Saleae Logic, and yet another after firmware upload.
After firmware upload is checked every 100ms whether it came back,
instead of always waiting for 2 seconds.
If the kernel attaches a driver to a device we know, detact it first.
This is useful to allow frontends to react upon close failures in a
way they see fit (e.g. a popup in the GUI, or error message in the CLI).
They can also still ignore the error if they want, of course.
libsigrok can now be told at which loglevel to work, i.e., how many
debug/error/warning output to generate. You can also query the current
loglevel.
In sigrok-cli it is now possible to set the loglevel via -l. For example:
- Disable all output: sigrok-cli -l 0
- Only show errors: sigrok-cli -l 1
- Show errors, warnings, info, and debug messages: sigrok-cli -l 4
They're not too useful as they mostly consist of a list of function names,
and that list is already available in the respective struct. The wiki
API docs and the code in the various hardware/output drivers serve as
useful examples already, no need for additional files.