Max Kellermann
|
acd61a0e8e
|
test/run_neighbor_explorer: dump NeighborGlue::GetList() after initialization
|
2018-06-02 19:15:36 +02:00 |
Max Kellermann
|
b30a510b45
|
release v0.20.18
-----BEGIN PGP SIGNATURE-----
iQJEBAABCgAuFiEEA5IzWngIOJSkMBxDI26KWMbbRRIFAlqR3zoQHG1heEBtdXNp
Y3BkLm9yZwAKCRAjbopYxttFEqNGEACGhsZJbhqls0EawfHhpOz/x7JcloMLWvoX
GzuvVinhdFmmFId0akLsg3TCyGElNA+4YzfDjB1TyMpPFBUxM/nnthYPrSmjiT68
t+0IV6OnqFVLE2PF6pHV2Gia0Km746GZBJ+TRLeZSIksADH7nU+soepIA6idwNRN
x8Wo0ashsRIPG3FyL6f/2W/vUvD/enoxohCBB/tvnZ73Px0k2bYAwlBNW/i9/yrX
ktJ2yJqbCkKOhBQnbUvsG72Nrd4/Iz2m7cA//KBVrDEGwNv5hxNKiK/hCq3YK2W9
Ndnl0+EQxNLT1NUwF5e1LS3GtU2Mh3FQwrcq81Cj7o/wEH5e7piKBZhwDCBgOYYH
vLbaLYWK+XW/EqitkRZx5ZBrfNoqOrLreX0d2+AZJOjKDjAWgMZXoOEjmQC9/Dcj
pGcRow4jAusBRJKVN0Wmu6eeVQMjiYJNWehhyhhruShHL2ZAjJSuDhygAFW5YB3I
N2kfhwZWMHVFpA0HvcVx5JwNx7U1OyJGs0lRGThV/6jhnklGzoujvomRNJ6VNx10
ppYhmcLaHm19GR1eb8KCYnZYL2QWoQT5YLVlm0vybTX9i1k3wdf9ezU/n5hB52rP
j20Ol1I9YQw4/L985SV1W+8ll1i71o9paoJx17C8AQpxWWamQLe+vgENt9fPKIPl
aLBYU7hq9Q==
=ndLr
-----END PGP SIGNATURE-----
Merge tag 'v0.20.18'
release v0.20.18
|
2018-02-24 23:16:06 +01:00 |
Max Kellermann
|
f3e683bd6f
|
test/run_storage: fallback for %F on Windows
|
2018-02-24 22:44:42 +01:00 |
Max Kellermann
|
50ce0c0d9d
|
test/run_storage: initialize WinSock
|
2018-02-24 22:44:34 +01:00 |
Max Kellermann
|
03700ad37c
|
test/DumpDecoderClient: use STDOUT_FILENO
|
2018-02-17 08:33:01 +01:00 |
Max Kellermann
|
6d01ee9284
|
test/DumpDecoderClient: convert static local to class attribute
|
2018-02-17 08:32:16 +01:00 |
Max Kellermann
|
cc3c1f31d0
|
test/DumpDecoderClient: convert to class
|
2018-02-17 08:31:19 +01:00 |
Max Kellermann
|
5909502a13
|
test/DumpDecoderClient: add API documentation
|
2018-02-17 08:30:12 +01:00 |
Max Kellermann
|
88bbd847e0
|
test/FakeDecoderAPI: rename to DumpDecoderClient
|
2018-02-17 08:27:03 +01:00 |
Max Kellermann
|
0c300bd4b4
|
test/run_decoder: add command-line option to read mpd.conf
|
2018-02-13 00:00:00 +01:00 |
Max Kellermann
|
53acb7bfcb
|
test/run_decder: RAII-style global initialization
|
2018-02-13 00:00:00 +01:00 |
Max Kellermann
|
005bb59797
|
test/run_input: move code from Scan() to input/ScanTags.cxx
|
2018-01-29 16:57:44 +01:00 |
Max Kellermann
|
3ecf5fd442
|
test/run_input: add frontend for InputPlugin::scan_tags()
|
2018-01-26 20:08:01 +01:00 |
Max Kellermann
|
3461580b34
|
test/run_input: add option "--verbose"
|
2018-01-24 15:29:30 +01:00 |
Max Kellermann
|
fcfdeac1c7
|
test/test_translate_song: use std::to_string()
|
2018-01-24 13:38:44 +01:00 |
Max Kellermann
|
8b42fd0a28
|
Merge branch 'v0.20.x'
|
2018-01-23 16:45:57 +01:00 |
Max Kellermann
|
ea66cdd6a5
|
test/read_mixer: another kludge to work around -Wnull-dereference
|
2018-01-23 16:42:25 +01:00 |
Max Kellermann
|
f762e8034f
|
test/NullMixerListener: new class to fix -Wnull-dereference
|
2018-01-23 16:28:56 +01:00 |
Max Kellermann
|
1e3f0650df
|
SongUpdate: add "noexcept"
|
2018-01-21 11:53:42 +01:00 |
Max Kellermann
|
61eb2aa328
|
storage/Interface: wrap StorageDirectoryReader in std::unique_ptr
|
2018-01-21 11:04:30 +01:00 |
Max Kellermann
|
0095e2d7d8
|
playlist/Plugin: use std::unique_ptr<SongEnumerator>
|
2018-01-20 19:59:42 +01:00 |
Max Kellermann
|
eef5b58211
|
tag/Tag: add "noexcept"
|
2018-01-20 19:39:46 +01:00 |
Max Kellermann
|
c4f7740b80
|
fs/Path: replace method Null() with nullptr_t constructor
|
2018-01-17 12:16:21 +01:00 |
Max Kellermann
|
6c239f7a00
|
test/run_input: add option to load a configuration file
|
2018-01-17 12:09:08 +01:00 |
Max Kellermann
|
7d5b859756
|
test/run_input: add command-line option parser
|
2018-01-17 12:04:01 +01:00 |
Max Kellermann
|
8649ea3d6f
|
thread/Thread: use BoundMethod
|
2018-01-07 17:20:26 +01:00 |
Max Kellermann
|
6d0d8cf9cf
|
filter/Filter: add virtual method Flush()
This will be used by filters which have internal buffers which need to
be flushed at the end, e.g. the "soxr" resampler.
|
2018-01-02 23:15:51 +01:00 |
Max Kellermann
|
bbabb7a14c
|
filter/Plugin: move filter_configured_new() to LoadOne.cxx
|
2018-01-02 23:06:53 +01:00 |
Max Kellermann
|
cd6de3b24e
|
neighbor/{Explorer,Listener}: add "noexcept"
|
2018-01-02 16:58:14 +01:00 |
Max Kellermann
|
3c5e4e2788
|
storage/Plugin: return std::unique_ptr<Storage>
|
2018-01-02 16:11:17 +01:00 |
Max Kellermann
|
10537c5095
|
test/run_filter: use "auto"
|
2018-01-01 19:06:17 +01:00 |
Max Kellermann
|
551ac56a33
|
Filter/Internal: split header
|
2018-01-01 18:48:34 +01:00 |
Max Kellermann
|
a2c2288cd6
|
test/run_filter: throw exception on error
|
2017-12-27 12:03:13 +01:00 |
Max Kellermann
|
e2621d5e44
|
filter/Plugin: return std::unique_ptr<PreparedFilter>
|
2017-12-27 11:39:01 +01:00 |
Max Kellermann
|
2e0949d8e6
|
archive/Plugin: return std::unique_ptr<ArchiveFile>
|
2017-12-27 09:07:21 +01:00 |
Max Kellermann
|
49619fbd77
|
input/Proxy: use InputStreamPtr
|
2017-12-26 20:03:37 +01:00 |
Max Kellermann
|
9aec2f019a
|
archive/File: eliminate Close(), make destructor virtual instead
|
2017-12-22 16:30:17 +01:00 |
Max Kellermann
|
73e69edac3
|
input/InputStream: ReadTag() returns std::unique_ptr<Tag>
|
2017-12-20 15:22:18 +01:00 |
Max Kellermann
|
cb3042ffb2
|
tag/Builder: CommitNew() returns std::unique_ptr<Tag>
|
2017-12-20 14:55:25 +01:00 |
Max Kellermann
|
d293aaf945
|
test/test_icy_parser: use AtScopeExit()
|
2017-12-20 14:54:56 +01:00 |
Max Kellermann
|
914df18bf9
|
Main, ...: catch any exception, not just std::runtime_error
|
2017-12-19 10:56:23 +01:00 |
Max Kellermann
|
6246d36fe6
|
Merge branch 'v0.20.x'
|
2017-12-16 20:56:06 +01:00 |
Max Kellermann
|
dfaf08743c
|
*: check defined(_WIN32) instead of defined(WIN32)
Only _WIN32 is defined by the compiler, and WIN32 is not standardized
and may be missing.
Closes #169
|
2017-12-12 10:22:20 +01:00 |
Max Kellermann
|
e4a147218b
|
Merge branch 'v0.20.x'
|
2017-11-12 18:55:12 +01:00 |
Max Kellermann
|
a2b77c8813
|
decoder/ffmpeg, test/test_protocol: catch exceptions by reference
Work around -Werror=catch-value.
|
2017-11-12 18:54:29 +01:00 |
Max Kellermann
|
49784513b1
|
util/{Const,Writable}Buffer, ...: rename IsEmpty() to empty(), imitating STL
|
2017-11-10 19:24:33 +01:00 |
Max Kellermann
|
28a2d41b85
|
db/DatabasePlugin: pass EventThread's EventLoop to create()
Allows database plugins to use the EventThread, e.g. for CURL
integration.
|
2017-08-24 19:53:52 +02:00 |
Max Kellermann
|
cd0e92878f
|
test/DumpDatabase: start an EventThread
Our local EventLoop instance was never run; it was not usable.
|
2017-08-18 17:16:23 +02:00 |
Max Kellermann
|
9033f07724
|
test/{DumpDatabase,run_neighbor_explorer}: add class GlobalInit
|
2017-08-18 14:21:54 +02:00 |
Max Kellermann
|
b886dfae4d
|
DetachedSong, db/LightSong, db/simple/Song: use std::chrono::system_clock::time_point
|
2017-08-18 12:22:47 +02:00 |