]> sigrok.org Git - pulseview.git/blobdiff - NEWS
CMakeLists.txt: Set PulseView version to 0.4.1.
[pulseview.git] / NEWS
diff --git a/NEWS b/NEWS
index 5ffbfe815bc8492b10b19aea76a76edec04ae513..69c7ac5d418bbae896906b8c6b64c6719b1912db 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,287 @@
+0.4.1 (2018-10-29)
+------------------
+
+ * Updated build requirements:
+   - libsigrokcxx >= 0.5.1 (libsigrok C++ bindings)
+   - libsigrokdecode >= 0.5.2
+   - libboost-stacktrace (optional, only needed for debugging)
+   - asciidoctor (optional, only needed to build the HTML manual)
+   - asciidoctor-pdf (optional, only needed to build the PDF manual)
+ * Add support for snapping cursors and markers to signal edges (bug #684).
+   - When the mouse cursor is in a channel, snapping will only be performed
+     for edges of that specific channel.
+   - When the mouse cursor is not in a channel, snapping will happen for any
+     edge of any channel (bugs #1292, #1294).
+   - When moving both cursors at the same time, the left one will snap to
+     edges while the right one will not (e.g. useful for measurements).
+   - The edge to snap to is chosen based on heuristics involving the edge
+     density near the mouse cursor (to try to get the most useful matches).
+ * Command-line options:
+   - Add support for loading multiple files from the command-line (bug #1040).
+   - Add support for input format options for the -I parameter (bug #951).
+     Example: pulseview -I csv:header:first-channel=2 -i filename.csv
+   - Try to autodetect the input format when -I is not supplied (bug #1015).
+   - Add support for -d/--driver, i.e. driver scan options (bug #953).
+     Example: pulseview -d ols:conn=/dev/ttyACM0
+   - Add a -D/--dont-scan option, don't auto-scan for devices (bug #1116).
+   - The -V option now shows the full PulseView/libs version info (bug #1213).
+ * Add support for per-channel analog-to-logic conversion (A2L) via either
+   the "threshold" or "schmitt-trigger" method, which allows running protocol
+   decoders on the converted channels.
+ * Cursors:
+   - Add a tooltip when there's not enough space to show the
+     interval/frequency measurement values (bug #1222).
+   - Measurements are always shown with 12 digit precision (bug #870).
+ * Add theme (and Qt UI style) support, including two "dark" themes.
+ * Add a PulseView manual (HTML and PDF format), generated by "make manual".
+ * manpage: Document all new command-line options.
+ * Add a "fill logic signal high areas" feature with configurable color.
+ * Add segment/frame support and a selector UI for e.g. oscilloscope frames.
+ * Add multi-segment protocol decoding support.
+ * Add support for an (optional) vertical mouse hover line (bug #770).
+ * The obsolete signal scale handle has been replaced by another mechanism.
+ * Accept user-entered sample rates when external clock is enabled.
+ * Slightly more user-friendly scan dropdown for VXI vs. Raw TCP (bug #1146).
+ * Suppport for new libsigrok(cxx) config keys:
+   - SR_CONF_DATA_SOURCE
+   - SR_CONF_EXTERNAL_CLOCK_SOURCE
+   - SR_CONF_AVERAGING
+   - SR_CONF_AVG_SAMPLES (including support for list of values)
+ * Fix long UI hangs when changing decoder options/channels (bug #1174).
+ * Many internal refactorings and flexibility/performance improvements.
+   - Decrease the number of trace redrawing operations in a few places.
+   - Use emplace_back() in various places to avoid some allocations.
+   - Increase decode chunk size to 256kB for better performance.
+   - Increase input file chunk size to 4MB for improved performance.
+   - Speed up painting by not unnecessarily copying decoder annotations.
+   - Improve MipMap downsampling code, speeding up e.g. file loading.
+   - Fix various memory leaks and other issues reported by valgrind.
+   - Various fixes for issues reported by clang-tidy and clazy.
+   - Fix some issues reported by Coverity.
+   - Fix various gcc 8 warnings/errors.
+ * Decoder channel name (auto-)assignment:
+   - Auto-match e.g. "SCL analog" to the "SCL" decoder channel.
+   - Ignore "insignificant" characters (-_.) for name matching (bug #1270).
+   - Fix a channel auto-assignment issue with disabled channels (bug #1182).
+   - Fix a channel auto-assignment issue with multiple matches (bug #1201).
+   - Fix an issue where channel names weren't updated correctly (bug #1089).
+   - Fix multiple decoder channel assignment issues (bug #1024).
+   - Fix an issue where channel auto-assignment was incorrectly applied.
+ * Fix an issue where decoder warnings weren't always shown (bug #982).
+ * Fix an issue with incorrect samplerates during multiple decoder runs.
+ * Fix a decoder restarting issue after reloading an input file.
+ * Fix an issue where existing decoder traces were not shown in new views.
+ * Fix an issue where stacked decoders weren't restored (bug #832).
+ * Fix an issue where decoder channel mappings were not restored (bug #831).
+ * Fix an issue where decoder options were not restored (bug #831).
+ * Fix an issue where not all decoder stacks were restored (bug #888).
+ * Fix an issue where header area tooltips were incorrectly shown.
+ * Fix trace resizing when new annotation classes appear.
+ * Fix an issue with ruler updating after restoring a session.
+ * Fix an issue with header resizing events.
+ * Fix an issue where decoders would not restart upon A2L conversion changes.
+ * Fix an issue with bit IDs which caused incorrect decode runs.
+ * Avoid a crash by ignoring invalid loglevel (-l option) specs (bug #1071).
+ * Fix an issue where settings callbacks could not be unregistered.
+ * Ruler tick legends now don't partly disappear when scrolled off the ends.
+ * Fix file extension filter in "Import File" dialog (bug #1039).
+ * Fix a crash when trying to save invalid trace ranges (bug #1038).
+ * Fix a crash related to A2L conversion changes (bug #1132).
+ * Fix a crash when config_list() was returning errors (bug #928).
+ * Fix a crash when config_get() was returning errors (bug #1035).
+ * Fix a crash when read_config() calls were failing.
+ * Fix a crash caused by incorrectly sized sample buffers (bug #1166).
+ * Fix an issue where decoder option changes affected other options (bug #1162).
+ * Resize trace when hiding/deleting a stacked PD.
+ * Only pass non-zero samplerate metadata to protocol decoders (bug #1118).
+ * Fix an issue when processing packets without sample data.
+ * Fix inconsistent decoder annotation colors upon multiple runs (bug #709).
+ * Fix two minor UI issues with the decoding "progress bar" display.
+ * Fix some voltage threshold UI widget and default value issues (bug #1149).
+ * Fix an issue when loading settings saved via older Boost lib (bug #1203).
+ * Avoid qDebug().noquote() for now, would require more recent Qt (bug #1169).
+ * Fix an issue where the last analog sample was not being shown (bug #956).
+ * Fix an issue where markers were not removed upon new sessions (bug #540).
+ * Fix an issue where the "show cursors" button wasn't working (bug #1212).
+ * Fix a crash by forbidding UI trigger changes during acquisitions (bug #807).
+ * Fix an issue where trigger markers would disappear (bug #1226).
+ * Fix a crash when running out of memory during acquisitions (bug #975).
+ * Fix an issue where multiple decoder traces would overlap (bug #1204).
+ * Fix an issue with silent failures during file loading (bug #1259).
+ * Avoid incorrectly hardcoded ConfigKey::SAMPLERATE (bug #651).
+ * Prevent some crashes when scanning for devices.
+ * Show a slightly more specific error for "Failed to select device".
+ * Remove the "1:1 zoom button" (bug #1198).
+ * Cache device triggers instead of querying multiple times (bug #979).
+ * Add new context menus (right-click in the trace area or header):
+   - Add annotation exporting support from a decoder's context menu:
+     All, only a specified row, all from mouse position, all between cursors.
+   - Add a facility to pause/resume decoding via a decoder's context menu.
+   - Add a "Create marker here" context menu item.
+   - Add "Set as zero point" context menu item.
+   - Header: Add an "Enable/disable mouse hover marker" context menu item.
+ * Settings:
+   - Enable the "show sampling points" setting by default.
+   - Enable the mouse hover marker by default.
+   - Add a "zoom-to-fit when acquisition stops" setting (bug #236).
+   - Add a "default div height" setting.
+   - Add a "logic trace height" setting.
+   - Add a "Show conversion thresholds in analog traces" setting.
+   - Add a "Show time zero at the trigger" setting.
+   - Show firmware and decoder search paths in the settings dialog (bug #1128).
+   - Show logs from libsigrok, libsigrokdecode, and PulseView itself.
+   - Change page list design, also fixes UI inconsistencies (bug #1095).
+   - Only show drivers PulseView will actually use (bug #1153).
+   - Make the version info in the dialog selectable for copy-paste (bug #1264).
+   - Add annotation export formatting setting.
+   - Add a setting for the snap-to-edge distance (in pixels).
+ * HACKING: Prefer git pull requests over mailing list patches.
+ * UI: Use slider instead of combo box for contiguous ranges.
+ * Reset and re-use existing decoder sessions (no full reconstruction).
+ * Trace view: Make the zero line for analog traces thicker.
+ * PulseView .desktop file: Fix a "desktop-file-validate" error.
+ * Add experimental (default-off) boost::stacktrace support.
+ * Add more options to show/hide certain channels (bug #1023):
+   - Enable:  All / Logic / Analog / Unnamed / Non-chaning
+   - Disable: All / Logic / Analog / Named / Changing
+ * Build system:
+   - Set CMake policy CMP0071 to NEW (bug #1143).
+   - Set CMake policy CMP0054 to NEW, fixes a warning.
+   - Show a helpful message when libsigrokcxx is not found (bug #1199).
+   - Fix a build issue with ENABLE_DECODE=n.
+ * Windows:
+   - Have debug builds (-DCMAKE_BUILD_TYPE=Debug) show/open a "DOS box".
+   - Fix a MinGW compile error due to a missing #include.
+   - Fix a Windows XP crash caused by a missing cast (bug #1125).
+   - Fix a Windows XP crash caused by incorrect segment handling (bug #1139).
+   - CMakeLists.txt: Only add Qt5PlatformSupport for Qt < 5.8.0.
+   - Fix a build issue on MSYS2 by applying an MXE workaround only on MXE.
+   - Installer: Add debug shortcut (Windows start menu) for -l 5.
+   - Installer: Add links to the HTML/PDF manual.
+ * Mac OS X:
+   - Fix a crash with large acquisitions on Mac OS X (bug #1284).
+   - Work around a QColor serialization bug on Mac OS X.
+
+0.4.0 (2017-06-12)
+------------------
+
+ * Updated build requirements:
+   - A C++ compiler with full C++11 support (g++ >= 4.8.1 or clang++ >= 3.3)
+   - cmake >= 2.8.12
+   - libglib >= 2.28.0
+   - glibmm-2.4 >= 2.28.0
+   - Boost >= 1.55:
+     - New requirement: libboost-serialization.
+     - Dropped requirement: libboost-thread.
+   - libsigrokcxx >= 0.5.0 (libsigrok C++ bindings)
+   - libsigrokdecode >= 0.5.0
+   - Dropped support for Qt4; PulseView now requires Qt5.
+ * Add the concepts of sessions and views to PulseView: 
+   - Sessions represent individual files/device instances.
+     Each session is represented as a tab in PulseView.
+   - Views are different data representations of one specific session.
+     For example, different views of a session can have different zoom levels,
+     can be scrolled to different positions, etc. etc.
+     Each view is a dock window within the respective session's tab.
+   - The view docks can be repositioned, resized and extracted out into their
+     own individual windows.
+   - Sessions and views are partially saved and restored when PulseView
+     exits/starts. Not all information is restored yet, though (e.g. decoders).
+   - Add CTRL-q to close PulseView, CTRL-w to close a session tab (bug #899).
+ * Add support for saving analog data to .sr files.
+ * Analog signal traces:
+   - Add initial implementation of a vertical grid for analog traces.
+   - Add a dropdown for the vertical resolution setting.
+   - Show the vertical resolution info on the right-hand side of the trace.
+   - Make the number of vertical/horizontal divisions configurable.
+   - Add an option to enable autoranging for analog channels.
+ * Add a settings icon which allows access to various PulseView config options.
+ * Settings -> About:
+   - Show the used libraries, versions, and features (bug #912).
+   - Fix word-wrapping of the driver/decoder/module names (bug #111).
+ * The menu bar and "burger menu" have been removed in favor of the
+   global settings menu (plus various buttons/icons and their hotkeys).
+ * UI and usability tweaks:
+   - Try to keep annotation labels within the view if there's enough space.
+   - Annotation labels can now be pushed aside by the row title.
+   - Use natural sort order for decode trace's channel selector drop-down.
+   - Improve icon/theme handling: Don't try to use non-existing theme icons.
+   - Add a pane splitter for the trace names/arrows, allowing horizontal resize.
+   - Show a confirmation dialog when closing sessions with unsaved data.
+   - Add tooltips to various UI elements to increase usability.
+   - Show a progress dialog while scanning for devices.
+ * Connect dialog:
+   - Improve UI to make it easier to use and understand.
+   - Allow for TCP and VXI connections to supported devices (bug #769).
+   - Clarify button label to "Scan for devices using driver above".
+ * Add support for showing the sampling points in traces (bug #485).
+ * Add support for specifying the (assumed) initial pin states before the
+   first sample that is being decoded. This can be set to 0/low, 1/high, or
+   to "use the same value as in the first sample".
+ * Add support for lists of discrete values for probe factor config.
+ * Add the -c option to not restore previous sessions on startup (bug #862).
+ * Performance improvements: 
+   - Improved decoding performance due to larger chunk size.
+   - Increase session saving chunk size for much better performance.
+ * Open to-be-imported files in binary mode (bug #733).
+ * Startup: If last-used device is not available, use other available ones.
+ * Various internal code fixes and improvements found by clang-tidy.
+ * Add a check for explicit linking against libatomic (bug #810).
+ * Import/export/load: Allow file names without dots ("*" vs. "*.*").
+ * Improve support for high-DPI displays and scaling (bug #871).
+ * Improve internal data storage and data handling algorithms.
+ * Remove FSF postal address from boiler plate license text.
+ * Fix a clang build issue related to 'override' (bug #737).
+ * Fix some zoom-dependent annotation block drawing issues (bug #745).
+ * Fix locking issues when trying to run multiple decoders (bug #181).
+ * Fix an exception due to incorrect handling of SR_CONF_FILTER.
+ * Fix an issue with multiple device/session creation upon file imports.
+ * Fix a drawing issue with "use coloured backgrounds" and markers (bug #771).
+ * Fix various issues to better handle re-loading of input files.
+ * Fix a build issue in the PulseView test-suite (bug #808).
+ * Fix a Qt5 bug related to QMainWindow SVG icons via workaround (bug #814).
+ * Fix a Boost-related build issue with gcc 6.2.x (bug #863).
+ * Fix an issue that prevented decoders from being removed (bug #849).
+ * Fix an issue with incorrect sample rate limits (bug #890).
+ * Fix decoding issues due to re-feeding old data (bugs #876, #850).
+ * Fix temporarily non-working 'b' and 's' hotkeys (bugs #907, #908)
+ * Fix an issue with std::roundf() on Android (bug #945).
+ * Fix an issue with negative vertical divisions on channel 0 (bug #940).
+ * Fix an issue when zero vertical divisions were configured (bug #942).
+ * Fix an issue with the file save progressbar remaining open (bug #895).
+ * Fix incorrect values when importing raw analog data (bug #958).
+ * Fix an issue with non-smooth zoom on e.g. some trackpads.
+ * Fix an issue where the horizontal scrollbar couldn't be moved (bug #957).
+ * Fix an issue with the pane positioning when loading files (bug #969).
+ * Fix an issue where the Run button would remain green incorrectly (bug #970).
+ * Fix a crash when input modules were yielding errors (bug #775).
+ * Fix a crash with stacked decoders on Mac OS X.
+ * Fix a crash when no device was found or selected.
+ * Fix a crash with selected but unusable devices (bug #805).
+ * Fix a crash when closing PulseView with active triggers (bug #705).
+ * Fix a crash that occured with certain glibmm versions (bug #777).
+ * Fix a crash when an unusable device is encountered (bug #829).
+ * Fix a negative cursor position "Save Selected Range As" crash (bug #792).
+ * Fix various other unrelated crash conditions.
+ * Add an AppData/AppStream file for PulseView (bug #859).
+   - Install the file to ${CMAKE_INSTALL_DATAROOTDIR}/metainfo.
+ * .desktop file:
+   - Rename to org.sigrok.PulseView.desktop.
+   - Add MimeType=application/vnd.sigrok.session field (bug #858).
+   - Add additional Development category.
+   - Install the file to ${CMAKE_INSTALL_DATAROOTDIR}/applications.
+ * Rename sigrok-logo-notext.{png,svg,ico} icons to pulseview.{png,svg,ico}.
+   - Install the icons to ${CMAKE_INSTALL_DATAROOTDIR}/icons/...
+ * NSIS:
+   - Update to Python 3.4.x. We can't use any higher version for the time
+     being, since 3.4.x is the last version to support Windows XP.
+   - Place the example .sr files in a separate installer section.
+   - Limit example .sr files to a small set to shrink the installer size.
+   - Clarify Start menu links (e.g. "Uninstall") to avoid confusion.
+   - Allow registering the .sr extension with PulseView (bug #964).
+ * manpage: Various updates (e.g. hotkeys, command-line options).
+ * Fix various compiler warnings.
+
 0.3.0 (2016-01-29)
 ------------------