Max Kellermann
2d918bf2c9
.github/workflows/build.yml: add matrix.packages
2024-07-05 17:50:46 +02:00
Max Kellermann
0bd1289371
.github/workflows/build.yml: remove the forced fallback for libfmt
...
Ubuntu 24.04 has fmt 9.1.0, so we don't need that anymore.
2024-07-05 17:50:44 +02:00
Max Kellermann
b2e2d36d79
.github/workflows/build.yml: add Meson option "--wrap-mode nofallback"
...
The library setup should be well-defined without implicit downloads.
2024-07-05 17:43:39 +02:00
Max Kellermann
11bb2ad0fd
.github/workflows/build_android.yml: update NDK to 27rc1
2024-07-05 17:35:54 +02:00
Max Kellermann
f37b699349
.github/workflows/build_android.yml: switch to Ubuntu 24.04 as well
...
Since 24.04 comes with Meson 1.3.2, we can install it with "apt-get"
instead of "pip".
2024-07-05 17:29:37 +02:00
Max Kellermann
044280c538
meson.build: require Meson 1.0
...
Debian Bookworm (the current stable) has 1.0.1 and Ubuntu LTS 24.04
has 1.3.2. It's acceptable to require at least version 1.0 now.
2024-07-05 17:23:52 +02:00
Max Kellermann
473fb4e19f
.github/workflows/build.yml: update GCC 11 build to GCC 14
...
We only need the oldest supported compiler (i.e. GCC 10) and the
newest one available in the runner (i.e. GCC 14).
2024-07-05 17:21:31 +02:00
Max Kellermann
404e1c3912
.github/workflows/build.yml: update ubuntu-22.04 to ubuntu-24.04
2024-07-05 17:12:34 +02:00
Max Kellermann
3648475f87
Merge branch 'libfmt' of https://github.com/heitbaum/MPD
2024-07-05 16:47:04 +02:00
Rudi Heitbaum
1402869715
lib/fmt: support build with libfmt-11.0.0
...
Upstream libfmt commit fmtlib/fmt@d707292
now requires the format function to be const.
Adjust the function prototype so it is const and can compile.
Signed-off-by: Rudi Heitbaum <rudi@heitbaum.com>
2024-07-05 14:33:07 +00:00
Max Kellermann
a64ea486e8
Merge branch 'albumart_doc' of https://github.com/jcorporation/MPD
2024-07-05 16:27:47 +02:00
Max Kellermann
ffa917e9b5
Merge branch 'stickernames_cmd' of https://github.com/jcorporation/MPD
2024-07-05 16:26:58 +02:00
Max Kellermann
ac1265b9cc
output/alsa: set up the ALSA channel map
...
This is necessary for proper multi-channel support because many ALSA
drivers do not use the channel maps from surround*.conf.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/2063
2024-06-27 21:52:38 +02:00
Max Kellermann
2ce8310448
time/Convert: forward-declare struct tm
2024-06-25 20:33:13 +02:00
Max Kellermann
a739eefb01
lib/zlib/Error: derive from std::system_error
2024-06-25 20:32:33 +02:00
Max Kellermann
432bfa15f4
net/SocketError: move check to IsSocketError()
2024-06-25 20:29:27 +02:00
Max Kellermann
7b938b4d14
util/Exception: sanitize message strings
...
This should prevent leaking unsanitized strings from libraries.
2024-06-25 20:29:07 +02:00
Max Kellermann
abb23ba894
event/EpollEvents: add mapping for EPOLLPRI
2024-06-25 20:28:34 +02:00
Max Kellermann
cd64f9c422
subprojects: update curl to 8.8.0-1
2024-06-25 20:08:45 +02:00
Max Kellermann
c65d0cefc1
subprojects: update sqlite3 to 3.46.0-1
2024-06-25 20:08:45 +02:00
Max Kellermann
799e89af9e
python/build/libs.py: update FFmpeg to 7.0.1
2024-06-25 20:08:00 +02:00
Max Kellermann
381215fd73
*: use std::scoped_lock with implicit template parameter
2024-05-23 20:54:49 +02:00
Max Kellermann
4fc3230fe6
event/Loop: use std::scoped_lock with implicit template parameter
2024-05-23 20:44:12 +02:00
Max Kellermann
64bdaa46fb
lib/curl/Init: use std::scoped_lock with implicit template parameter
2024-05-23 20:44:12 +02:00
Max Kellermann
6e16eaebba
lib/fmt/SystemError: include <array> only on Windows
2024-05-23 20:31:56 +02:00
Max Kellermann
a67f7f88e4
util/MimeType: add missing include
2024-05-23 20:31:10 +02:00
Max Kellermann
ec8f467585
util/Intrusive*: add IWYU pragmas
2024-05-23 20:30:50 +02:00
Max Kellermann
9e3a66d5bf
util/djb_hash: make inline and constexpr
...
Allows calculating hashes at compile time.
2024-05-23 20:30:17 +02:00
Max Kellermann
c7409d1e04
util/AllocatedString: add missing include
2024-05-23 20:22:44 +02:00
Max Kellermann
b64d01677b
storage/nfs: optimize OpenFile()
2024-05-17 13:39:42 +02:00
Max Kellermann
9e8128ecb5
lib/nfs/FileReader: convert `path` to std::string
2024-05-17 12:54:08 +02:00
Max Kellermann
131dcce0a1
playlist/Mapper: use Storage::OpenFile()
2024-05-17 12:54:08 +02:00
Max Kellermann
6dfdd8c1c2
db/update/Walk: use Storage::OpenFile()
2024-05-17 12:54:08 +02:00
Max Kellermann
1b6c279850
db/update/Paylist: use Storage::OpenFile()
2024-05-17 12:54:08 +02:00
Max Kellermann
81c778a529
SongUpdate: use Storage::OpenFile()
2024-05-17 12:54:08 +02:00
Max Kellermann
f578a1cb2b
storage/Interface: add virtual method OpenFile()
...
This should replace most InputStream::Open() calls because it is a
chance to reuse existing resources (e.g. the NFS connection). No such
optimization is implemented, currently (and the method is not yet used
by anybody).
2024-05-17 12:54:08 +02:00
Max Kellermann
2576e66a55
input/nfs: cancel the pending read operation on seek
2024-05-17 12:54:08 +02:00
Max Kellermann
58e3b830e9
lib/nfs/FileReader: clear the read_buffer in CancelRead()
...
Fixes assertion failure with libnfs 6.
2024-05-17 12:53:35 +02:00
Max Kellermann
1d35031024
lib/nfs/Connection: merge CancelAndClose() into Cancel()
2024-05-17 12:53:30 +02:00
Max Kellermann
96b61755da
lib/nfs/FileReader: fix doc typo
2024-05-15 21:31:30 +02:00
Max Kellermann
9f174c56ce
playlist/Mapper: postpone the stored playlist error
...
Fixes another regression by commit
f53cd44c7a
- an exception thrown by
playlist_open_in_playlist_dir() would skip over
playlist_open_in_storage().
2024-05-15 21:08:46 +02:00
Max Kellermann
c8be9662bb
playlist/Print: add missing exception handler
...
This went missing in commit f53cd44c7a
2024-05-15 20:53:55 +02:00
Max Kellermann
f53cd44c7a
playlist/{Stream,Mapper,Any}: propagate exceptions, do not catch&log them
...
Let the caller handle all the exceptions.
2024-05-15 20:19:57 +02:00
Max Kellermann
9303764a83
playlist/Print: throw PlaylistError::NoSuchList instead of returning false
2024-05-15 20:19:09 +02:00
Max Kellermann
a5456a89dc
playlist/Length: throw PlaylistError::NoSuchList instead of returning false
2024-05-15 20:15:16 +02:00
Max Kellermann
c974fc664c
playlist/Plugin: add `noexcept`
2024-05-15 20:02:12 +02:00
Max Kellermann
eceead671e
playlist/Stream: add API documentation
2024-05-15 19:59:57 +02:00
Max Kellermann
4e7b554605
TagAny, playlist/Mapper: use `if` with initializer
2024-05-15 15:02:59 +02:00
Max Kellermann
a701da6386
db/update/InotifyUpdate: use OpenLocalInputStream()
2024-05-15 14:48:32 +02:00
Max Kellermann
1f47fe47c7
input/Open: move code to WaitReady()
2024-05-15 14:39:40 +02:00