This pull request has been tagged as a stable backport. It will be cherry-picked into the next stable point release.
Please observe the following:
*Any dependent PRs that this PR requires **must** be tagged for stable backporting as well.
*Any issue(s) this PR fixes or closes **should** target the current stable release or a previous stable release to which a fix has not yet entered the current stable release.
*This PR **must** be test cherry-picked against the current release branch (`release-X.Y.z` where X and Y are numbers). It must apply cleanly, or a diff of the expected change must be provided.
To do this, run the following commands from your local copy of the Jellyfin repository:
1. `git checkout master`
1. `git merge --no-ff <myPullRequestBranch>`
1. `git log` -> `commit xxxxxxxxx`, grab hash
1. `git checkout release-X.Y.z` replacing X and Y with the *current* stable version (e.g. `release-10.7.z`)
1. `git cherry-pick -sx -m1 <hash>`
Ensure the `cherry-pick` applies cleanly. If it does not, fix any merge conflicts *preserving as much of the original code as possible*, and make note of the resulting diff.
Test your changes with a build to ensure they are successful. If not, adjust the diff accordingly.
**Donot** push your merges to either branch. Use `git reset --hard HEAD~1` to revert both branches to their original state.
Reply to this PR with a comment beginning "Cherry-pick test completed." and including the merge-conflict-fixing diff(s) if applicable.
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment:>
This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments.
If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or nightlies, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label.
This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on [Matrix or Social Media](https://docs.jellyfin.org/general/getting-help.html).
# Comment to post when closing a stale issue. Set to `false` to disable
/// Resolves alternative versions and extras from list of video files.
/// </summary>
public class VideoListResolver
publicstatic class VideoListResolver
{
privatereadonlyNamingOptions_options;
/// <summary>
/// Initializes a new instance of the <see cref="VideoListResolver"/> class.
/// </summary>
/// <param name="options"><see cref="NamingOptions"/> object containing CleanStringRegexes and VideoFlagDelimiters and passes options to <see cref="StackResolver"/> and <see cref="VideoResolver"/>.</param>
publicVideoListResolver(NamingOptionsoptions)
{
_options=options;
}
/// <summary>
/// Resolves alternative versions and extras from list of video files.
/// </summary>
/// <param name="files">List of related video files.</param>
stringBuilder.Append(" where Type=@SelectType And CleanName In (Select CleanValue from ItemValues where ")
.Append(typeClause)
.Append(" AND ItemId in (select guid from TypedBaseItems");
if(innerWhereClauses.Count>0)
{
stringBuilder.Append(" where ")
.AppendJoin(" AND ",innerWhereClauses);
}
varwhereText=" where Type=@SelectType And CleanName In (Select CleanValue from ItemValues where "+typeClause+" AND ItemId in (select guid from TypedBaseItems"+innerWhereText+"))";
stringBuilder.Append("))");
varouterQuery=newInternalItemsQuery(query.User)
{
@ -5355,23 +5415,31 @@ AND Type = @InternalPersonType)");
"TaskOptimizeDatabaseDescription":"Komprimeer databasis en verkort vrye ruimte. As hierdie taak uitgevoer word nadat die media versameling geskandeer is of ander veranderings aangebring is wat databasisaanpassings impliseer, kan dit die prestasie verbeter.",
"TaskOptimizeDatabaseDescription":"يضغط قاعدة البيانات ويقتطع المساحة الحرة. تشغيل هذه المهمة بعد فحص المكتبة أو إجراء تغييرات أخرى تشير ضمنًا إلى أن تعديلات قاعدة البيانات قد تؤدي إلى تحسين الأداء.",
"CameraImageUploadedFrom":"Нова снимка от камера беше качена от {0}",
"Channels":"Канали",
"ChapterNameValue":"Глава {0}",
"Collections":"Поредици",
"Collections":"Колекции",
"DeviceOfflineWithName":"{0} се разкачи",
"DeviceOnlineWithName":"{0} е свързан",
"FailedLoginAttemptWithUserName":"Неуспешен опит за влизане от {0}",
@ -29,13 +29,13 @@
"Inherit":"Наследяване",
"ItemAddedWithName":"{0} е добавено към библиотеката",
"ItemRemovedWithName":"{0} е премахнато от библиотеката",
"LabelIpAddressValue":"ИП адрес: {0}",
"LabelRunningTimeValue":"Стартирано от: {0}",
"LabelIpAddressValue":"IP адрес: {0}",
"LabelRunningTimeValue":"Продължителност: {0}",
"Latest":"Последни",
"MessageApplicationUpdated":"Сървърът е обновен",
"MessageApplicationUpdatedTo":"Сървърът е обновен до {0}",
"MessageNamedServerConfigurationUpdatedWithValue":"Секцията {0} от сървърната конфигурация се актуализира",
"MessageServerConfigurationUpdated":"Конфигурацията на сървъра се актуализира",
"MessageApplicationUpdated":"Сървърът беше обновен",
"MessageApplicationUpdatedTo":"Сървърът беше обновен до {0}",
"MessageNamedServerConfigurationUpdatedWithValue":"Секцията {0} от сървърната конфигурация беше актуализирана",
"MessageServerConfigurationUpdated":"Конфигурацията на сървъра беше актуализирана",
"MixedContent":"Смесено съдържание",
"Movies":"Филми",
"Music":"Музика",
@ -118,5 +118,7 @@
"Forced":"Принудително",
"Default":"По подразбиране",
"TaskCleanActivityLogDescription":"Изтрива записите в дневника с активност по стари от конфигурираната възраст.",
"TaskCleanActivityLog":"Изчисти дневника с активност"
"TaskCleanActivityLog":"Изчисти дневника с активност",
"TaskOptimizeDatabaseDescription":"Прави базата данни по-компактна и освобождава място. Пускането на тази задача след сканиране на библиотеката или правене на други промени, свързани с модификации на базата данни, може да подобри производителността.",
"TaskOptimizeDatabaseDescription":"Compacta la base de dades i trunca l'espai lliure. Executar aquesta tasca després d’escanejar la biblioteca o fer altres canvis que impliquin modificacions a la base de dades pot millorar el rendiment.",
"TaskOptimizeDatabase":"Optimitzar la base de dades"
"HeaderContinueWatching":"Pokračovat ve sledování",
"HeaderFavoriteAlbums":"Oblíbená alba",
"HeaderFavoriteArtists":"Oblíbení interpreti",
@ -118,5 +118,7 @@
"TaskCleanActivityLog":"Smazat záznam aktivity",
"Undefined":"Nedefinované",
"Forced":"Vynucené",
"Default":"Výchozí"
"Default":"Výchozí",
"TaskOptimizeDatabaseDescription":"Zmenší databázi a odstraní prázdné místo. Spuštění této úlohy po skenování knihovny či jiných změnách databáze může zlepšit výkon.",
"TaskOptimizeDatabaseDescription":"Kompakter database og forkorter fri plads. Ved at køre denne proces efter at scanne biblioteket eller efter at ændre noget som kunne have indflydelse på databasen, kan forbedre ydeevne.",
"TaskOptimizeDatabaseDescription":"Komprimiert die Datenbank und trimmt den freien Speicherplatz. Die Ausführung dieser Aufgabe nach dem Scannen der Bibliothek oder nach anderen Änderungen, die Datenbankänderungen implizieren, kann die Leistung verbessern.",
"TaskOptimizeDatabaseDescription":"Συμπιέζει τη βάση δεδομένων και δημιουργεί ελεύθερο χώρο. Η εκτέλεση αυτής της εργασίας μετά τη σάρωση της βιβλιοθήκης ή την πραγματοποίηση άλλων αλλαγών που συνεπάγονται τροποποιήσεις της βάσης δεδομένων μπορεί να βελτιώσει την απόδοση.",
"TaskOptimizeDatabaseDescription":"Compacts database and truncates free space. Running this task after scanning the library or doing other changes that imply database modifications might improve performance.",
"TaskCleanActivityLog":"Borrar log de actividades",
"Undefined":"Indefinido",
"Forced":"Forzado",
"Default":"Por Defecto"
"Default":"Por Defecto",
"TaskOptimizeDatabaseDescription":"Compacta la base de datos y restaura el espacio libre. Ejecutar esta tarea después de actualizar las librerías o realizar otros cambios que impliquen modificar las bases de datos puede mejorar la performance.",
"TaskOptimizeDatabase":"Optimización de base de datos"
"TaskRefreshChannelsDescription":"Actualiza la información de canales de Internet.",
"TaskRefreshChannelsDescription":"Actualiza la información de los canales de Internet.",
"TaskRefreshChannels":"Actualizar canales",
"TaskCleanTranscodeDescription":"Elimina archivos transcodificados que tengan más de un día.",
"TaskCleanTranscodeDescription":"Elimina archivos transcodificados que tengan más de un día de antigüedad.",
"TaskCleanTranscode":"Limpiar directorio de transcodificado",
"TaskUpdatePluginsDescription":"Descarga e instala actualizaciones para complementos que están configurados para actualizarse automáticamente.",
"TaskUpdatePlugins":"Actualizar complementos",
@ -118,5 +118,7 @@
"TaskCleanActivityLog":"Limpiar registro de actividades",
"Undefined":"Sin definir",
"Forced":"Forzado",
"Default":"Predeterminado"
"Default":"Predeterminado",
"TaskOptimizeDatabase":"Optimizar base de datos",
"TaskOptimizeDatabaseDescription":"Compacta la base de datos y trunca el espacio libre. Puede mejorar el rendimiento si se realiza esta tarea después de escanear la biblioteca o después de realizar otros cambios que impliquen modificar la base de datos."
"TaskCleanActivityLog":"Limpiar Registro de Actividades",
"Undefined":"Sin definir",
"Forced":"Forzado",
"Default":"Por Defecto"
"Default":"Por Defecto",
"TaskOptimizeDatabaseDescription":"Compacta la base de datos y restaura el espacio libre. Ejecutar esta tarea después de actualizar las librerías o realizar otros cambios que impliquen modificar las bases de datos puede mejorar la performance.",
"TaskOptimizeDatabase":"Optimización de base de datos"
"TaskOptimizeDatabaseDescription":"Tiivistää ja puhdistaa tietokannan. Tämän toiminnon suorittaminen kirjastojen skannauksen tai muiden tietokantaan liittyvien muutoksien jälkeen voi parantaa suorituskykyä.",
"TaskCleanActivityLog":"Nettoyer le journal d'activité",
"Undefined":"Non défini",
"Forced":"Forcé",
"Default":"Par défaut"
"Default":"Par défaut",
"TaskOptimizeDatabaseDescription":"Réduit les espaces vides/inutiles et compacte la base de données. Utiliser cette fonction après une mise à jour de la bibliothèque ou toute autre modification de la base de données peut améliorer les performances du serveur.",
"TaskOptimizeDatabase":"Optimiser la base de données"
"TaskOptimizeDatabaseDescription":"Tömöríti az adatbázist és csonkolja a szabad helyet. A feladat futtatása a könyvtár beolvasása után, vagy egyéb, adatbázis-módosítást igénylő változtatások végrehajtása javíthatja a teljesítményt.",
"HeaderRecordingGroups":"Gruppi di Registrazione",
"HomeVideos":"Video personali",
"HomeVideos":"Video Personali",
"Inherit":"Eredita",
"ItemAddedWithName":"{0} è stato aggiunto alla libreria",
"ItemRemovedWithName":"{0} è stato rimosso dalla libreria",
@ -39,7 +39,7 @@
"MixedContent":"Contenuto misto",
"Movies":"Film",
"Music":"Musica",
"MusicVideos":"Video musicali",
"MusicVideos":"Video Musicali",
"NameInstallFailed":"{0} installazione fallita",
"NameSeasonNumber":"Stagione {0}",
"NameSeasonUnknown":"Stagione sconosciuta",
@ -70,7 +70,7 @@
"ScheduledTaskFailedWithName":"{0} fallito",
"ScheduledTaskStartedWithName":"{0} avviati",
"ServerNameNeedsToBeRestarted":"{0} deve essere riavviato",
"Shows":"Programmi",
"Shows":"Serie TV",
"Songs":"Canzoni",
"StartupEmbyServerIsLoading":"Jellyfin server si sta avviando. Per favore riprova più tardi.",
"SubtitleDownloadFailureForItem":"Impossibile scaricare i sottotitoli per {0}",
@ -118,5 +118,7 @@
"TaskCleanActivityLogDescription":"Elimina gli inserimenti nel registro delle attività più vecchie dell’età configurata.",
"Undefined":"Non Definito",
"Forced":"Forzato",
"Default":"Predefinito"
"Default":"Predefinito",
"TaskOptimizeDatabaseDescription":"Compatta Database e tronca spazi liberi. Eseguire questa azione dopo la scansione o dopo aver fatto altri cambiamenti inerenti il database potrebbe aumentarne la performance.",
"TaskCleanActivityLogDescription":"Nodzēš darbību žurnāla ierakstus, kuri ir vecāki par doto vecumu.",
"TaskCleanActivityLog":"Notīrīt Darbību Žurnālu",
"Undefined":"Nenoteikts",
"Default":"Noklusējums"
"Default":"Noklusējums",
"TaskOptimizeDatabaseDescription":"Saspiež datubāzi un atbrīvo atmiņu. Uzdevum palaišana pēc bibliotēku skenēšanas vai citām, ar datubāzi saistītām, izmaiņām iespējams uzlabos ātrdarbību.",
"TaskOptimizeDatabaseDescription":"ഡാറ്റാബേസ് ചുരുക്കുകയും സ്വതന്ത്ര ഇടം വെട്ടിച്ചുരുക്കുകയും ചെയ്യുന്നു. ലൈബ്രറി സ്കാൻ ചെയ്തതിനുശേഷം അല്ലെങ്കിൽ ഡാറ്റാബേസ് പരിഷ്ക്കരണങ്ങളെ സൂചിപ്പിക്കുന്ന മറ്റ് മാറ്റങ്ങൾ ചെയ്തതിന് ശേഷം ഈ ടാസ്ക് പ്രവർത്തിപ്പിക്കുന്നത് പ്രകടനം മെച്ചപ്പെടുത്തും.",