From cb1b33593f813b1b117a0f7ff8a0002b867e9ebb Mon Sep 17 00:00:00 2001 From: emeric Date: Fri, 9 Dec 2022 23:56:13 +0100 Subject: [PATCH 1/5] Add CodeQL workflow for GitHub code scanning --- .github/workflows/codeql.yml | 56 ++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 .github/workflows/codeql.yml diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml new file mode 100644 index 00000000..b67055d1 --- /dev/null +++ b/.github/workflows/codeql.yml @@ -0,0 +1,56 @@ +name: "CodeQL" + +on: + push: + branches: [ "master", "develop" ] + pull_request: + branches: [ "master", "develop" ] + schedule: + - cron: "48 10 * * 4" + +jobs: + analyze: + name: Analyze + runs-on: ubuntu-latest + permissions: + actions: read + contents: read + security-events: write + + strategy: + fail-fast: false + matrix: + language: [ javascript, cpp ] + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Install Packages (cpp) + if: ${{ matrix.language == 'cpp' }} + run: | + sudo apt-get update + sudo apt-get install --yes build-essential cmake libboost-all-dev libconfig++-dev libavcodec-dev libavutil-dev libavformat-dev libstb-dev libtag1-dev libpam0g-dev libgtest-dev + export WT_VERSION=4.7.2 + export WT_INSTALL_PREFIX=/usr + git clone https://github.com/emweb/wt.git wt + pushd wt + git checkout ${WT_VERSION} + cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${WT_INSTALL_PREFIX} -DBUILD_EXAMPLES=OFF -DENABLE_LIBWTTEST=OFF -DCONNECTOR_FCGI=OFF + make + sudo make install + popd + + - name: Initialize CodeQL + uses: github/codeql-action/init@v2 + with: + languages: ${{ matrix.language }} + queries: +security-and-quality + + - name: Autobuild + uses: github/codeql-action/autobuild@v2 + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v2 + with: + category: "/language:${{ matrix.language }}" From 495005357c432bdb31ba340c0166620673b868ba Mon Sep 17 00:00:00 2001 From: emeric Date: Sun, 11 Dec 2022 11:33:44 +0100 Subject: [PATCH 2/5] Small cleanup --- src/libs/subsonic/impl/SubsonicResponse.cpp | 2 +- src/libs/subsonic/impl/SubsonicResponse.hpp | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/libs/subsonic/impl/SubsonicResponse.cpp b/src/libs/subsonic/impl/SubsonicResponse.cpp index da67c15a..8d9c640a 100644 --- a/src/libs/subsonic/impl/SubsonicResponse.cpp +++ b/src/libs/subsonic/impl/SubsonicResponse.cpp @@ -232,7 +232,7 @@ Response::writeJSON(std::ostream& os) { Json::Object res; - auto valueToJsonValue {[](const Node::Value& value) -> Json::Value + auto valueToJsonValue {[](const Node::ValueType& value) -> Json::Value { if (std::holds_alternative(value)) return Json::Value {std::get(value)}; diff --git a/src/libs/subsonic/impl/SubsonicResponse.hpp b/src/libs/subsonic/impl/SubsonicResponse.hpp index dc6a94f1..321d7c76 100644 --- a/src/libs/subsonic/impl/SubsonicResponse.hpp +++ b/src/libs/subsonic/impl/SubsonicResponse.hpp @@ -206,9 +206,9 @@ class Response void setVersionAttribute(ProtocolVersion version); friend class Response; - using Value = std::variant; - std::map _attributes; - std::optional _value; + using ValueType = std::variant; + std::map _attributes; + std::optional _value; std::map> _children; std::map> _childrenArrays; }; From 998def846d55ccffc0797bfae0a08c35ae874668 Mon Sep 17 00:00:00 2001 From: emeric Date: Wed, 14 Dec 2022 20:07:54 +0100 Subject: [PATCH 3/5] Added performers. fixes #278 --- approot/artist.xml | 6 +- approot/explore.xml | 2 +- approot/messages.xml | 4 + approot/messages_fr.xml | 4 + approot/messages_it.xml | 4 + approot/messages_zh.xml | 4 + approot/release.xml | 6 +- approot/tracks.xml | 10 +- src/libs/metadata/impl/TagLibParser.cpp | 64 ++++++++--- src/libs/metadata/impl/Utils.cpp | 46 ++++++++ src/libs/metadata/impl/Utils.hpp | 10 ++ .../metadata/include/metadata/IParser.hpp | 4 + src/libs/metadata/test/Utils.cpp | 45 +++++++- src/libs/services/database/impl/Migration.cpp | 12 +++ src/libs/services/database/impl/Migration.hpp | 2 +- .../database/impl/TrackArtistLink.cpp | 100 +++++++++++++----- .../include/services/database/Artist.hpp | 1 - .../services/database/TrackArtistLink.hpp | 40 +++++-- .../services/scanner/impl/ScannerService.cpp | 6 ++ src/libs/utils/impl/String.cpp | 31 ++++-- src/libs/utils/include/utils/String.hpp | 5 +- src/libs/utils/test/String.cpp | 29 +++++ src/lms/ui/explore/ArtistView.cpp | 15 +-- src/lms/ui/explore/ArtistsView.cpp | 2 + src/lms/ui/explore/ReleaseView.cpp | 41 ++++++- src/lms/ui/explore/TrackListHelpers.cpp | 42 ++++++-- src/tools/metadata/LmsMetadata.cpp | 12 ++- 27 files changed, 451 insertions(+), 96 deletions(-) diff --git a/approot/artist.xml b/approot/artist.xml index 67d65f0a..add9a9e7 100644 --- a/approot/artist.xml +++ b/approot/artist.xml @@ -21,15 +21,15 @@ ${} - ${}

