From a36e6404363e6d6f8a6cd229406cc30275486835 Mon Sep 17 00:00:00 2001 From: =?utf8?q?IOhannes=20m=20zm=C3=B6lnig=20=28Debian/GNU=29?= Date: Wed, 22 Dec 2021 15:14:51 +0100 Subject: [PATCH] New upstream version 1.4.3+ds0 --- docs/About/CHANGELOG.md | 131 +---------------- docs/changelog.yml | 136 ++++++++++++++++++ docs/requirements.txt | 2 + linux/add_changelog_to_metainfo.py | 23 +++ linux/flatpak/org.jacktrip.JackTrip.Devel.yml | 19 +++ .../org.jacktrip.JackTrip.Devel.yml.j2 | 19 +++ linux/flatpak/org.jacktrip.JackTrip.yml | 19 +++ linux/meson.build | 10 +- ... org.jacktrip.JackTrip.metainfo.xml.in.in} | 12 ++ mkdocs.yml | 4 + src/jacktrip_globals.h | 8 +- 11 files changed, 251 insertions(+), 132 deletions(-) create mode 100644 docs/changelog.yml create mode 100644 docs/requirements.txt create mode 100755 linux/add_changelog_to_metainfo.py rename linux/{org.jacktrip.JackTrip.metainfo.xml.in => org.jacktrip.JackTrip.metainfo.xml.in.in} (74%) diff --git a/docs/About/CHANGELOG.md b/docs/About/CHANGELOG.md index 1d7ba81..e0ceba1 100644 --- a/docs/About/CHANGELOG.md +++ b/docs/About/CHANGELOG.md @@ -1,129 +1,10 @@ Changelog ========= -1.4.0 ---- -- (added) optional GUI from QJackTrip -- (added) authentication in hub server mode -- (added) different number of sending and receiving channels -- (added) append thread IDs to jack client names -- (added) new patcher mechanism that doesn't delete existing connections -- (added) MkDocs based documentation -- (added) weak jack linking -- (added) manpage -- (added) MSVC build -- (added) RtAudio Meson subproject -- (added) formatting with clang-format -- (added) static analysis with clang-tidy -- (added) cross compilation for Windows -- (added) flatpaks -- (added) appstream -- (added) automated builds and deployment for Linux, macOS and Windows -- (added) macOS and Windows Installers -- (fixed) regression in remote client name handling -- (fixed) long jack client names (> 27 characters) in 1.9.11 -- (fixed) Hardcode Derived Class Names of ProcessPlugins to prevent undefined behavior -- (update) QJackTrip and JackTrip are now identical -- (update) Change helpscreen wording for --broadcast argument -- (update) jitter buffer alternatives -- (update) RtAudio revive -- (update) RtAudio device selection -- (update) build script moved to root directory +{% for release in releases %} +## {{ release.Version }} {% if release.Type == 'development' %}(Development){% endif %} -1.3.0 ---- -- (added) async networking in hub listener -- (added) limiter, compressor, reverb -- (added) examine audio delay -- (added) jitter buffer alternatives -- (added) broadcast output ports -- (added) PREFIX variable for installation path -- (added) disconnect on timeout -- (added) SIGTERM -- (added) simulate packet loss, jitter -- (added) hubpatch 5, no auto patching -- (added) jack client name length check -- (added) scripts/hubMode/test_hub_mode_server_and_client.sh -- (added) Meson build -- (fixed) misc. typos, indentation -- (fixed) short form IO stat options -- (fixed) nullptr jack server name when creating jack client -- (fixed) stop ring buffer blocking when jack has been stopped -- (fixed) JMess handling of non-western characters -- (fixed) closing curly brace on mJackTrip client creation -- (fixed) Warnings -- (fixed) remove rtaudio device and mpeeraddress msgs. -- (fixed) signal and slot connections -- (fixed) incorrect dependency from jacktrip_main -- (update) RT thread priority for network I/O -- (update) clipping to saturation -- (update) build instructions - -1.2.2 ---- -- (added) bindPort range to reject oddball connections -- (fixed) jack client name strings - -1.2.1 ---- -- (added) src/build script builds in ../builddir -- (fixed) refactor "Master" to be "Hub" -- (fixed) 1.2.1 correctly versioned and tagged - -1.2 ---- -- (added) jack patching modes (-p) for Hub Mode server (-S) -- (fixed) Compilation under ubuntu -- (removed) setRealtimeProcessPriority() -- (removed) Rtaudio mode (but still has dependencies) -- (fixed) IPv4-mapped IPv6 addressing bug -... -- (fixed) Fixed compilation for MacOSX10.11.sdk. -- (update) Updated to RtAudio 4.1.1, and using shared lib in linux. - -1.1 ---- -- (added) Support for RtAudio. Jacktrip can now be used without Jack -- (added) DNS Look-up support, now one machine can have a private IP (but still needs to have UDP ports open) -- (added) New port to Windows XP and Windows Vista (experimental and not tested for a long time, only when using jacktrip as a library) -- (added) Multiclient Server (experimental and not exposed in the executable) - -1.0.5 ---- -- (added) Compatibility with JamLink boxes (restricted at the moment to 48KHz, 64 buffer size and 1 channel) -- (added) New port structure that allows the communication between a public server and a local client -- (added) Option for packets without header -- (added) Option to change default client name -- (fixed) General optimizations and code cleanup -- (added) Improved, now cross-platform build script - -1.0.4 ---- -- (fixed) Buss error caused when no physical inputs or outputs ports are available - -1.0.3 ---- -- (added) Redundancy Algorithm for UDP Packets to avoid glitches with packet losses -- (fixed) Now compiles on 64bits machines -- (fixed) Improved exceptions handling -- (added) Basic Karplus-Strong model added as Plug-in -- (added) Some functionality reimplemented using signals and slots for more flexibility -- (added) Multiple-Client-Server in alpha testing, expect it working in the next release - -1.0.2 Alpha ---- -- (added) Port offset mode, to use a different UDP port than the default one. -- (fixed) Improved thread behavior - -1.0.1 Alpha ---- -- (added) jamlink mode to connect with jamlink boxes -- (fixed) thread priority in both Linux and Mac OS X (still need some work on the Mac OS X version) -- (fixed) Bug that was causing plug-ins not to behave correctly -- (added) Loopback mode -- (added) Underrun Modes: Wavetable (default) and set to zeros -- (added) Check for peer audio settings, program exists if they don't match -- (added) Automatically connect ports to available physical audio interface. - -1.0 Alpha - initial release ---- +{% for change in release.Description %} +- {{ change }} +{% endfor %} +{% endfor %} diff --git a/docs/changelog.yml b/docs/changelog.yml new file mode 100644 index 0000000..ba5cb3f --- /dev/null +++ b/docs/changelog.yml @@ -0,0 +1,136 @@ +- Version: "1.4.3" + Date: 2021-12-18 + Description: + - "Generating changelog from YAML file for MkDocs and Flatpaks by @ntonnaett in #442" + - "Update jacktrip_globals.h by @cchafe in #443" +- Version: "1.4.2" + Date: 2021-12-06 + Description: + - "[Meson] Set RtAudio subproject to version 5.2.0 by @ntonnaett in #436" + - "Verbose mode in GUI by @psiborg112 in #434" + - "Help screen for app bundle script by @psiborg112 in #439" + - "[GHA] Fix weekly cron job entry by @ntonnaett in #441" +- Version: "1.4.1" + Date: 2021-11-11 + Description: + - "Fix for OSX installer failures by @mikedickey in #431" +- Version: "1.4.0" + Date: 2021-11-03 + Description: + - (added) optional GUI from QJackTrip + - (added) authentication in hub server mode + - (added) different number of sending and receiving channels + - (added) append thread IDs to jack client names + - (added) new patcher mechanism that doesn't delete existing connections + - (added) MkDocs based documentation + - (added) weak jack linking + - (added) manpage + - (added) MSVC build + - (added) RtAudio Meson subproject + - (added) formatting with clang-format + - (added) static analysis with clang-tidy + - (added) cross compilation for Windows + - (added) flatpaks + - (added) appstream + - (added) automated builds and deployment for Linux, macOS and Windows + - (added) macOS and Windows Installers + - (fixed) regression in remote client name handling + - (fixed) long jack client names (> 27 characters) in 1.9.11 + - (fixed) Hardcode Derived Class Names of ProcessPlugins to prevent undefined behavior + - (update) QJackTrip and JackTrip are now identical + - (update) Change helpscreen wording for --broadcast argument + - (update) jitter buffer alternatives + - (update) RtAudio revive + - (update) RtAudio device selection + - (update) build script moved to root directory +- Version: "1.3.0" + Description: + - (added) async networking in hub listener + - (added) limiter, compressor, reverb + - (added) examine audio delay + - (added) jitter buffer alternatives + - (added) broadcast output ports + - (added) PREFIX variable for installation path + - (added) disconnect on timeout + - (added) SIGTERM + - (added) simulate packet loss, jitter + - (added) hubpatch 5, no auto patching + - (added) jack client name length check + - (added) scripts/hubMode/test_hub_mode_server_and_client.sh + - (added) Meson build + - (fixed) misc. typos, indentation + - (fixed) short form IO stat options + - (fixed) nullptr jack server name when creating jack client + - (fixed) stop ring buffer blocking when jack has been stopped + - (fixed) JMess handling of non-western characters + - (fixed) closing curly brace on mJackTrip client creation + - (fixed) Warnings + - (fixed) remove rtaudio device and mpeeraddress msgs. + - (fixed) signal and slot connections + - (fixed) incorrect dependency from jacktrip_main + - (update) RT thread priority for network I/O + - (update) clipping to saturation + - (update) build instructions +- Version: "1.2.2" + Description: + - (added) bindPort range to reject oddball connections + - (fixed) jack client name strings +- Version: "1.2.1" + Description: + - (added) src/build script builds in ../builddir + - (fixed) refactor "Master" to be "Hub" + - (fixed) 1.2.1 correctly Versioned and tagged +- Version: "1.2" + Description: + - (added) jack patching modes (-p) for Hub Mode server (-S) + - (fixed) Compilation under ubuntu + - (removed) setRealtimeProcessPriority() + - (removed) Rtaudio mode (but still has dependencies) + - (fixed) IPv4-mapped IPv6 addressing bug + - ... + - (fixed) Fixed compilation for MacOSX10.11.sdk. + - (update) Updated to RtAudio 4.1.1, and using shared lib in linux. +- Version: "1.1" + Description: + - (added) Support for RtAudio. Jacktrip can now be used without Jack + - (added) DNS Look-up support, now one machine can have a private IP (but still needs to have UDP ports open) + - (added) New port to Windows XP and Windows Vista (experimental and not tested for a long time, only when using jacktrip as a library) + - (added) Multiclient Server (experimental and not exposed in the executable) +- Version: "1.0.5" + Description: + - (added) Compatibility with JamLink boxes (restricted at the moment to 48KHz, 64 buffer size and 1 channel) + - (added) New port structure that allows the communication between a public server and a local client + - (added) Option for packets without header + - (added) Option to change default client name + - (fixed) General optimizations and code cleanup + - (added) Improved, now cross-platform build script +- Version: "1.0.4" + Description: + - (fixed) Buss error caused when no physical inputs or outputs ports are available +- Version: "1.0.3" + Description: + - (added) Redundancy Algorithm for UDP Packets to avoid glitches with packet losses + - (fixed) Now compiles on 64bits machines + - (fixed) Improved exceptions handling + - (added) Basic Karplus-Strong model added as Plug-in + - (added) Some functionality reimplemented using signals and slots for more flexibility + - (added) Multiple-Client-Server in alpha testing, expect it working in the next release +- Version: "1.0.2" + Type: development + Description: + - (added) Port offset mode, to use a different UDP port than the default one. + - (fixed) Improved thread behavior +- Version: "1.0.1" + Type: development + Description: + - (added) jamlink mode to connect with jamlink boxes + - (fixed) thread priority in both Linux and Mac OS X (still need some work on the Mac OS X Version) + - (fixed) Bug that was causing plug-ins not to behave correctly + - (added) Loopback mode + - "(added) Underrun Modes: Wavetable (default) and set to zeros" + - (added) Check for peer audio settings, program exists if they don't match + - (added) Automatically connect ports to available physical audio interface. +- Version: "1.0" + Type: "development" + Description: + - initial release diff --git a/docs/requirements.txt b/docs/requirements.txt new file mode 100644 index 0000000..bba465d --- /dev/null +++ b/docs/requirements.txt @@ -0,0 +1,2 @@ +mkdocs-material +mkdocs-macros-plugin diff --git a/linux/add_changelog_to_metainfo.py b/linux/add_changelog_to_metainfo.py new file mode 100755 index 0000000..8d460c0 --- /dev/null +++ b/linux/add_changelog_to_metainfo.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python3 + +import sys +import yaml +from jinja2 import Template + +changelog_file = sys.path[0] + "/../docs/changelog.yml" +with open(changelog_file) as f: + file_array = yaml.load(f, Loader=yaml.FullLoader) + releases = { "releases": file_array} + +if len(sys.argv) < 3: + exit('Not enough arguments') + +template_file = sys.argv[1] +output_file = sys.argv[2] + +with open(template_file) as f2: + template = Template(f2.read()) + +with open(output_file, "w") as f_out: + f_out.write(template.render(releases)) + diff --git a/linux/flatpak/org.jacktrip.JackTrip.Devel.yml b/linux/flatpak/org.jacktrip.JackTrip.Devel.yml index 6e1cf9b..62bc178 100644 --- a/linux/flatpak/org.jacktrip.JackTrip.Devel.yml +++ b/linux/flatpak/org.jacktrip.JackTrip.Devel.yml @@ -19,6 +19,25 @@ finish-args: - --socket=system-bus modules: - shared-modules/linux-audio/jack2.json + - name: python3-pyyaml + buildsystem: simple + build-commands: + - pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" --prefix=${FLATPAK_DEST} "pyyaml" --no-build-isolation + sources: + - type: file + sha256: 68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2 + url: https://files.pythonhosted.org/packages/36/2b/61d51a2c4f25ef062ae3f74576b01638bebad5e045f747ff12643df63844/PyYAML-6.0.tar.gz + - name: python3-jinja2 + buildsystem: simple + build-commands: + - pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" --prefix=${FLATPAK_DEST} "jinja2" --no-build-isolation + sources: + - sha256: 594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a + type: file + url: https://files.pythonhosted.org/packages/bf/10/ff66fea6d1788c458663a84d88787bae15d45daa16f6b3ef33322a51fc7e/MarkupSafe-2.0.1.tar.gz + - sha256: 077ce6014f7b40d03b47d1f1ca4b0fc8328a692bd284016f806ed0eaca390ad8 + type: file + url: https://files.pythonhosted.org/packages/20/9a/e5d9ec41927401e41aea8af6d16e78b5e612bca4699d417f646a9610a076/Jinja2-3.0.3-py3-none-any.whl - name: jacktrip buildsystem: meson config-opts: diff --git a/linux/flatpak/org.jacktrip.JackTrip.Devel.yml.j2 b/linux/flatpak/org.jacktrip.JackTrip.Devel.yml.j2 index 2b683b5..89961f3 100644 --- a/linux/flatpak/org.jacktrip.JackTrip.Devel.yml.j2 +++ b/linux/flatpak/org.jacktrip.JackTrip.Devel.yml.j2 @@ -19,6 +19,25 @@ finish-args: - --socket=system-bus modules: - shared-modules/linux-audio/jack2.json + - name: python3-pyyaml + buildsystem: simple + build-commands: + - pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" --prefix=${FLATPAK_DEST} "pyyaml" --no-build-isolation + sources: + - type: file + sha256: 68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2 + url: https://files.pythonhosted.org/packages/36/2b/61d51a2c4f25ef062ae3f74576b01638bebad5e045f747ff12643df63844/PyYAML-6.0.tar.gz + - name: python3-jinja2 + buildsystem: simple + build-commands: + - pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" --prefix=${FLATPAK_DEST} "jinja2" --no-build-isolation + sources: + - sha256: 594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a + type: file + url: https://files.pythonhosted.org/packages/bf/10/ff66fea6d1788c458663a84d88787bae15d45daa16f6b3ef33322a51fc7e/MarkupSafe-2.0.1.tar.gz + - sha256: 077ce6014f7b40d03b47d1f1ca4b0fc8328a692bd284016f806ed0eaca390ad8 + type: file + url: https://files.pythonhosted.org/packages/20/9a/e5d9ec41927401e41aea8af6d16e78b5e612bca4699d417f646a9610a076/Jinja2-3.0.3-py3-none-any.whl - name: jacktrip buildsystem: meson config-opts: diff --git a/linux/flatpak/org.jacktrip.JackTrip.yml b/linux/flatpak/org.jacktrip.JackTrip.yml index 2d8a881..9d35873 100644 --- a/linux/flatpak/org.jacktrip.JackTrip.yml +++ b/linux/flatpak/org.jacktrip.JackTrip.yml @@ -19,6 +19,25 @@ finish-args: - --socket=system-bus modules: - shared-modules/linux-audio/jack2.json + - name: python3-pyyaml + buildsystem: simple + build-commands: + - pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" --prefix=${FLATPAK_DEST} "pyyaml" --no-build-isolation + sources: + - type: file + sha256: 68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2 + url: https://files.pythonhosted.org/packages/36/2b/61d51a2c4f25ef062ae3f74576b01638bebad5e045f747ff12643df63844/PyYAML-6.0.tar.gz + - name: python3-jinja2 + buildsystem: simple + build-commands: + - pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" --prefix=${FLATPAK_DEST} "jinja2" --no-build-isolation + sources: + - sha256: 594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a + type: file + url: https://files.pythonhosted.org/packages/bf/10/ff66fea6d1788c458663a84d88787bae15d45daa16f6b3ef33322a51fc7e/MarkupSafe-2.0.1.tar.gz + - sha256: 077ce6014f7b40d03b47d1f1ca4b0fc8328a692bd284016f806ed0eaca390ad8 + type: file + url: https://files.pythonhosted.org/packages/20/9a/e5d9ec41927401e41aea8af6d16e78b5e612bca4699d417f646a9610a076/Jinja2-3.0.3-py3-none-any.whl - name: jacktrip buildsystem: meson sources: diff --git a/linux/meson.build b/linux/meson.build index f0c9208..34d8690 100644 --- a/linux/meson.build +++ b/linux/meson.build @@ -13,10 +13,18 @@ if host_machine.system() == 'linux' install_dir: get_option('datadir') / 'applications' ) + prog_python = import('python').find_installation('python3') + + metainfo_in = configure_file( + input: ['add_changelog_to_metainfo.py', 'org.jacktrip.JackTrip.metainfo.xml.in.in'], + output: 'org.jacktrip.JackTrip.metainfo.xml.in', + command: [prog_python, '@INPUT@', '@OUTPUT@'] + ) + appdata_conf = configuration_data() appdata_conf.set('appid', application_id) configure_file( - input: files('org.jacktrip.JackTrip.metainfo.xml.in'), + input: metainfo_in, output: '@0@.metainfo.xml'.format(application_id), configuration: appdata_conf, install_dir: get_option('datadir') / 'metainfo' diff --git a/linux/org.jacktrip.JackTrip.metainfo.xml.in b/linux/org.jacktrip.JackTrip.metainfo.xml.in.in similarity index 74% rename from linux/org.jacktrip.JackTrip.metainfo.xml.in rename to linux/org.jacktrip.JackTrip.metainfo.xml.in.in index 6509402..a082269 100644 --- a/linux/org.jacktrip.JackTrip.metainfo.xml.in +++ b/linux/org.jacktrip.JackTrip.metainfo.xml.in.in @@ -29,6 +29,18 @@ jacktrip + + {%- for release in releases %} + + + {%- for change in release.Description %} +

{{ change }}

+ {%- endfor %} +
+
+ {%- endfor %} +
+ intense diff --git a/mkdocs.yml b/mkdocs.yml index de40622..a4a907d 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -20,6 +20,10 @@ nav: - Resources: About/Resources.md - Changelog: About/CHANGELOG.md - License: About/License.md +plugins: + - macros: + include_yaml: + - releases: docs/changelog.yml theme: name: material features: diff --git a/src/jacktrip_globals.h b/src/jacktrip_globals.h index 6f222f7..43c03c9 100644 --- a/src/jacktrip_globals.h +++ b/src/jacktrip_globals.h @@ -30,7 +30,7 @@ //***************************************************************** /** - * \file globals.cpp + * \file jacktrip_globals.h * \author Juan-Pablo Caceres * \date June 2008 */ @@ -39,12 +39,8 @@ #define __JACKTRIP_GLOBALS_H__ #include "AudioInterface.h" -//#include "JackAudioInterface.h" -/// \todo Add this namespace -// namespace JackTrip - -constexpr const char* const gVersion = "1.4.2"; ///< JackTrip version +constexpr const char* const gVersion = "1.4.3"; ///< JackTrip version //******************************************************************************* /// \name Default Values -- 2.30.2