From 53391e37e831bf2c39211e11f2dc33f345e47070 Mon Sep 17 00:00:00 2001 From: emeric Date: Sun, 21 Sep 2025 17:27:07 +0200 Subject: [PATCH] Updated clang format, and restored dsd file handling that was actually broken --- .clang-format | 2 +- src/libs/av/impl/AudioFile.cpp | 10 +-- src/libs/core/impl/ChildProcess.cpp | 30 ++++---- src/libs/core/impl/FileResourceHandler.hpp | 2 +- src/libs/core/impl/TraceLogger.cpp | 4 +- src/libs/core/impl/http/ClientRequest.hpp | 2 +- src/libs/database/impl/Migration.cpp | 2 +- src/libs/database/impl/SqlQuery.hpp | 2 +- src/libs/image/impl/stb/RawImage.cpp | 8 +- src/libs/metadata/bench/Metadata.cpp | 74 +++++++++---------- src/libs/metadata/impl/AudioFileParser.cpp | 8 +- src/libs/metadata/impl/taglib/TagLibDefs.hpp | 2 +- .../metadata/impl/taglib/TagLibTagReader.cpp | 3 + src/libs/metadata/impl/taglib/Utils.cpp | 16 ++-- src/libs/metadata/test/TestTagReader.hpp | 4 +- .../services/artwork/impl/ArtworkService.cpp | 4 +- .../auth/impl/PasswordServiceBase.hpp | 4 +- .../services/auth/IPasswordService.hpp | 4 +- .../impl/features/FeaturesDefs.cpp | 2 +- .../impl/features/FeaturesEngine.cpp | 32 ++++---- .../impl/features/FeaturesEngine.hpp | 20 ++--- .../ConsecutiveArtists.cpp | 4 +- .../impl/scanners/AudioFileScanOperation.cpp | 6 +- .../steps/ScanStepAssociateArtistImages.cpp | 16 ++-- .../steps/ScanStepAssociateMediumImages.cpp | 8 +- .../steps/ScanStepAssociateReleaseImages.cpp | 8 +- .../steps/ScanStepCheckForRemovedFiles.cpp | 6 +- .../impl/TranscodingResourceHandler.hpp | 2 +- src/libs/som/impl/DataNormalizer.cpp | 6 +- src/libs/som/impl/Network.cpp | 12 +-- src/libs/subsonic/impl/SubsonicResource.cpp | 16 ++-- src/libs/subsonic/impl/SubsonicResponse.cpp | 2 +- src/libs/subsonic/impl/endpoints/Browsing.cpp | 8 +- src/libs/subsonic/impl/responses/Artist.cpp | 6 +- src/lms/main.cpp | 14 ++-- src/lms/ui/Auth.cpp | 10 +-- src/lms/ui/LmsApplication.cpp | 16 ++-- src/lms/ui/LmsTheme.hpp | 8 +- src/lms/ui/resource/AudioFileResource.hpp | 2 +- src/tools/metadata/LmsMetadata.cpp | 2 +- .../GeneticAlgorithm.hpp | 10 +-- .../LmsSimilarityParameters.cpp | 10 +-- 42 files changed, 205 insertions(+), 202 deletions(-) diff --git a/.clang-format b/.clang-format index bb47648f..4b57d50b 100644 --- a/.clang-format +++ b/.clang-format @@ -2,7 +2,7 @@ Language: Cpp BasedOnStyle: Microsoft Standard: c++20 AccessModifierOffset: -4 -AlignAfterOpenBracket: DontAlign +AlignAfterOpenBracket: Align AlignConsecutiveAssignments: false AlignConsecutiveDeclarations: false AlignOperands: AlignAfterOperator diff --git a/src/libs/av/impl/AudioFile.cpp b/src/libs/av/impl/AudioFile.cpp index 6c91c368..8c3ee0d2 100644 --- a/src/libs/av/impl/AudioFile.cpp +++ b/src/libs/av/impl/AudioFile.cpp @@ -204,11 +204,11 @@ namespace lms::av std::optional AudioFile::getBestStreamIndex() const { int res = ::av_find_best_stream(_context, - AVMEDIA_TYPE_AUDIO, - -1, // Auto - -1, // Auto - NULL, - 0); + AVMEDIA_TYPE_AUDIO, + -1, // Auto + -1, // Auto + NULL, + 0); if (res < 0) return std::nullopt; diff --git a/src/libs/core/impl/ChildProcess.cpp b/src/libs/core/impl/ChildProcess.cpp index dfcb532f..a0d64c82 100644 --- a/src/libs/core/impl/ChildProcess.cpp +++ b/src/libs/core/impl/ChildProcess.cpp @@ -202,24 +202,24 @@ namespace lms::core LMS_LOG(CHILDPROCESS, DEBUG, "Async read, bufferSize = " << bufferSize); boost::asio::async_read(_childStdout, boost::asio::buffer(data, bufferSize), - [this, callback{ std::move(callback) }](const boost::system::error_code& error, std::size_t bytesTransferred) { - LMS_LOG(CHILDPROCESS, DEBUG, "Async read cb - ec = '" << error.message() << "' (" << error.value() << "), bytesTransferred = " << bytesTransferred); + [this, callback{ std::move(callback) }](const boost::system::error_code& error, std::size_t bytesTransferred) { + LMS_LOG(CHILDPROCESS, DEBUG, "Async read cb - ec = '" << error.message() << "' (" << error.value() << "), bytesTransferred = " << bytesTransferred); - ReadResult readResult{ ReadResult::Success }; - if (error) - { - if (error != boost::asio::error::eof) - { - // forbidden to read any captured param here as the ChildProcess instance may already have been killed - return; - } + ReadResult readResult{ ReadResult::Success }; + if (error) + { + if (error != boost::asio::error::eof) + { + // forbidden to read any captured param here as the ChildProcess instance may already have been killed + return; + } - readResult = ReadResult::EndOfFile; - _finished = true; - } + readResult = ReadResult::EndOfFile; + _finished = true; + } - callback(readResult, bytesTransferred); - }); + callback(readResult, bytesTransferred); + }); } std::size_t ChildProcess::readSome(std::byte* data, std::size_t bufferSize) diff --git a/src/libs/core/impl/FileResourceHandler.hpp b/src/libs/core/impl/FileResourceHandler.hpp index 34beecc4..c37430bb 100644 --- a/src/libs/core/impl/FileResourceHandler.hpp +++ b/src/libs/core/impl/FileResourceHandler.hpp @@ -35,7 +35,7 @@ namespace lms::core private: Wt::Http::ResponseContinuation* processRequest(const Wt::Http::Request& request, Wt::Http::Response& response) override; - void abort() override{}; + void abort() override {}; static constexpr std::size_t _chunkSize{ 262'144 }; diff --git a/src/libs/core/impl/TraceLogger.cpp b/src/libs/core/impl/TraceLogger.cpp index 2b47cf51..da879779 100644 --- a/src/libs/core/impl/TraceLogger.cpp +++ b/src/libs/core/impl/TraceLogger.cpp @@ -78,9 +78,9 @@ namespace lms::core::tracing setMetadata("cpu_count", std::to_string(std::thread::hardware_concurrency())); setMetadata("build_type", #ifndef NDEBUG - "debug" + "debug" #else - "release" + "release" #endif ); } diff --git a/src/libs/core/impl/http/ClientRequest.hpp b/src/libs/core/impl/http/ClientRequest.hpp index 81b7e38a..effd1df0 100644 --- a/src/libs/core/impl/http/ClientRequest.hpp +++ b/src/libs/core/impl/http/ClientRequest.hpp @@ -43,7 +43,7 @@ namespace lms::core::http std::visit([&](const auto& parameters) { res = &static_cast(parameters); }, - _parameters); + _parameters); return *res; } diff --git a/src/libs/database/impl/Migration.cpp b/src/libs/database/impl/Migration.cpp index 51b39d64..cda0492a 100644 --- a/src/libs/database/impl/Migration.cpp +++ b/src/libs/database/impl/Migration.cpp @@ -344,7 +344,7 @@ CREATE TABLE IF NOT EXISTS "track_backup" ( SELECT 1, 0, s_s.media_directory, "Main" FROM scan_settings s_s WHERE id = ?)", - scanSettingsId); + scanSettingsId); // Remove the outdated column in scan_settings utils::executeCommand(*session.getDboSession(), "ALTER TABLE scan_settings DROP media_directory"); diff --git a/src/libs/database/impl/SqlQuery.hpp b/src/libs/database/impl/SqlQuery.hpp index 507c07af..99957673 100644 --- a/src/libs/database/impl/SqlQuery.hpp +++ b/src/libs/database/impl/SqlQuery.hpp @@ -74,7 +74,7 @@ namespace lms::db class SelectStatement { public: - SelectStatement(){}; + SelectStatement() {}; SelectStatement(const std::string& item); SelectStatement& And(const std::string& item); diff --git a/src/libs/image/impl/stb/RawImage.cpp b/src/libs/image/impl/stb/RawImage.cpp index b06d3be0..d02fb438 100644 --- a/src/libs/image/impl/stb/RawImage.cpp +++ b/src/libs/image/impl/stb/RawImage.cpp @@ -74,13 +74,13 @@ namespace lms::image::STB #if STB_IMAGE_RESIZE_VERSION == 1 if (::stbir_resize_uint8_srgb(reinterpret_cast(_data.get()), _width, _height, 0, - reinterpret_cast(resizedData.get()), width, height, 0, - 3, STBIR_ALPHA_CHANNEL_NONE, 0) + reinterpret_cast(resizedData.get()), width, height, 0, + 3, STBIR_ALPHA_CHANNEL_NONE, 0) == 0) #elif STB_IMAGE_RESIZE_VERSION == 2 if (::stbir_resize_uint8_srgb(reinterpret_cast(_data.get()), _width, _height, 0, - reinterpret_cast(resizedData.get()), width, height, 0, - STBIR_RGB) + reinterpret_cast(resizedData.get()), width, height, 0, + STBIR_RGB) == 0) #else #error "Unhandled STB image resize version"! diff --git a/src/libs/metadata/bench/Metadata.cpp b/src/libs/metadata/bench/Metadata.cpp index 306788ca..16195076 100644 --- a/src/libs/metadata/bench/Metadata.cpp +++ b/src/libs/metadata/bench/Metadata.cpp @@ -75,43 +75,43 @@ namespace lms::metadata::benchmarks params.artistTagDelimiters = { "/", ";" }; // The list itself is not important, the idea is to have some volume params.artistsToNotSplit = { "AC/DC", - "+/-", - R"(A/N【eɪ-ɛn)", - "Akron/Family", - "AM/FM", - "Ashes/Dust", - "B/B/S/", - "BLCK/MRKT/RGNS", - "Body/Gate/Head", - "Body/Head", - "Born/Dead", - "Burger/Ink", - "case/lang/veirs", - "Chicago / London Underground", - "Dakota/Dakota", - "Dark/Light", - "Decades/Failures", - "The Denison/Kimball Trio", - "D-W/L-SS", - "F/i", - "Friend / Enemy", - "GZA/Genius", - "I/O", - "I/O3", - "In/Humanity", - "Love/Lust", - "Mirror/Dash", - "Model/Actress", - "N/N", - "Neither/Neither World", - "P1/E", - "Sick/Tired", - "t/e/u/", - "tide/edit", - "V/Vm", - "White/Lichens", - "White/Light", - "Yamantaka // Sonic Titan" }; + "+/-", + R"(A/N【eɪ-ɛn)", + "Akron/Family", + "AM/FM", + "Ashes/Dust", + "B/B/S/", + "BLCK/MRKT/RGNS", + "Body/Gate/Head", + "Body/Head", + "Born/Dead", + "Burger/Ink", + "case/lang/veirs", + "Chicago / London Underground", + "Dakota/Dakota", + "Dark/Light", + "Decades/Failures", + "The Denison/Kimball Trio", + "D-W/L-SS", + "F/i", + "Friend / Enemy", + "GZA/Genius", + "I/O", + "I/O3", + "In/Humanity", + "Love/Lust", + "Mirror/Dash", + "Model/Actress", + "N/N", + "Neither/Neither World", + "P1/E", + "Sick/Tired", + "t/e/u/", + "tide/edit", + "V/Vm", + "White/Lichens", + "White/Light", + "Yamantaka // Sonic Titan" }; const TestAudioFileParser parser{ params }; for (auto _ : state) diff --git a/src/libs/metadata/impl/AudioFileParser.cpp b/src/libs/metadata/impl/AudioFileParser.cpp index 4812e734..5878e7d4 100644 --- a/src/libs/metadata/impl/AudioFileParser.cpp +++ b/src/libs/metadata/impl/AudioFileParser.cpp @@ -196,10 +196,10 @@ namespace lms::metadata } std::vector getArtists(const ITagReader& tagReader, - std::initializer_list artistTagNames, - std::initializer_list artistSortTagNames, - std::initializer_list artistMBIDTagNames, - const AudioFileParserParameters& params) + std::initializer_list artistTagNames, + std::initializer_list artistSortTagNames, + std::initializer_list artistMBIDTagNames, + const AudioFileParserParameters& params) { std::vector artistNames{ getTagValuesFirstMatchAs(tagReader, artistTagNames, params.artistTagDelimiters, ¶ms.artistsToNotSplit) }; if (artistNames.empty()) diff --git a/src/libs/metadata/impl/taglib/TagLibDefs.hpp b/src/libs/metadata/impl/taglib/TagLibDefs.hpp index 4f13bf3e..cbcbbf6d 100644 --- a/src/libs/metadata/impl/taglib/TagLibDefs.hpp +++ b/src/libs/metadata/impl/taglib/TagLibDefs.hpp @@ -21,7 +21,7 @@ #include -#if (TAGLIB_MAJOR_VERSION > 2) +#if (TAGLIB_MAJOR_VERSION >= 2) #define TAGLIB_HAS_DSF 1 #endif diff --git a/src/libs/metadata/impl/taglib/TagLibTagReader.cpp b/src/libs/metadata/impl/taglib/TagLibTagReader.cpp index b192a2d0..b2fd0db8 100644 --- a/src/libs/metadata/impl/taglib/TagLibTagReader.cpp +++ b/src/libs/metadata/impl/taglib/TagLibTagReader.cpp @@ -45,6 +45,7 @@ #include #include #if TAGLIB_HAS_DSF + #include #include #endif @@ -452,6 +453,8 @@ namespace lms::metadata::taglib #if TAGLIB_HAS_DSF else if (const auto* dsfProperties{ dynamic_cast(properties) }) _audioProperties.bitsPerSample = dsfProperties->bitsPerSample(); + else if (const auto* dsfProperties{ dynamic_cast(properties) }) + _audioProperties.bitsPerSample = dsfProperties->bitsPerSample(); #endif } diff --git a/src/libs/metadata/impl/taglib/Utils.cpp b/src/libs/metadata/impl/taglib/Utils.cpp index a8320fa2..2d01b6e2 100644 --- a/src/libs/metadata/impl/taglib/Utils.cpp +++ b/src/libs/metadata/impl/taglib/Utils.cpp @@ -40,6 +40,7 @@ #include #include #if TAGLIB_HAS_DSF + #include #include #endif @@ -50,14 +51,13 @@ namespace lms::metadata::taglib::utils { std::span getSupportedExtensions() { - static const std::vector supportedExtensions - { + static const std::vector supportedExtensions{ ".mp3", ".mp2", ".aac", ".ogg", ".oga", ".flac", ".spx", ".opus", - ".mpc", ".wv", ".ape", ".tta", ".m4a", ".m4r", ".m4b", ".m4p", - ".3g2", ".m4v", ".wma", ".asf", ".aif", ".aiff", ".afc", ".aifc", - ".wav", + ".mpc", ".wv", ".ape", ".tta", ".m4a", ".m4r", ".m4b", ".m4p", + ".3g2", ".m4v", ".wma", ".asf", ".aif", ".aiff", ".afc", ".aifc", + ".wav", #if TAGLIB_HAS_DSF - ".dsf", ".dff", ".dsdiff" + ".dsf", ".dff", ".dsdiff" #endif }; @@ -201,9 +201,9 @@ namespace lms::metadata::taglib::utils else if (TagLib::RIFF::WAV::File::isSupported(stream)) file = std::make_unique(stream, readAudioProperties, audioPropertiesStyle); #if TAGLIB_HAS_DSF - else if (DSF::File::isSupported(stream)) + else if (TagLib::DSF::File::isSupported(stream)) file = std::make_unique(stream, readAudioProperties, audioPropertiesStyle); - else if (DSDIFF::File::isSupported(stream)) + else if (TagLib::DSDIFF::File::isSupported(stream)) file = std::make_unique(stream, readAudioProperties, audioPropertiesStyle); #endif diff --git a/src/libs/metadata/test/TestTagReader.hpp b/src/libs/metadata/test/TestTagReader.hpp index 32f47f39..d7f6b11a 100644 --- a/src/libs/metadata/test/TestTagReader.hpp +++ b/src/libs/metadata/test/TestTagReader.hpp @@ -161,9 +161,9 @@ namespace lms::metadata::tests { TagType::TotalDiscs, { "3" } }, }) }; testTags->setExtraUserTags({ { "MY_AWESOME_TAG_A", { "MyTagValue1ForTagA", "MyTagValue2ForTagA" } }, - { "MY_AWESOME_TAG_B", { "MyTagValue1ForTagB", "MyTagValue2ForTagB" } } }); + { "MY_AWESOME_TAG_B", { "MyTagValue1ForTagB", "MyTagValue2ForTagB" } } }); testTags->setPerformersTags({ { "RoleA", { "MyPerformer1ForRoleA", "MyPerformer2ForRoleA" } }, - { "RoleB", { "MyPerformer1ForRoleB", "MyPerformer2ForRoleB" } } }); + { "RoleB", { "MyPerformer1ForRoleB", "MyPerformer2ForRoleB" } } }); testTags->setLyricsTags({ { "eng", "[00:00.00]First line\n[00:01.00]Second line" } }); return testTags; diff --git a/src/libs/services/artwork/impl/ArtworkService.cpp b/src/libs/services/artwork/impl/ArtworkService.cpp index eb380d1b..d46bdf0c 100644 --- a/src/libs/services/artwork/impl/ArtworkService.cpp +++ b/src/libs/services/artwork/impl/ArtworkService.cpp @@ -47,8 +47,8 @@ namespace lms::artwork } ArtworkService::ArtworkService(db::IDb& db, - const std::filesystem::path& defaultReleaseCoverSvgPath, - const std::filesystem::path& defaultArtistImageSvgPath) + const std::filesystem::path& defaultReleaseCoverSvgPath, + const std::filesystem::path& defaultArtistImageSvgPath) : _db{ db } , _audioFileParser{ metadata::createAudioFileParser(metadata::AudioFileParserParameters{}) } , _cache{ core::Service::get()->getULong("cover-max-cache-size", 30) * 1000 * 1000 } diff --git a/src/libs/services/auth/impl/PasswordServiceBase.hpp b/src/libs/services/auth/impl/PasswordServiceBase.hpp index 3c5be452..bd15053b 100644 --- a/src/libs/services/auth/impl/PasswordServiceBase.hpp +++ b/src/libs/services/auth/impl/PasswordServiceBase.hpp @@ -48,8 +48,8 @@ namespace lms::auth virtual bool checkUserPassword(std::string_view loginName, std::string_view password) = 0; CheckResult checkUserPassword(const boost::asio::ip::address& clientAddress, - std::string_view loginName, - std::string_view password) override; + std::string_view loginName, + std::string_view password) override; std::shared_mutex _mutex; LoginThrottler _loginThrottler; diff --git a/src/libs/services/auth/include/services/auth/IPasswordService.hpp b/src/libs/services/auth/include/services/auth/IPasswordService.hpp index 83260ca5..3e67c86a 100644 --- a/src/libs/services/auth/include/services/auth/IPasswordService.hpp +++ b/src/libs/services/auth/include/services/auth/IPasswordService.hpp @@ -53,8 +53,8 @@ namespace lms::auth db::UserId userId{}; }; virtual CheckResult checkUserPassword(const boost::asio::ip::address& clientAddress, - std::string_view loginName, - std::string_view password) + std::string_view loginName, + std::string_view password) = 0; virtual bool canSetPasswords() const = 0; diff --git a/src/libs/services/recommendation/impl/features/FeaturesDefs.cpp b/src/libs/services/recommendation/impl/features/FeaturesDefs.cpp index 5a9e6b8e..20a21d1e 100644 --- a/src/libs/services/recommendation/impl/features/FeaturesDefs.cpp +++ b/src/libs/services/recommendation/impl/features/FeaturesDefs.cpp @@ -382,7 +382,7 @@ namespace lms::recommendation FeatureNames res; std::transform(std::cbegin(featureDefinitions), std::cend(featureDefinitions), - std::inserter(res, std::begin(res)), [](auto itFeature) { return itFeature.first; }); + std::inserter(res, std::begin(res)), [](auto itFeature) { return itFeature.first; }); return res; } diff --git a/src/libs/services/recommendation/impl/features/FeaturesEngine.cpp b/src/libs/services/recommendation/impl/features/FeaturesEngine.cpp index cb3bf190..8da6c6d4 100644 --- a/src/libs/services/recommendation/impl/features/FeaturesEngine.cpp +++ b/src/libs/services/recommendation/impl/features/FeaturesEngine.cpp @@ -101,10 +101,10 @@ namespace lms::recommendation std::unordered_set featureNames; std::transform(std::cbegin(trainSettings.featureSettingsMap), std::cend(trainSettings.featureSettingsMap), std::inserter(featureNames, std::begin(featureNames)), - [](const auto& itFeatureSetting) { return itFeatureSetting.first; }); + [](const auto& itFeatureSetting) { return itFeatureSetting.first; }); const std::size_t nbDimensions{ std::accumulate(std::cbegin(featureNames), std::cend(featureNames), std::size_t{ 0 }, - [](std::size_t sum, const FeatureName& featureName) { return sum + getFeatureDef(featureName).nbDimensions; }) }; + [](std::size_t sum, const FeatureName& featureName) { return sum + getFeatureDef(featureName).nbDimensions; }) }; LMS_LOG(RECOMMENDATION, DEBUG, "Features dimension = " << nbDimensions); @@ -184,8 +184,8 @@ namespace lms::recommendation LMS_LOG(RECOMMENDATION, DEBUG, "Training network..."); network.train(samples, trainSettings.iterationCount, - progressCallback ? somProgressCallback : som::Network::ProgressCallback{}, - [this] { return _loadCancelled; }); + progressCallback ? somProgressCallback : som::Network::ProgressCallback{}, + [this] { return _loadCancelled; }); LMS_LOG(RECOMMENDATION, DEBUG, "Training network DONE"); LMS_LOG(RECOMMENDATION, DEBUG, "Classifying tracks..."); @@ -242,10 +242,10 @@ namespace lms::recommendation auto transaction{ session.createReadTransaction() }; similarTrackIds.erase(std::remove_if(std::begin(similarTrackIds), std::end(similarTrackIds), - [&](TrackId trackId) { - return !Track::exists(session, trackId); - }), - std::end(similarTrackIds)); + [&](TrackId trackId) { + return !Track::exists(session, trackId); + }), + std::end(similarTrackIds)); } return similarTrackIds; @@ -263,10 +263,10 @@ namespace lms::recommendation auto transaction{ session.createReadTransaction() }; similarReleaseIds.erase(std::remove_if(std::begin(similarReleaseIds), std::end(similarReleaseIds), - [&](ReleaseId releaseId) { - return !Release::exists(session, releaseId); - }), - std::end(similarReleaseIds)); + [&](ReleaseId releaseId) { + return !Release::exists(session, releaseId); + }), + std::end(similarReleaseIds)); } return similarReleaseIds; @@ -302,10 +302,10 @@ namespace lms::recommendation auto transaction{ session.createReadTransaction() }; res.erase(std::remove_if(std::begin(res), std::end(res), - [&](ArtistId artistId) { - return !Artist::exists(session, artistId); - }), - std::end(res)); + [&](ArtistId artistId) { + return !Artist::exists(session, artistId); + }), + std::end(res)); } while (res.size() > maxCount) diff --git a/src/libs/services/recommendation/impl/features/FeaturesEngine.hpp b/src/libs/services/recommendation/impl/features/FeaturesEngine.hpp index 3633a9f2..a3a13b47 100644 --- a/src/libs/services/recommendation/impl/features/FeaturesEngine.hpp +++ b/src/libs/services/recommendation/impl/features/FeaturesEngine.hpp @@ -101,9 +101,9 @@ namespace lms::recommendation template std::vector getSimilarObjects(const std::vector& ids, - const ObjectMatrix& objectMatrix, - const ObjectPositions& objectPositions, - std::size_t maxCount) const; + const ObjectMatrix& objectMatrix, + const ObjectPositions& objectPositions, + std::size_t maxCount) const; db::IDb& _db; bool _loadCancelled{}; @@ -157,9 +157,9 @@ namespace lms::recommendation template std::vector FeaturesEngine::getSimilarObjects(const std::vector& ids, - const ObjectMatrix& objectMatrix, - const ObjectPositions& objectPositions, - std::size_t maxCount) const + const ObjectMatrix& objectMatrix, + const ObjectPositions& objectPositions, + std::size_t maxCount) const { std::vector res; @@ -173,10 +173,10 @@ namespace lms::recommendation // Remove objects that are already in input or already reported closestObjectIds.erase(std::remove_if(std::begin(closestObjectIds), std::end(closestObjectIds), - [&](IdType id) { - return std::find(std::cbegin(ids), std::cend(ids), id) != std::cend(ids); - }), - std::end(closestObjectIds)); + [&](IdType id) { + return std::find(std::cbegin(ids), std::cend(ids), id) != std::cend(ids); + }), + std::end(closestObjectIds)); for (IdType id : closestObjectIds) { diff --git a/src/libs/services/recommendation/impl/playlist-constraints/ConsecutiveArtists.cpp b/src/libs/services/recommendation/impl/playlist-constraints/ConsecutiveArtists.cpp index f5a27025..ab157221 100644 --- a/src/libs/services/recommendation/impl/playlist-constraints/ConsecutiveArtists.cpp +++ b/src/libs/services/recommendation/impl/playlist-constraints/ConsecutiveArtists.cpp @@ -35,8 +35,8 @@ namespace lms::recommendation::PlaylistGeneratorConstraint ArtistContainer intersection; std::set_intersection(std::cbegin(artists1), std::cend(artists1), - std::cbegin(artists2), std::cend(artists2), - std::back_inserter(intersection)); + std::cbegin(artists2), std::cend(artists2), + std::back_inserter(intersection)); return intersection.size(); } diff --git a/src/libs/services/scanner/impl/scanners/AudioFileScanOperation.cpp b/src/libs/services/scanner/impl/scanners/AudioFileScanOperation.cpp index 284c713e..87d8b92f 100644 --- a/src/libs/services/scanner/impl/scanners/AudioFileScanOperation.cpp +++ b/src/libs/services/scanner/impl/scanners/AudioFileScanOperation.cpp @@ -591,9 +591,9 @@ namespace lms::scanner // Skip if duplicate files no longer in media root: as it will be removed later, we will end up with no file auto& mediaLibraries{ getScannerSettings().mediaLibraries }; if (std::none_of(std::cbegin(mediaLibraries), std::cend(mediaLibraries), - [&](const MediaLibraryInfo& libraryInfo) { - return core::pathUtils::isPathInRootPath(getFilePath(), libraryInfo.rootDirectory, &excludeDirFileName); - })) + [&](const MediaLibraryInfo& libraryInfo) { + return core::pathUtils::isPathInRootPath(getFilePath(), libraryInfo.rootDirectory, &excludeDirFileName); + })) { continue; } diff --git a/src/libs/services/scanner/impl/steps/ScanStepAssociateArtistImages.cpp b/src/libs/services/scanner/impl/steps/ScanStepAssociateArtistImages.cpp index 885ad2d9..3650ed5c 100644 --- a/src/libs/services/scanner/impl/steps/ScanStepAssociateArtistImages.cpp +++ b/src/libs/services/scanner/impl/steps/ScanStepAssociateArtistImages.cpp @@ -246,10 +246,10 @@ namespace lms::scanner std::vector res; core::Service::get()->visitStrings("artist-image-file-names", - [&res](std::string_view fileName) { - res.emplace_back(fileName); - }, - { "artist" }); + [&res](std::string_view fileName) { + res.emplace_back(fileName); + }, + { "artist" }); return res; } @@ -259,10 +259,10 @@ namespace lms::scanner std::vector res; core::Service::get()->visitStrings("artist-info-image-file-names", - [&res](std::string_view fileName) { - res.emplace_back(fileName); - }, - { "thumb", "folder", "fanart" }); + [&res](std::string_view fileName) { + res.emplace_back(fileName); + }, + { "thumb", "folder", "fanart" }); return res; } diff --git a/src/libs/services/scanner/impl/steps/ScanStepAssociateMediumImages.cpp b/src/libs/services/scanner/impl/steps/ScanStepAssociateMediumImages.cpp index 1971f844..331bf201 100644 --- a/src/libs/services/scanner/impl/steps/ScanStepAssociateMediumImages.cpp +++ b/src/libs/services/scanner/impl/steps/ScanStepAssociateMediumImages.cpp @@ -175,10 +175,10 @@ namespace lms::scanner std::vector res; core::Service::get()->visitStrings("medium-image-file-names", - [&res](std::string_view fileName) { - res.emplace_back(fileName); - }, - { "discsubtitle" }); + [&res](std::string_view fileName) { + res.emplace_back(fileName); + }, + { "discsubtitle" }); return res; } diff --git a/src/libs/services/scanner/impl/steps/ScanStepAssociateReleaseImages.cpp b/src/libs/services/scanner/impl/steps/ScanStepAssociateReleaseImages.cpp index 1b7038c9..b32b1ab5 100644 --- a/src/libs/services/scanner/impl/steps/ScanStepAssociateReleaseImages.cpp +++ b/src/libs/services/scanner/impl/steps/ScanStepAssociateReleaseImages.cpp @@ -204,10 +204,10 @@ namespace lms::scanner std::vector res; core::Service::get()->visitStrings("cover-preferred-file-names", - [&res](std::string_view fileName) { - res.emplace_back(fileName); - }, - { "cover", "front", "folder", "default" }); + [&res](std::string_view fileName) { + res.emplace_back(fileName); + }, + { "cover", "front", "folder", "default" }); return res; } diff --git a/src/libs/services/scanner/impl/steps/ScanStepCheckForRemovedFiles.cpp b/src/libs/services/scanner/impl/steps/ScanStepCheckForRemovedFiles.cpp index c45903ed..2d71bde7 100644 --- a/src/libs/services/scanner/impl/steps/ScanStepCheckForRemovedFiles.cpp +++ b/src/libs/services/scanner/impl/steps/ScanStepCheckForRemovedFiles.cpp @@ -101,9 +101,9 @@ namespace lms::scanner } if (std::none_of(std::cbegin(_settings.mediaLibraries), std::cend(_settings.mediaLibraries), - [&](const MediaLibraryInfo& libraryInfo) { - return core::pathUtils::isPathInRootPath(p, libraryInfo.rootDirectory, &excludeDirFileName); - })) + [&](const MediaLibraryInfo& libraryInfo) { + return core::pathUtils::isPathInRootPath(p, libraryInfo.rootDirectory, &excludeDirFileName); + })) { LMS_LOG(DBUPDATER, DEBUG, "Removing " << p << ": out of media directory"); return false; diff --git a/src/libs/services/transcoding/impl/TranscodingResourceHandler.hpp b/src/libs/services/transcoding/impl/TranscodingResourceHandler.hpp index 89f6d3ce..0674a1a7 100644 --- a/src/libs/services/transcoding/impl/TranscodingResourceHandler.hpp +++ b/src/libs/services/transcoding/impl/TranscodingResourceHandler.hpp @@ -39,7 +39,7 @@ namespace lms::transcoding private: Wt::Http::ResponseContinuation* processRequest(const Wt::Http::Request& request, Wt::Http::Response& response) override; - void abort() override{}; + void abort() override {}; static constexpr std::size_t _chunkSize{ 262'144 }; std::optional _estimatedContentLength; diff --git a/src/libs/som/impl/DataNormalizer.cpp b/src/libs/som/impl/DataNormalizer.cpp index df07ac1f..ab2d82b0 100644 --- a/src/libs/som/impl/DataNormalizer.cpp +++ b/src/libs/som/impl/DataNormalizer.cpp @@ -36,9 +36,9 @@ namespace lms::som const T mean{ std::accumulate(vec.begin(), vec.end(), T{}) / size }; return std::accumulate(vec.begin(), vec.end(), T{}, - [mean, size](T accumulator, const T& val) { - return accumulator + ((val - mean) * (val - mean) / (size - 1)); - }); + [mean, size](T accumulator, const T& val) { + return accumulator + ((val - mean) * (val - mean) / (size - 1)); + }); } DataNormalizer::DataNormalizer(std::size_t inputDimCount) diff --git a/src/libs/som/impl/Network.cpp b/src/libs/som/impl/Network.cpp index aa768108..f70dbb0a 100644 --- a/src/libs/som/impl/Network.cpp +++ b/src/libs/som/impl/Network.cpp @@ -212,9 +212,9 @@ namespace lms::som for (const Position& neighbourPosition : neighboursPosition) { auto min = std::min_element(refVectorsPosition.begin(), refVectorsPosition.end(), - [this, neighbourPosition](const auto& a, const auto& b) { - return (this->getRefVectorsDistance(a, neighbourPosition) < this->getRefVectorsDistance(b, neighbourPosition)); - }); + [this, neighbourPosition](const auto& a, const auto& b) { + return (this->getRefVectorsDistance(a, neighbourPosition) < this->getRefVectorsDistance(b, neighbourPosition)); + }); InputVector::Distance distance{ getRefVectorsDistance(neighbourPosition, *min) }; if (distance > maxDistance) @@ -227,9 +227,9 @@ namespace lms::som return std::nullopt; auto min{ std::min_element(std::cbegin(neighboursInfo), std::cend(neighboursInfo), - [&](const auto& a, const auto& b) { - return a.distance < b.distance; - }) }; + [&](const auto& a, const auto& b) { + return a.distance < b.distance; + }) }; return min->position; } diff --git a/src/libs/subsonic/impl/SubsonicResource.cpp b/src/libs/subsonic/impl/SubsonicResource.cpp index 966ebcf4..60731a61 100644 --- a/src/libs/subsonic/impl/SubsonicResource.cpp +++ b/src/libs/subsonic/impl/SubsonicResource.cpp @@ -65,10 +65,10 @@ namespace lms::api::subsonic std::unordered_map res; core::Service::get()->visitStrings("api-subsonic-old-server-protocol-clients", - [&](std::string_view client) { - res.emplace(std::string{ client }, ProtocolVersion{ .major = 1, .minor = 12, .patch = 0 }); - }, - { "DSub" }); + [&](std::string_view client) { + res.emplace(std::string{ client }, ProtocolVersion{ .major = 1, .minor = 12, .patch = 0 }); + }, + { "DSub" }); return res; } @@ -78,10 +78,10 @@ namespace lms::api::subsonic std::unordered_set res; core::Service::get()->visitStrings("api-open-subsonic-disabled-clients", - [&](std::string_view client) { - res.emplace(std::string{ client }); - }, - { "DSub" }); + [&](std::string_view client) { + res.emplace(std::string{ client }); + }, + { "DSub" }); return res; } diff --git a/src/libs/subsonic/impl/SubsonicResponse.cpp b/src/libs/subsonic/impl/SubsonicResponse.cpp index 4427acb3..cd05c007 100644 --- a/src/libs/subsonic/impl/SubsonicResponse.cpp +++ b/src/libs/subsonic/impl/SubsonicResponse.cpp @@ -176,7 +176,7 @@ namespace lms::api::subsonic [&](bool value) { os << (value ? "true" : "false"); }, [&](float value) { os << value; }, [&](long long value) { os << value; } }, - value); + value); } void Response::XmlSerializer::serializeEscapedString(std::ostream& os, std::string_view str) diff --git a/src/libs/subsonic/impl/endpoints/Browsing.cpp b/src/libs/subsonic/impl/endpoints/Browsing.cpp index 9f783714..5d0d9e10 100644 --- a/src/libs/subsonic/impl/endpoints/Browsing.cpp +++ b/src/libs/subsonic/impl/endpoints/Browsing.cpp @@ -128,8 +128,8 @@ namespace lms::api::subsonic const auto artistTracks{ Track::findIds(context.dbSession, params) }; tracks.insert(std::end(tracks), - std::begin(artistTracks.results), - std::end(artistTracks.results)); + std::begin(artistTracks.results), + std::end(artistTracks.results)); } return tracks; @@ -159,8 +159,8 @@ namespace lms::api::subsonic const auto releaseTracks{ Track::findIds(context.dbSession, params) }; tracks.insert(std::end(tracks), - std::begin(releaseTracks.results), - std::end(releaseTracks.results)); + std::begin(releaseTracks.results), + std::end(releaseTracks.results)); } return tracks; diff --git a/src/libs/subsonic/impl/responses/Artist.cpp b/src/libs/subsonic/impl/responses/Artist.cpp index 53dbf7d3..08ad7cf7 100644 --- a/src/libs/subsonic/impl/responses/Artist.cpp +++ b/src/libs/subsonic/impl/responses/Artist.cpp @@ -48,9 +48,9 @@ namespace lms::api::subsonic names.resize(artists.size()); std::transform(std::cbegin(artists), std::cend(artists), std::begin(names), - [](const Artist::pointer& artist) { - return artist->getName(); - }); + [](const Artist::pointer& artist) { + return artist->getName(); + }); return core::stringUtils::joinStrings(names, ", "); } diff --git a/src/lms/main.cpp b/src/lms/main.cpp index 2d488700..a217d6d5 100644 --- a/src/lms/main.cpp +++ b/src/lms/main.cpp @@ -138,7 +138,7 @@ namespace lms config.visitStrings("trusted-proxies", [&](std::string_view trustedProxy) { pt.add("server.application-settings.trusted-proxy-config.trusted-proxies.proxy", std::string{ trustedProxy }); }, - { "127.0.0.1", "::1" }); + { "127.0.0.1", "::1" }); } { @@ -360,9 +360,9 @@ namespace lms // As initialization can take a while (db migration, analyze, etc.), we bind a temporary init entry point to warn the user server.addEntryPoint(Wt::EntryPointType::Application, - [&](const Wt::WEnvironment& env) { - return ui::LmsInitApplication::create(env); - }); + [&](const Wt::WEnvironment& env) { + return ui::LmsInitApplication::create(env); + }); LMS_LOG(MAIN, INFO, "Starting init web server..."); server.start(); @@ -455,9 +455,9 @@ namespace lms // bind UI entry point server.addEntryPoint(Wt::EntryPointType::Application, - [&database, &appManager, uiAuthenticationBackend](const Wt::WEnvironment& env) { - return ui::LmsApplication::create(env, *database, appManager, uiAuthenticationBackend); - }); + [&database, &appManager, uiAuthenticationBackend](const Wt::WEnvironment& env) { + return ui::LmsApplication::create(env, *database, appManager, uiAuthenticationBackend); + }); proxyScannerEventsToApplication(*scannerService, server); diff --git a/src/lms/ui/Auth.cpp b/src/lms/ui/Auth.cpp index 00e1f8dc..f8cfb114 100644 --- a/src/lms/ui/Auth.cpp +++ b/src/lms/ui/Auth.cpp @@ -54,11 +54,11 @@ namespace lms::ui core::Service::get()->createAuthToken(authTokenDomain, userId, hashedAuthCookie); LmsApp->setCookie(authCookieName, - authCookie, - expiry.toTime_t() - Wt::WDateTime::currentDateTime().toTime_t(), - "", - "", - LmsApp->environment().urlScheme() == "https"); + authCookie, + expiry.toTime_t() - Wt::WDateTime::currentDateTime().toTime_t(), + "", + "", + LmsApp->environment().urlScheme() == "https"); } class AuthModel : public Wt::WFormModel diff --git a/src/lms/ui/LmsApplication.cpp b/src/lms/ui/LmsApplication.cpp index 45e47fe2..271b043a 100644 --- a/src/lms/ui/LmsApplication.cpp +++ b/src/lms/ui/LmsApplication.cpp @@ -418,7 +418,7 @@ namespace lms::ui declareJavaScriptFunction("onLoadCover", "function(id) { id.className += \" Lms-cover-loaded\"}"); declareJavaScriptFunction("updateActiveNav", - R"(function(current) { + R"(function(current) { const menuItems = document.querySelectorAll('.nav-item a[href]:not([href=""])'); for (const menuItem of menuItems) { if (menuItem.getAttribute("href") === current) { @@ -546,13 +546,13 @@ namespace lms::ui { _scannerEvents.scanComplete.connect([this](const scanner::ScanStats& stats) { notifyMsg(Notification::Type::Info, - Wt::WString::tr("Lms.Admin.Database.scan-complete") - .arg(static_cast(stats.getTotalFileCount())) - .arg(static_cast(stats.additions)) - .arg(static_cast(stats.updates)) - .arg(static_cast(stats.deletions)) - .arg(static_cast(stats.duplicates.size())) - .arg(static_cast(stats.errorsCount))); + Wt::WString::tr("Lms.Admin.Database.scan-complete") + .arg(static_cast(stats.getTotalFileCount())) + .arg(static_cast(stats.additions)) + .arg(static_cast(stats.updates)) + .arg(static_cast(stats.deletions)) + .arg(static_cast(stats.duplicates.size())) + .arg(static_cast(stats.errorsCount))); }); } diff --git a/src/lms/ui/LmsTheme.hpp b/src/lms/ui/LmsTheme.hpp index 59009fd7..e2ee9c55 100644 --- a/src/lms/ui/LmsTheme.hpp +++ b/src/lms/ui/LmsTheme.hpp @@ -31,15 +31,15 @@ namespace lms::ui std::string name() const override; std::string resourcesUrl() const override; std::vector styleSheets() const override; - void apply(Wt::WWidget*, Wt::WWidget*, int) const override{}; - void apply(Wt::WWidget*, Wt::DomElement&, int) const override{}; + void apply(Wt::WWidget*, Wt::WWidget*, int) const override {}; + void apply(Wt::WWidget*, Wt::DomElement&, int) const override {}; std::string disabledClass() const override { return "disabled"; } std::string activeClass() const override { return "active"; }; std::string utilityCssClass(int) const override { return ""; }; bool canStyleAnchorAsButton() const override { return true; }; void applyValidationStyle(Wt::WWidget* widget, - const Wt::WValidator::Result& validation, - Wt::WFlags flags) const override; + const Wt::WValidator::Result& validation, + Wt::WFlags flags) const override; bool canBorderBoxElement(const Wt::DomElement&) const override { return true; } }; } // namespace lms::ui diff --git a/src/lms/ui/resource/AudioFileResource.hpp b/src/lms/ui/resource/AudioFileResource.hpp index f9ac913f..7dc4b8ef 100644 --- a/src/lms/ui/resource/AudioFileResource.hpp +++ b/src/lms/ui/resource/AudioFileResource.hpp @@ -34,6 +34,6 @@ namespace lms::ui private: void handleRequest(const Wt::Http::Request& request, - Wt::Http::Response& response) override; + Wt::Http::Response& response) override; }; } // namespace lms::ui diff --git a/src/tools/metadata/LmsMetadata.cpp b/src/tools/metadata/LmsMetadata.cpp index b9697509..190c4746 100644 --- a/src/tools/metadata/LmsMetadata.cpp +++ b/src/tools/metadata/LmsMetadata.cpp @@ -390,7 +390,7 @@ int main(int argc, char* argv[]) .options(allOptions) .positional(positional) .run(), - vm); + vm); program_options::notify(vm); diff --git a/src/tools/similarity-parameters/GeneticAlgorithm.hpp b/src/tools/similarity-parameters/GeneticAlgorithm.hpp index 975c0a79..9f2f534d 100644 --- a/src/tools/similarity-parameters/GeneticAlgorithm.hpp +++ b/src/tools/similarity-parameters/GeneticAlgorithm.hpp @@ -81,7 +81,7 @@ GeneticAlgorithm::simulate(const std::vector& initialPop scoredPopulation.reserve(initialPopulation.size()); std::transform(std::cbegin(initialPopulation), std::cend(initialPopulation), std::back_inserter(scoredPopulation), - [](const Individual& individual) { return ScoredIndividual{ individual }; }); + [](const Individual& individual) { return ScoredIndividual{ individual }; }); scoreAndSortPopulation(scoredPopulation); @@ -133,10 +133,10 @@ template void GeneticAlgorithm::scoreAndSortPopulation(std::vector& scoredPopulation) { parallel_foreach(_params.nbWorkers, std::begin(scoredPopulation), std::end(scoredPopulation), - [&](ScoredIndividual& scoredIndividual) { - if (!scoredIndividual.score) - scoredIndividual.score = _params.scoreFunction(scoredIndividual.individual); - }); + [&](ScoredIndividual& scoredIndividual) { + if (!scoredIndividual.score) + scoredIndividual.score = _params.scoreFunction(scoredIndividual.individual); + }); std::sort(std::begin(scoredPopulation), std::end(scoredPopulation), [](const ScoredIndividual& a, const ScoredIndividual& b) { return a.score > b.score; }); } diff --git a/src/tools/similarity-parameters/LmsSimilarityParameters.cpp b/src/tools/similarity-parameters/LmsSimilarityParameters.cpp index 1f2d8a24..0955357b 100644 --- a/src/tools/similarity-parameters/LmsSimilarityParameters.cpp +++ b/src/tools/similarity-parameters/LmsSimilarityParameters.cpp @@ -166,7 +166,7 @@ constructFeaturesCache(db::Session& session, const FeatureSettingsMap& featureSe std::unordered_set names; std::transform(std::cbegin(featureSettings), std::cend(featureSettings), std::inserter(names, std::begin(names)), - [](const auto& itFeature) { return itFeature.first; }); + [](const auto& itFeature) { return itFeature.first; }); auto transaction{ session.createReadTransaction() }; @@ -254,8 +254,8 @@ computeTrackScore(db::Session& session, db::IdType track1Id, db::IdType track2Id std::vector commonArtistIds; std::set_intersection(std::cbegin(track1ArtistIds), std::cend(track1ArtistIds), - std::cbegin(track2ArtistIds), std::cend(track2ArtistIds), - std::back_inserter(commonArtistIds)); + std::cbegin(track2ArtistIds), std::cend(track2ArtistIds), + std::back_inserter(commonArtistIds)); score += commonArtistIds.size(); } @@ -267,8 +267,8 @@ computeTrackScore(db::Session& session, db::IdType track1Id, db::IdType track2Id std::vector commonClusterIds; std::set_intersection(std::cbegin(track1ClusterIds), std::cend(track1ClusterIds), - std::cbegin(track2ClusterIds), std::cend(track2ClusterIds), - std::back_inserter(commonClusterIds)); + std::cbegin(track2ClusterIds), std::cend(track2ClusterIds), + std::back_inserter(commonClusterIds)); score += commonClusterIds.size(); }