Hello community, here is the log from the commit of package mpd for openSUSE:Factory checked in at 2020-02-27 14:39:14 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mpd (Old) and /work/SRC/openSUSE:Factory/.mpd.new.26092 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mpd" Thu Feb 27 14:39:14 2020 rev:17 rq:779783 version:0.21.20 Changes: -------- --- /work/SRC/openSUSE:Factory/mpd/mpd.changes 2020-01-20 22:53:42.731303526 +0100 +++ /work/SRC/openSUSE:Factory/.mpd.new.26092/mpd.changes 2020-02-27 14:39:47.318335654 +0100 @@ -1,0 +2,11 @@ +Thu Feb 27 06:59:18 UTC 2020 - Илья Индиго <[email protected]> + +- Update to 0.21.20 + * https://raw.githubusercontent.com/MusicPlayerDaemon/MPD/v0.21.20/NEWS + * decoder + * audiofile, ffmpeg, sndfile: handle MIME type "audio/wav" + * ffmpeg: fix playback of AIFF and TTA + * vorbis, opus: fix seeking in small files + * fix backwards seeking on ARM (and other non-x86 CPUs) + +------------------------------------------------------------------- @@ -1548 +1558,0 @@ - Old: ---- mpd-0.21.19.tar.xz New: ---- mpd-0.21.20.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mpd.spec ++++++ --- /var/tmp/diff_new_pack.lmpYFO/_old 2020-02-27 14:39:48.994339112 +0100 +++ /var/tmp/diff_new_pack.lmpYFO/_new 2020-02-27 14:39:48.994339112 +0100 @@ -20,7 +20,7 @@ %bcond_with faad %bcond_without mpd_iso9660 Name: mpd -Version: 0.21.19 +Version: 0.21.20 Release: 0 Summary: Music Player Daemon License: GPL-2.0-or-later ++++++ mpd-0.21.19.tar.xz -> mpd-0.21.20.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/.travis.yml new/mpd-0.21.20/.travis.yml --- old/mpd-0.21.19/.travis.yml 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/.travis.yml 2020-02-16 20:43:35.000000000 +0100 @@ -17,9 +17,9 @@ - ninja-build before_install: - wget https://bootstrap.pypa.io/get-pip.py - - /usr/bin/python3.6 get-pip.py --user + - /usr/bin/python3.6 get-pip.py --user --no-cache-dir install: - - /usr/bin/python3.6 $HOME/.local/bin/pip install --user meson + - /usr/bin/python3.6 $HOME/.local/bin/pip install --user meson --no-cache-dir env: - MATRIX_EVAL="export PATH=\$HOME/.local/bin:\$PATH" @@ -39,9 +39,9 @@ - ninja-build before_install: - wget https://bootstrap.pypa.io/get-pip.py - - /usr/bin/python3.6 get-pip.py --user + - /usr/bin/python3.6 get-pip.py --user --no-cache-dir install: - - /usr/bin/python3.6 $HOME/.local/bin/pip install --user meson + - /usr/bin/python3.6 $HOME/.local/bin/pip install --user meson --no-cache-dir env: - MATRIX_EVAL="export PATH=\$HOME/.local/bin:\$PATH" @@ -61,9 +61,9 @@ - ninja-build before_install: - wget https://bootstrap.pypa.io/get-pip.py - - /usr/bin/python3.6 get-pip.py --user + - /usr/bin/python3.6 get-pip.py --user --no-cache-dir install: - - /usr/bin/python3.6 $HOME/.local/bin/pip install --user meson + - /usr/bin/python3.6 $HOME/.local/bin/pip install --user meson --no-cache-dir env: - MATRIX_EVAL="export PATH=\$HOME/.local/bin:\$PATH" @@ -86,9 +86,9 @@ - ninja-build before_install: - wget https://bootstrap.pypa.io/get-pip.py - - /usr/bin/python3.6 get-pip.py --user + - /usr/bin/python3.6 get-pip.py --user --no-cache-dir install: - - /usr/bin/python3.6 $HOME/.local/bin/pip install --user meson + - /usr/bin/python3.6 $HOME/.local/bin/pip install --user meson --no-cache-dir env: # use gold as workaround for https://sourceware.org/bugzilla/show_bug.cgi?id=17068 - MATRIX_EVAL="export CC='ccache gcc-6' CXX='ccache g++-6' LDFLAGS=-fuse-ld=gold PATH=\$HOME/.local/bin:\$PATH" @@ -112,9 +112,9 @@ - ninja-build before_install: - wget https://bootstrap.pypa.io/get-pip.py - - /usr/bin/python3.6 get-pip.py --user + - /usr/bin/python3.6 get-pip.py --user --no-cache-dir install: - - /usr/bin/python3.6 $HOME/.local/bin/pip install --user meson + - /usr/bin/python3.6 $HOME/.local/bin/pip install --user meson --no-cache-dir env: # use gold as workaround for https://sourceware.org/bugzilla/show_bug.cgi?id=17068 - MATRIX_EVAL="export CC='ccache gcc-8' CXX='ccache g++-8' LDFLAGS=-fuse-ld=gold PATH=\$HOME/.local/bin:\$PATH" @@ -148,7 +148,7 @@ # belonging to nss. You can unlink it" during gtest install - test "$TRAVIS_OS_NAME" != "osx" || brew unlink nss - - test "$TRAVIS_OS_NAME" != "osx" || brew install --HEAD https://gist.githubusercontent.com/Kronuz/96ac10fbd8472eb1e7566d740c4034f8/raw/gtest.rb + - test "$TRAVIS_OS_NAME" != "osx" || brew install https://gist.githubusercontent.com/Kronuz/96ac10fbd8472eb1e7566d740c4034f8/raw/gtest.rb before_script: - ccache -s diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/NEWS new/mpd-0.21.20/NEWS --- old/mpd-0.21.19/NEWS 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/NEWS 2020-02-16 20:43:35.000000000 +0100 @@ -1,3 +1,10 @@ +ver 0.21.20 (2020/02/16) +* decoder + - audiofile, ffmpeg, sndfile: handle MIME type "audio/wav" + - ffmpeg: fix playback of AIFF and TTA + - vorbis, opus: fix seeking in small files +* fix backwards seeking on ARM (and other non-x86 CPUs) + ver 0.21.19 (2020/01/17) * configuration - allow overriding top-level settings in includes diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/android/AndroidManifest.xml new/mpd-0.21.20/android/AndroidManifest.xml --- old/mpd-0.21.19/android/AndroidManifest.xml 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/android/AndroidManifest.xml 2020-02-16 20:43:35.000000000 +0100 @@ -2,8 +2,8 @@ <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.musicpd" android:installLocation="auto" - android:versionCode="42" - android:versionName="0.21.19"> + android:versionCode="43" + android:versionName="0.21.20"> <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="28"/> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/doc/conf.py new/mpd-0.21.20/doc/conf.py --- old/mpd-0.21.19/doc/conf.py 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/doc/conf.py 2020-02-16 20:43:35.000000000 +0100 @@ -38,7 +38,7 @@ # built documents. # # The short X.Y version. -version = '0.21.19' +version = '0.21.20' # The full version, including alpha/beta/rc tags. release = version diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/meson.build new/mpd-0.21.20/meson.build --- old/mpd-0.21.19/meson.build 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/meson.build 2020-02-16 20:43:35.000000000 +0100 @@ -1,7 +1,7 @@ project( 'mpd', ['c', 'cpp'], - version: '0.21.19', + version: '0.21.20', meson_version: '>= 0.49.0', default_options: [ 'c_std=c99', diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/src/decoder/plugins/AudiofileDecoderPlugin.cxx new/mpd-0.21.20/src/decoder/plugins/AudiofileDecoderPlugin.cxx --- old/mpd-0.21.19/src/decoder/plugins/AudiofileDecoderPlugin.cxx 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/src/decoder/plugins/AudiofileDecoderPlugin.cxx 2020-02-16 20:43:35.000000000 +0100 @@ -269,6 +269,8 @@ }; static const char *const audiofile_mime_types[] = { + "audio/wav", + "audio/aiff", "audio/x-wav", "audio/x-aiff", nullptr diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/src/decoder/plugins/FfmpegDecoderPlugin.cxx new/mpd-0.21.20/src/decoder/plugins/FfmpegDecoderPlugin.cxx --- old/mpd-0.21.19/src/decoder/plugins/FfmpegDecoderPlugin.cxx 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/src/decoder/plugins/FfmpegDecoderPlugin.cxx 2020-02-16 20:43:35.000000000 +0100 @@ -762,7 +762,7 @@ "audio/aac", "audio/aacp", "audio/ac3", - "audio/aiff" + "audio/aiff", "audio/amr", "audio/basic", "audio/flac", @@ -775,12 +775,13 @@ "audio/qcelp", "audio/vorbis", "audio/vorbis+ogg", + "audio/wav", "audio/x-8svx", "audio/x-16sv", "audio/x-aac", "audio/x-ac3", "audio/x-adx", - "audio/x-aiff" + "audio/x-aiff", "audio/x-alaw", "audio/x-au", "audio/x-dca", @@ -800,7 +801,7 @@ "audio/x-pn-realaudio", "audio/x-pn-multirate-realaudio", "audio/x-speex", - "audio/x-tta" + "audio/x-tta", "audio/x-voc", "audio/x-wav", "audio/x-wma", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/src/decoder/plugins/MadDecoderPlugin.cxx new/mpd-0.21.20/src/decoder/plugins/MadDecoderPlugin.cxx --- old/mpd-0.21.19/src/decoder/plugins/MadDecoderPlugin.cxx 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/src/decoder/plugins/MadDecoderPlugin.cxx 2020-02-16 20:43:35.000000000 +0100 @@ -793,7 +793,7 @@ if (max_frames > 8 * 1024 * 1024) { FormatWarning(mad_domain, - "mp3 file header indicates too many frames: %lu", + "mp3 file header indicates too many frames: %zu", max_frames); return false; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/src/decoder/plugins/OggDecoder.cxx new/mpd-0.21.20/src/decoder/plugins/OggDecoder.cxx --- old/mpd-0.21.19/src/decoder/plugins/OggDecoder.cxx 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/src/decoder/plugins/OggDecoder.cxx 2020-02-16 20:43:35.000000000 +0100 @@ -47,8 +47,12 @@ DecoderReader reader(client, input_stream); OggSyncState sync2(reader); OggStreamState stream2(GetSerialNo()); + + /* passing synced=false because we're inside an + OggVisitor callback, and our InputStream may be in + the middle of an Ogg packet */ result = OggSeekFindEOS(sync2, stream2, packet, - input_stream); + input_stream, false); } /* restore the previous file position */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/src/decoder/plugins/SndfileDecoderPlugin.cxx new/mpd-0.21.20/src/decoder/plugins/SndfileDecoderPlugin.cxx --- old/mpd-0.21.19/src/decoder/plugins/SndfileDecoderPlugin.cxx 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/src/decoder/plugins/SndfileDecoderPlugin.cxx 2020-02-16 20:43:35.000000000 +0100 @@ -322,6 +322,8 @@ }; static const char *const sndfile_mime_types[] = { + "audio/wav", + "audio/aiff", "audio/x-wav", "audio/x-aiff", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/src/lib/xiph/OggFind.cxx new/mpd-0.21.20/src/lib/xiph/OggFind.cxx --- old/mpd-0.21.19/src/lib/xiph/OggFind.cxx 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/src/lib/xiph/OggFind.cxx 2020-02-16 20:43:35.000000000 +0100 @@ -57,13 +57,14 @@ bool OggSeekFindEOS(OggSyncState &oy, ogg_stream_state &os, ogg_packet &packet, - InputStream &is) + InputStream &is, bool synced) { if (!is.KnownSize()) return false; if (is.GetRest() < 65536) - return OggFindEOS(oy, os, packet); + return (synced || oy.ExpectPageSeekIn(os)) && + OggFindEOS(oy, os, packet); if (!is.CheapSeeking()) return false; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/src/lib/xiph/OggFind.hxx new/mpd-0.21.20/src/lib/xiph/OggFind.hxx --- old/mpd-0.21.19/src/lib/xiph/OggFind.hxx 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/src/lib/xiph/OggFind.hxx 2020-02-16 20:43:35.000000000 +0100 @@ -47,10 +47,13 @@ * Try to find the end-of-stream (EOS) packet. Seek to the end of the * file if necessary. * + * @param synced is the #OggSyncState currently synced? If not, then + * we need to use ogg_sync_pageseek() instead of ogg_sync_pageout(), + * which is more expensive * @return true if the EOS packet was found */ bool OggSeekFindEOS(OggSyncState &oy, ogg_stream_state &os, ogg_packet &packet, - InputStream &is); + InputStream &is, bool synced=true); #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/src/protocol/ArgParser.cxx new/mpd-0.21.20/src/protocol/ArgParser.cxx --- old/mpd-0.21.19/src/protocol/ArgParser.cxx 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/src/protocol/ArgParser.cxx 2020-02-16 20:43:35.000000000 +0100 @@ -175,5 +175,5 @@ ParseCommandArgSignedSongTime(const char *s) { auto value = ParseCommandArgFloat(s); - return SongTime::FromS(value); + return SignedSongTime::FromS(value); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/test/DumpDecoderClient.cxx new/mpd-0.21.20/test/DumpDecoderClient.cxx --- old/mpd-0.21.19/test/DumpDecoderClient.cxx 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/test/DumpDecoderClient.cxx 2020-02-16 20:43:35.000000000 +0100 @@ -28,15 +28,15 @@ void DumpDecoderClient::Ready(const AudioFormat audio_format, - gcc_unused bool seekable, + bool seekable, SignedSongTime duration) { assert(!initialized); assert(audio_format.IsValid()); - fprintf(stderr, "audio_format=%s duration=%f\n", + fprintf(stderr, "audio_format=%s duration=%f seekable=%d\n", ToString(audio_format).c_str(), - duration.ToDoubleS()); + duration.ToDoubleS(), seekable); initialized = true; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpd-0.21.19/test/meson.build new/mpd-0.21.20/test/meson.build --- old/mpd-0.21.19/test/meson.build 2020-01-17 15:49:02.000000000 +0100 +++ new/mpd-0.21.20/test/meson.build 2020-02-16 20:43:35.000000000 +0100 @@ -7,9 +7,14 @@ '-Wno-suggest-attribute=format', '-Wno-suggest-attribute=noreturn', '-Wno-missing-declarations', + ] +endif - # needed on Jessie for gtest's IsNullLiteralHelper - '-Wno-conversion-null', +if compiler.get_id() == 'clang' and compiler.version().version_compare('>=9') + gtest_compile_args += [ + # work around clang warning caused by GTest's wrong "-lpthread" + # compiler flag + '-Wno-unused-command-line-argument', ] endif
