From d824bb3a5f45e8c47d0860b454bf2f518037ee8c Mon Sep 17 00:00:00 2001 From: Chris Ahlstrom Date: Sun, 24 Sep 2023 11:40:53 -0400 Subject: [PATCH] Release Notes for Seq66 v. 0.99.9 2023-09-24 - Added an "Input Bus Routing" feature, where each pattern can be set to receive events from a given input buss. Selectable from - Refactored and extended zoom support in the song/pattern editors. - Can now select a line in the data pane and grab a handle to change its value. - Implemented automation for BBT/HMS toggling, FF/Rewind, Undo/Redo, Play-set Copy/Paste. - Added more seqroll keystokes. Enabled Esc to exit paint mode if not playing. Added keystroke zoom handling to additional panes. - Added a show-hide build option to allow for a very small window. - Added HTML help files to data/share/doc/info for installation and viewing. Help for hard-wired panel keystrokes. - The usual raft of humiliating bug-fixes: - Fixed nasty segfault opening new file with Editor tab open. - Fixed port-mapping Remap and Restart not restarting Seq66. - Fixed years-long bug in detecting Note-related events. - Fixed error in "quiet" startup that would cause immediate exit. - Fixed error in copying info files in the NSIS build. - Fixed startup error in portmidi with missing ports; however, still broken in the Windows build. See TODO. Read the NEWS, README.md, and TODO files. --- README.md | 2 +- RELNOTES | 10 +++++++--- TODO | 6 +++++- VERSION | 2 +- configure.ac | 4 ++-- data/readme.text | 4 ++-- data/readme.windows | 2 +- data/share/doc/seq66-user-manual.pdf | Bin 6277161 -> 6276967 bytes doc/latex/tex/seq66-user-manual.tex | 4 ++-- include/config.h.in | 2 +- include/qt/portmidi/seq66-config.h | 4 ++-- include/qt/rtmidi/seq66-config.h | 4 ++-- libseq66/src/sessions/smanager.cpp | 10 +++++++++- nsis/build_release_package.bat | 4 ++-- 14 files changed, 37 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index 0eaae3f7..b82a017a 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# README for Seq66 0.99.9 2023-09-23 +# README for Seq66 0.99.9 2023-09-24 __Seq66__: MIDI sequencer/live-looper with a hardware-sampler grid interface; pattern banks, triggers, and playlists for song management; scale and chord diff --git a/RELNOTES b/RELNOTES index ac386141..37e478ec 100644 --- a/RELNOTES +++ b/RELNOTES @@ -1,4 +1,4 @@ -Release Notes for Seq66 v. 0.99.9 2023-09-23 +Release Notes for Seq66 v. 0.99.9 2023-09-24 - Added an "Input Bus Routing" feature, where each pattern can be set to receive events from a given input buss. Selectable from @@ -10,12 +10,16 @@ Release Notes for Seq66 v. 0.99.9 2023-09-23 - Added more seqroll keystokes. Enabled Esc to exit paint mode if not playing. Added keystroke zoom handling to additional panes. - Added a show-hide build option to allow for a very small window. -- Added HTML help files to data/share/doc/info for installation. +- Added HTML help files to data/share/doc/info for installation + and viewing. Help for hard-wired panel keystrokes. - The usual raft of humiliating bug-fixes: - Fixed nasty segfault opening new file with Editor tab open. - Fixed port-mapping Remap and Restart not restarting Seq66. - - Fixed bug in detecting Note-related events. + - Fixed years-long bug in detecting Note-related events. - Fixed error in "quiet" startup that would cause immediate exit. + - Fixed error in copying info files in the NSIS build. + - Fixed startup error in portmidi with missing ports; + however, still broken in the Windows build. See TODO. Read the NEWS, README.md, and TODO files. diff --git a/TODO b/TODO index 48565dd3..e2fa134a 100644 --- a/TODO +++ b/TODO @@ -1,9 +1,13 @@ TO DO for Seq66 0.99.9 Chris Ahlstrom -2019-04-13 to 2023-09-22 +2019-04-13 to 2023-09-24 Misc: + - Windows: If ports are missing, the application just exits (it + works fine in the Linux portmidi build). The workaround + is save the 'rc' file elsewhere, run the exe, and then + merge the port settings back into the original 'rc' file. - In the data pane, for tempo, program change etc., allow them to be dragged up and down (at least for tempo). - Next version, document and test mute groups. diff --git a/VERSION b/VERSION index 88f97334..7167e245 100644 --- a/VERSION +++ b/VERSION @@ -1,2 +1,2 @@ -2023-08-27 +2023-09-24 0.99.9 diff --git a/configure.ac b/configure.ac index 22226d46..09d293f2 100644 --- a/configure.ac +++ b/configure.ac @@ -6,7 +6,7 @@ dnl \file configure.ac dnl \library Seq66 dnl \author Chris Ahlstrom dnl \date 2018-11-09 -dnl \update 2023-09-11 +dnl \update 2023-09-24 dnl \version $Revision$ dnl \license $XPC_SUITE_GPL_LICENSE$ dnl @@ -480,7 +480,7 @@ dnl automatically for us. AH_TOP( -#define VERSION_DATE_SHORT "2023-09-11" +#define VERSION_DATE_SHORT "2023-09-24" #define API_VERSION "0.99" #define VERSION "0.99.9" diff --git a/data/readme.text b/data/readme.text index 605c0c4a..a8833bbc 100644 --- a/data/readme.text +++ b/data/readme.text @@ -1,8 +1,8 @@ readme.text for Seq66 0.99.9 Chris Ahlstrom -2015-09-10 to 2023-08-28 +2015-09-10 to 2023-09-24 -Release 0.99.8 fixes known issues, and adds additional run-time help files and +Release 0.99.9 fixes known issues, and adds additional run-time help files and some more automation functions. Seq66 is a refactoring of a reboot (sequencer64) of seq24, extending it with new diff --git a/data/readme.windows b/data/readme.windows index e48eec2f..fd4d9b2d 100644 --- a/data/readme.windows +++ b/data/readme.windows @@ -1,6 +1,6 @@ readme.windows for Seq66 0.99.9 and above Chris Ahlstrom -2018-05-13 to 2023-08-28 +2018-05-13 to 2023-09-24 This README file tells you how to run the native Windows implmentation of seq66, an executable named qpseq66.exe. It provides some notes on Seq66 and diff --git a/data/share/doc/seq66-user-manual.pdf b/data/share/doc/seq66-user-manual.pdf index b63091548cd2422fee5e17e0da753a36f7fb7a4b..b4e62d45cba7e1f37b1601503dcd128c34305904 100644 GIT binary patch delta 25763 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

);v?9XJrWYV!# z2h%P?*aOkk7)yxstI+xd$|ce-1;2(6J!zyc@>&U zQXxXhni}4Y$FG(u>J?cBrG(fZ_nLNE!drKp!Od8FT`oXvErEqj_BeRPo15G~gCfg33-BO&UR!EHP8V{~U%z#MjI zf>Vb8oJMHjlThk#t;PJVdl}_GF>9e;Sm;9;=+~*~!zUacIA1+XB;B<+zBfE$>lxP7 zIsC#Z36ZR;G~)W0GtIV`WZi#aDtb@+LeQ<%fSN(v4%OJw&@z)*|5%$o^nser>fPQ!(+E1}N^EuhJHk5q6Rwp7nVs@^};HS_v}Q6!I~O->&QN zEc`H+J+9pAzB*o>me&BoQ!Ck*F^8_H5Czvl9)6fQzh~ZLT2qrXuUzN7p+@VJ?5y|& za`YZwzZa0o#S`_Tj7H<9Q~g)T4j)WY(NxDI3p0q=yKdx9r)+O2o}AS-l_QPO=%gfH z=sxAtrBth2p_-85N&D_2>J@4wU$3k5;+KEYN8_jNYo^3=>oPw)418F2MXR2#&pt5< zh?Fzq-EAbJxBW|Mr0p6ssspHlWI3f^rxA-ticvAVmS3rq4j!44pJvfC{aM@VPix^gZ+iIe7$2 zen^=DyWNRMzSg<|g*;SW8lirnUgQXmlD$x^eo-KjY%R88Dt38`vt!Bc>(a|jrkc^V zq~+N?%9i%?M3T2h`RIiDZ@i^YM0nRP^(N z?SNkTvK>DssO~P%eHKbb0!+?Ajn8fZ6RglAe*jpcg+e_607(lquGj`X3H|M(NJ)+W zfMA6hQ*8p-LQv@LCa?yECiQFqO03XBY2@nfm^^+%Ak-oEQo-mDgD delta 25932 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 diff --git a/doc/latex/tex/seq66-user-manual.tex b/doc/latex/tex/seq66-user-manual.tex index f472cdeb..b8a459cf 100644 --- a/doc/latex/tex/seq66-user-manual.tex +++ b/doc/latex/tex/seq66-user-manual.tex @@ -52,7 +52,7 @@ \begin{document} -\title{Seq66 User Manual v. 0.99.8} +\title{Seq66 User Manual v. 0.99.9} \author{Chris Ahlstrom \\ (\texttt{ahlstromcj@gmail.com})} \date{\today} @@ -85,7 +85,7 @@ \section{Introduction} \label{sec:introduction} - This document describes "Seq66", a reboot of \textsl{Seq24} and a rewrite of + Seq66 is a reboot of \textsl{Seq24} and a rewrite of \textsl{Sequencer64}. The following projects support \textsl{Seq66} and its documentation (see the \textbf{Help} menu): diff --git a/include/config.h.in b/include/config.h.in index 4b5d516d..a0f83689 100644 --- a/include/config.h.in +++ b/include/config.h.in @@ -1,6 +1,6 @@ /* include/config.h.in. Generated from configure.ac by autoheader. */ -#define VERSION_DATE_SHORT "2023-09-11" +#define VERSION_DATE_SHORT "2023-09-24" #define API_VERSION "0.99" #define VERSION "0.99.9" diff --git a/include/qt/portmidi/seq66-config.h b/include/qt/portmidi/seq66-config.h index 3fd15c78..20970051 100644 --- a/include/qt/portmidi/seq66-config.h +++ b/include/qt/portmidi/seq66-config.h @@ -33,7 +33,7 @@ * \library seq66 application * \author Chris Ahlstrom * \date 2018-11-10 - * \updates 2023-08-27 + * \updates 2023-09-24 * \license GNU GPLv2 or above * * Qt Portmidi Linux and Windows versions, hardwired for use with @@ -62,7 +62,7 @@ #endif #if ! defined SEQ66_VERSION_DATE_SHORT -#define SEQ66_VERSION_DATE_SHORT "2023-08-27" +#define SEQ66_VERSION_DATE_SHORT "2023-09-24" #endif #if ! defined SEQ66_API_VERSION diff --git a/include/qt/rtmidi/seq66-config.h b/include/qt/rtmidi/seq66-config.h index 1d4131a9..236f9ab4 100644 --- a/include/qt/rtmidi/seq66-config.h +++ b/include/qt/rtmidi/seq66-config.h @@ -33,7 +33,7 @@ * \library seq66 application * \author Chris Ahlstrom * \date 2020-05-31 - * \updates 2023-08-31 + * \updates 2023-09-24 * \license GNU GPLv2 or above * * Qt Rtmidi Linux and Windows versions, hardwired for use with @@ -70,7 +70,7 @@ #endif #if ! defined SEQ66_VERSION_DATE_SHORT -#define SEQ66_VERSION_DATE_SHORT "2023-08-31" +#define SEQ66_VERSION_DATE_SHORT "2023-09-24" #endif #if ! defined SEQ66_API_VERSION diff --git a/libseq66/src/sessions/smanager.cpp b/libseq66/src/sessions/smanager.cpp index e866f6fd..957bbe17 100644 --- a/libseq66/src/sessions/smanager.cpp +++ b/libseq66/src/sessions/smanager.cpp @@ -25,7 +25,7 @@ * \library seq66 application * \author Chris Ahlstrom * \date 2020-03-22 - * \updates 2023-09-15 + * \updates 2023-09-24 * \license GNU GPLv2 or above * * Note that this module is part of the libseq66 library, not the libsessions @@ -767,6 +767,10 @@ smanager::show_error (const std::string & tag, const std::string & msg) const * Checks for an internal (e.g. PortMidi) error, storing the message if * applicable. * + * ca 2023-09-24 + * For portmidi, the internal_error_check() might not find an error, + * while a port-map error does exist. So we add a check of the latter here. + * * \param [out] errmsg * Provides a destination for the PortMidi error. It is cleared if * there is no error. @@ -796,6 +800,10 @@ smanager::internal_error_check (std::string & errmsg) const if (not_nullptr(perr) && std::strlen(perr) > 0) pmerrmsg = std::string(perr); } + else + { + result = perf()->port_map_error(); /* ca 2023-09-24 */ + } #else diff --git a/nsis/build_release_package.bat b/nsis/build_release_package.bat index db8d7589..d1189774 100644 --- a/nsis/build_release_package.bat +++ b/nsis/build_release_package.bat @@ -172,7 +172,7 @@ ::--------------------------------------------------------------------------- set PROJECT_VERSION=0.99.9 -set PROJECT_DATE=2023-08-28 +set PROJECT_DATE=2023-09-24 set PROJECT_DRIVE=C: :: Set the bits of the project, either 64 or 32. Also define WIN64 versus @@ -214,7 +214,7 @@ set RELEASE_DIR=%APP_DIR%\release set AUX_DIR=data set DOC_DIR=data\share\doc set TUTORIAL_DIR=data\share\doc\tutorial -set INFO_DIR=data\share\doc\tutorial +set INFO_DIR=data\share\doc\info :: The quotes are required here. Do we want to add "qtquickcompiler"?