${tr:Lms.Explore.releases}

${
} + ${}

${tr:Lms.Explore.releases}

${
} ${releases class="mb-3"} ${
} ${} - ${}

${tr:Lms.Explore.Artist.appears-on}

${
} +

${tr:Lms.Explore.Artist.appears-on}

${appears-on-releases class="mb-3"} ${
} ${} - ${}

${tr:Lms.Explore.tracks}

${
} +

${tr:Lms.Explore.tracks}

${tracks class="mb-3"} ${
} ${} diff --git a/approot/explore.xml b/approot/explore.xml index 38d64d00..342621dc 100644 --- a/approot/explore.xml +++ b/approot/explore.xml @@ -43,7 +43,7 @@
-
+
${type}
diff --git a/approot/messages.xml b/approot/messages.xml index f805b9fa..241caf7a 100644 --- a/approot/messages.xml +++ b/approot/messages.xml @@ -175,6 +175,10 @@ Mixer Mixers + + Performer + Performers + Producer Producers diff --git a/approot/messages_fr.xml b/approot/messages_fr.xml index 1c32c26b..0439a9e5 100644 --- a/approot/messages_fr.xml +++ b/approot/messages_fr.xml @@ -175,6 +175,10 @@ Mixeur Mixeurs + + Interprète + Interprètes + Producteur Producteurs diff --git a/approot/messages_it.xml b/approot/messages_it.xml index 0f000814..57d57209 100644 --- a/approot/messages_it.xml +++ b/approot/messages_it.xml @@ -183,6 +183,10 @@ + + + + diff --git a/approot/messages_zh.xml b/approot/messages_zh.xml index 9472f65a..e685897f 100644 --- a/approot/messages_zh.xml +++ b/approot/messages_zh.xml @@ -183,6 +183,10 @@ + + + + diff --git a/approot/release.xml b/approot/release.xml index 16545709..79e3c0d1 100644 --- a/approot/release.xml +++ b/approot/release.xml @@ -87,7 +87,7 @@