Commit graph

1053 commits

Author SHA1 Message Date
Joe Rogers e7df72de49
Improve metadata provider sorting
Extract configured order up front instead of for each provider
Non-IHasOrder providers default to middle, not beginning
Merge image and metadata sort helper methods
2022-04-03 23:34:49 +02:00
Joe Rogers 91e706d387
Implement sort test for ProviderManager.GetMetadataProviders 2022-04-03 23:34:49 +02:00
Joe Rogers 11c7c24f0e
Clarify naming, minor method ordering improvement 2022-04-03 23:34:49 +02:00
Joe Rogers 56900d0fc3
Implement CanRefresh tests for ProviderManager.GetImageProviders 2022-04-03 23:34:48 +02:00
Joe Rogers 8515e8fbd1
Improve image provider sorting
Remove irrelevant check for ILocalImageProvider
Providers that are not IHasOrder default to middle, not beginning
2022-04-03 23:34:48 +02:00
Joe Rogers 785cc1bb6e
Implement sort test for ProviderManager.GetImageProviders 2022-04-03 23:34:48 +02:00
dependabot[bot] dde984bd0e
Bump StyleCop.Analyzers from 1.2.0-beta.376 to 1.2.0-beta.406
Bumps [StyleCop.Analyzers](https://github.com/DotNetAnalyzers/StyleCopAnalyzers) from 1.2.0-beta.376 to 1.2.0-beta.406.
- [Release notes](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/releases)
- [Commits](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/compare/1.2.0-beta.376...1.2.0-beta.406)

---
updated-dependencies:
- dependency-name: StyleCop.Analyzers
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-21 12:22:11 +00:00
Bond_009 09e897d372 Clean up DLNA profile code 2022-03-19 00:45:43 +01:00
Cody Robibero 6a567e8c76
Merge pull request #7474 from nielsvanvelzen/api-secure 2022-03-18 16:52:59 -06:00
Niels van Velzen 8a827ba995 Update tests 2022-03-18 22:21:08 +01:00
Bond-009 bb7068cb63
Move StreamBuilderTests to correct project (#7461) 2022-03-18 22:19:02 +01:00
Cody Robibero e6df698df1
Merge pull request #7325 from eyezak/issue/6450 2022-03-12 09:08:25 -07:00
Cody Robibero 5319f1571f
Merge pull request #7444 from Bond-009/baseurl 2022-03-11 18:42:14 -07:00
Cody Robibero 28223704f3
Merge pull request #7441 from 1337joe/add-external-stream-indicator
Add label for external audio/sub tracks
2022-03-11 07:48:23 -07:00
Bond_009 edeb198313 Add tests for BaseUrl normalization 2022-03-11 15:44:16 +01:00
Claus Vium 53209830e7
Merge pull request #7346 from Bond-009/guid
Optimize Guid comparisons
2022-03-11 08:15:12 +01:00
Joe Rogers 1a307db7eb
Add label for external audio/sub tracks 2022-03-10 22:20:35 +01:00
Mayur Panchal 96de01ce01
ProbeResultNormalizer: fix framerate compare + tests (#7167) 2022-03-10 20:55:30 +01:00
Cody Robibero 965bf7332f Update to dotnet 6.0.3 2022-03-08 17:16:33 -07:00
dependabot[bot] 4c4f5dfe81
Bump Moq from 4.17.1 to 4.17.2 (#7416)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-07 14:23:43 +01:00
Cody Robibero bbd5d11d3b Remove TranscodeReason.None, Add JsonFlagEnum tests 2022-03-06 18:13:54 -07:00
Isaac Gordezky 84a3db6f84 Fix transcode video matching and add tests for Transcode and Safari 2022-03-06 18:13:54 -07:00
Isaac Gordezky 5e779f20ee Series: issue-6450
Issue: https://github.com/jellyfin/jellyfin/issues/6450

Enable DirectPlay responses
Rewrite DirectPlay and DirectStream resolution
Prefer copy transcode video codec options
Enhance condition processor
Support DirectStream and Transcode with parity
Rework audio stream selection and add tests for ExternalAudio
Update MediaInfoHelper to only call StreamBuilder once
2022-03-06 18:13:54 -07:00
Isaac Gordezky d871dded9f Convert TranscodeReason to Flags 2022-03-06 18:13:54 -07:00
Isaac Gordezky a3057afde8 StreamBuilder basic tests 2022-03-06 18:13:54 -07:00
Joe Rogers f7118bebfd
Fix external file check for shorter names 2022-03-05 12:39:03 +01:00
Joe Rogers 3205e97e1e
Strip out external file fuzzy matching
Convert MediaFlagDelimiter back to char
2022-03-04 10:52:21 +01:00
Claus Vium 136eab9b1e
Merge pull request #7370 from crobibero/internal-metadata-path
Only add internal files if the internal metadata path exists
2022-03-04 08:13:58 +01:00
Cody Robibero 1b3e56bae3 Split DirectoryExists and FileExists 2022-03-02 19:55:44 -07:00
Cody Robibero fc5c6c0404 Use IFileSystem 2022-02-28 17:14:33 -07:00
Joe Rogers 1d367712bb Improve tests 2022-02-28 10:00:23 -07:00
Cody Robibero 40e413d575 Only add internal files if the internal metadata path exists
Signed-off-by: Cody Robibero <cody@robibe.ro>
2022-02-28 08:22:52 -07:00
dependabot[bot] ee24b85f49
Bump Moq from 4.16.1 to 4.17.1
Bumps [Moq](https://github.com/moq/moq4) from 4.16.1 to 4.17.1.
- [Release notes](https://github.com/moq/moq4/releases)
- [Changelog](https://github.com/moq/moq4/blob/main/CHANGELOG.md)
- [Commits](https://github.com/moq/moq4/compare/v4.16.1...v4.17.1)

---
updated-dependencies:
- dependency-name: Moq
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-28 12:01:22 +00:00
Joshua M. Boniface e26446f9c0
Merge pull request #7112 from stanionascu/bdiso-playback 2022-02-26 12:53:34 -05:00
Joe Rogers a9a3f6bf02
Split match/rejected tests, add wider sampling of extensions 2022-02-22 15:13:44 +01:00
Joe Rogers cf033b25f8
Require delimiter immediately after filename match 2022-02-21 22:27:28 +01:00
Joe Rogers 15053516f8
Rewrite tests for coverage and less duplication
Address minor warnings
Revert making GetInternalMetadataPath mockable
2022-02-21 22:25:58 +01:00
Joshua M. Boniface 59040bfa7d
Merge pull request #7255 from Shadowghost/external-sub-audio 2022-02-21 12:42:49 -05:00
Bond_009 f50a250cd9 Optimize Guid comparisons
* Use Guid.Equals(Guid) instead of the == override
* Ban the usage of Guid.Equals(Object) to prevent accidental boxing
* Compare to default(Guid) instead of Guid.Empty
2022-02-21 14:15:09 +01:00
dependabot[bot] 06f259001c
Bump Microsoft.NET.Test.Sdk from 17.0.0 to 17.1.0
Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 17.0.0 to 17.1.0.
- [Release notes](https://github.com/microsoft/vstest/releases)
- [Commits](https://github.com/microsoft/vstest/compare/v17.0.0...v17.1.0)

---
updated-dependencies:
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-21 12:01:10 +00:00
Stanislav Ionascu 554d1b2ca8 Fix #7100 by catching the exception on opening invalid UDF images
When an invalid UDF image is opened by the UdfReader, it may throw
and exception. This change is to catch and log the exception.
2022-02-20 13:30:55 +00:00
Shadowghost a36e34fbd2 fix(external-media): implement review suggestions 2022-02-18 22:19:33 +01:00
Shadowghost 719b707281 feat(external-media): refactor to generic provider, extend tests and file recognition, consolidate and extend NamingOptions 2022-02-18 22:19:33 +01:00
Joe Rogers f1878c43a4 feat(external-media): add tests for external audio and subtitle provider 2022-02-18 22:19:33 +01:00
Shadowghost ca5112f45a feat(external-media): refactor external subtitle and audio provider 2022-02-18 22:19:24 +01:00
Cody Robibero 4ef0099598
Merge pull request #7233 from Bond-009/warn60 2022-02-14 16:57:00 -07:00
Cody Robibero 4acab00963
Merge pull request #7038 from Bond-009/serverdiscovery 2022-02-14 16:56:29 -07:00
Joshua M. Boniface 94b5334da5
Merge pull request #7290 from crobibero/dotnet-6.0.2 2022-02-14 11:01:55 -05:00
Bond_009 dbd7be091d Fix MediaStreamSelector 2022-02-14 15:03:08 +01:00
Bond_009 3cb49d6df0 Fix option to disable server discovery 2022-02-14 14:39:33 +01:00
Bond-009 bb7916767c
Merge pull request #7286 from daullmer/sonarr-thumb 2022-02-09 19:09:53 +01:00
David Ullmer a00e6ff426
Update tests/Jellyfin.XbmcMetadata.Tests/Parsers/EpisodeNfoProviderTests.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-02-09 13:39:39 +01:00
Cody Robibero b98cc71c3b Update to dotnet 6.0.2
Signed-off-by: Cody Robibero <cody@robibe.ro>
2022-02-08 17:36:20 -07:00
David Ullmer fdfcb45c2a Add regression test for #7285 2022-02-08 09:09:33 +01:00
dependabot[bot] 7649391b9d
Bump coverlet.collector from 3.1.1 to 3.1.2
Bumps [coverlet.collector](https://github.com/coverlet-coverage/coverlet) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/coverlet-coverage/coverlet/releases)
- [Commits](https://github.com/coverlet-coverage/coverlet/commits)

---
updated-dependencies:
- dependency-name: coverlet.collector
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-07 12:01:11 +00:00
dependabot[bot] 6af7d5445f
Bump coverlet.collector from 3.1.0 to 3.1.1 (#7266)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-01 22:29:41 +01:00
Bond_009 2dcb2f8a9f Ban the usage of Task.Result
If the calling function can't be made async easily you can still use
.GetAwaiter().GetResult(), which is way easier to find in the future
2022-01-22 16:48:31 +01:00
Cody Robibero 34ee6d82fb
Merge pull request #6600 from cvium/keyframe_extraction_v1 2022-01-20 08:54:40 -07:00
Claus Vium 8b36bc0ade
Merge pull request #7203 from 1337joe/fix-resolving-local-alternates
Fix resolving local alternates
2022-01-19 14:36:50 +01:00
Bond-009 ef0708d876
Merge pull request #7078 from 1337joe/metadata-merge-data 2022-01-16 23:17:40 +01:00
Joe Rogers 8b706cebef
Add alternate resolver test, generate extra folder names 2022-01-16 23:00:30 +01:00
Joe Rogers f87e780fb5
Address review comments
Co-authored-by: Bond-009 <bond.009@outlook.com>
2022-01-16 13:21:24 +01:00
Joe Rogers 19b9646d72
Add -extra suffix for consistency 2022-01-15 15:43:06 +01:00
Joe Rogers f11fa59b15
Order rules so directory takes precedence over naming 2022-01-15 15:16:11 +01:00
Claus Vium 70751722d2
Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-01-14 08:24:15 +01:00
Claus Vium 768b76b999
Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-01-12 17:27:02 +01:00
cvium 6ffa9539bb Refactor and add scheduled task 2022-01-11 23:30:30 +01:00
dependabot[bot] 88e02c5290
Bump FsCheck.Xunit from 2.16.3 to 2.16.4
Bumps [FsCheck.Xunit](https://github.com/fsharp/FsCheck) from 2.16.3 to 2.16.4.
- [Release notes](https://github.com/fsharp/FsCheck/releases)
- [Changelog](https://github.com/fscheck/FsCheck/blob/master/FsCheck%20Release%20Notes.md)
- [Commits](https://github.com/fsharp/FsCheck/compare/2.16.3...2.16.4)

---
updated-dependencies:
- dependency-name: FsCheck.Xunit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-10 12:01:16 +00:00
Cody Robibero 9b1965b48a
Merge pull request #7101 from Bond-009/imagejpg
Remove incorrect mime type image/jpg
2022-01-08 04:45:58 -07:00
cvium c658a883a2 Merge branch 'master' into keyframe_extraction_v1
# Conflicts:
#	Jellyfin.Api/Controllers/DynamicHlsController.cs
#	MediaBrowser.Controller/MediaEncoding/IMediaEncoder.cs
#	MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs
2022-01-07 10:23:22 +01:00
Bond_009 71ebe220f0 Speed up Jellyfin.Naming.Tests
In my limited testing this saves ~4 seconds, from 19 to 15 seconds (in
        Xunit itself)
2022-01-04 17:59:30 +01:00
Bond_009 dc222b75c5 Remove incorrect mime type image/jpg 2022-01-04 10:40:16 +01:00
Cody Robibero c6a1dcf420
Merge pull request #7080 from crobibero/ws-token 2022-01-03 17:48:21 -07:00
Cody Robibero fcb8ff7c0f
Merge pull request #7052 from crobibero/image.jpeg 2022-01-03 17:47:52 -07:00
Joe Rogers 1dfbeae045
Embed ProviderUtils into MetadataService 2022-01-04 00:44:03 +01:00
Joe Rogers c81d2e9dec
Remove existing images when applying identify 2022-01-03 23:41:13 +01:00
Joe Rogers 29755c9384
Merge a couple tests, extract duplicate code 2022-01-02 22:24:04 +01:00
Joe Rogers 608a91162a
Add test for #6830 2022-01-02 22:23:47 +01:00
Bond-009 11d0c6827f
Merge pull request #7058 from cvium/the_most_important_feature 2022-01-02 12:31:20 +01:00
Cody Robibero 0765fd568f Use IAuthorizationContext for websocket 2022-01-01 12:34:22 -07:00
cvium 28c2ac9cc0 Remove file extension filter and fix build 2022-01-01 20:07:03 +01:00
Cody Robibero 25abe479eb Add ability to search by - 2021-12-31 08:51:50 -07:00
Joe Rogers 76e640b0b9
Add tests and documentation for ProviderUtils 2021-12-31 00:10:35 +01:00
cvium 2749509f00 Use dedicated resolvers for extras 2021-12-28 00:37:40 +01:00
Cody Robibero 7bfc6b5679 Remove more warnings 2021-12-27 07:38:06 -07:00
Cody Robibero a615f87680
Merge pull request #7044 from 1337joe/fix-trailers-v2
Fix trailers v2
2021-12-25 23:31:46 +00:00
Cody Robibero 6804624c15 Add image/jpg to extension lookup 2021-12-25 11:41:39 -07:00
Joe Rogers cf29aae690 Add rule to pick up theme videos 2021-12-24 21:21:19 +00:00
Joe Rogers c0ab54f0bd Fix resolved type for Trailers 2021-12-24 21:21:19 +00:00
Bond_009 cbfa355e31 Update StyleCop 2021-12-24 18:28:27 +01:00
Cody Robibero 076a13abeb
Merge pull request #7029 from cvium/allocations_maybe 2021-12-24 01:59:25 +00:00
Cody Robibero 00211ca056
Merge pull request #7028 from cvium/everything_went_wrong 2021-12-22 17:57:00 +00:00
cvium b880dc8a4a Use our own Contains extension 2021-12-20 13:31:07 +01:00
cvium 83a94aa612 Fix extras folders 2021-12-20 12:15:20 +01:00
Cody Robibero cb41dda5b3
Merge pull request #7015 from Bond-009/zip 2021-12-19 11:32:12 -07:00
Bond_009 a4565da4a9 Use System.IO.Compression instead of SharpCompress for zips
Also removes unused methods from ZipClient
2021-12-18 17:52:38 +01:00
Bond_009 968c534864 Return null on division by zero 2021-12-18 14:56:10 +01:00
Bond_009 f8fcbc88fc Add tests for ProbeResultNormalizer.GetFrameRate 2021-12-18 14:56:10 +01:00
Cody Robibero 923720c988
Merge pull request #6956 from cvium/what_could_go_wrong 2021-12-17 07:51:32 -07:00
Joshua M. Boniface 7405450da2
Merge pull request #7002 from crobibero/dotnet-6.0.1 2021-12-15 10:36:18 -05:00
Claus Vium 9a0618552b
Merge branch 'master' into what_could_go_wrong 2021-12-15 08:38:39 +01:00
Claus Vium 4a58582ad5
Merge pull request #6912 from crobibero/filename-tvmaze
Add additional provider id parsing to file name
2021-12-15 08:37:34 +01:00
Claus Vium 4c9bd905c6
Merge pull request #6979 from crobibero/baseitemkind
Use BaseItemKind where possible
2021-12-15 08:28:44 +01:00
Cody Robibero 5e8aaa68cf Update to dotnet 6.0.1 2021-12-14 23:47:07 -07:00
Cody Robibero 32629cd7da Use BaseItemKind where possible 2021-12-12 06:11:27 -07:00
Cody Robibero 58f788e8ab
Update tests/Jellyfin.Server.Implementations.Tests/Library/PathExtensionsTests.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-12-11 19:43:01 -07:00
Bond_009 7ee96a59d3 Use correct jpeg MIME type
image/jpg isn't a valid MIME type
2021-12-12 02:07:35 +01:00
cvium 220443eca1 Simplify StackResolver 2021-12-10 14:23:31 +01:00
Cody Robibero d707a201c9 update tests 2021-12-09 12:31:32 -07:00
Cody Robibero 593b2fd359 Add more speed and more tests 2021-12-09 08:06:06 -07:00
cvium 6030946d78 Fixes 2021-12-07 19:23:30 +01:00
cvium fde84a1e00 Refactor extras parsing 2021-12-07 15:24:57 +01:00
Ahmed Rafiq cf75f99f0e
Update unit test name
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-12-04 21:14:52 +06:00
Ahmed Rafiq fa6f6515a6
Update unit test name
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-12-04 21:14:16 +06:00
Ahmed Rafiq 6193fdea69 Use MimeTypes package to determine MIME type
This simplifies the code since we don't have to keep large mappings of extensions and MIME types.

We still keep the ability to override the mappings for:
- filling in entries not present in the package, for e.g. ".azw3"
- picking preferred extensions, for e.g. MimeTypes provides ".conf" as a possible extionsion for "text/plain", and while that is correct, ".txt" would be preferrable
- compatibility reasons
2021-12-04 20:08:16 +06:00
Bond_009 40be86eec0 Use PostAsJsonAsync where possible 2021-12-01 15:58:23 +01:00
Bond_009 beafd6eaab Use JsonContent where possible
Should reduce the # of allocated bytes
2021-12-01 15:40:06 +01:00
Cody Robibero 1df56335ee Add more tests 2021-11-27 16:25:21 -07:00
Joe Rogers 4a20ae6cb4
Allow default/forced tag without setting language 2021-11-27 20:13:21 +01:00
ianjazz246 95183c365a Use local time for RecordingHelperTests 2021-11-23 12:57:05 -08:00
Joe Rogers 9ba7bf96ef
Query MediaSourceManager directly in image providers
Add doc comments/minor tweaks to AudioImageProvider
2021-11-18 15:11:50 +01:00
Joe Rogers bff5ff0cb8
Merge similar tests with Theories 2021-11-18 14:29:22 +01:00
Joe Rogers 7cf5767949
Query media streams by type instead of filtering 2021-11-17 22:34:04 +01:00
Cody Robibero c32a421ea7
Merge pull request #6851 from cvium/remove_references_to_ilibrarymanager 2021-11-15 15:45:49 -07:00
Cody Robibero 4cfe8fe588
Merge pull request #6831 from 1337joe/image-provider-cleanup 2021-11-15 15:45:33 -07:00
cvium 4f45c52674 Remove ILibraryManager as a dependency in resolvers etc. 2021-11-15 15:56:02 +01:00
Joe Rogers f059be8e4d
Add logging and fast return 2021-11-15 15:30:43 +01:00
Joe Rogers 58be1d7759
Actually check server disabled metadata providers 2021-11-15 14:47:06 +01:00
Joe Rogers 370b7f8e12
Handle unexpected case more gracefully 2021-11-14 23:13:45 +01:00
Cody Robibero 34df1a030b
Merge pull request #6818 from Bond-009/password 2021-11-13 16:56:25 -07:00
Cody Robibero 4a28f46cac Don't throw exception on unauthenticated requests 2021-11-13 07:27:28 -07:00
Joe Rogers 1d729b2b0f
Use codec to determine image format 2021-11-12 16:30:30 +01:00
Joe Rogers f73a7a6ed8
Use ImageFormat instead of string for extension 2021-11-12 16:22:11 +01:00
Joe Rogers de9bf327c6
Merge similar tests with Theories 2021-11-12 13:44:48 +01:00
Bond_009 5265b3eee7 Replace PBKDF2-SHA1 with PBKDF2-SHA512
This also migrates already created passwords on login

Source for the number of iterations:
https://cheatsheetseries.owasp.org/cheatsheets/Password_Storage_Cheat_Sheet.html#pbkdf2
2021-11-10 22:34:54 +01:00
Claus Vium c3523e7cf7
Merge pull request #5905 from BaronGreenback/TVFix
Fix for Livetv and DLNA when bind interfaces specified.
2021-11-09 19:53:21 +01:00
Claus Vium c50c9c3dbf
Merge pull request #6794 from Bond-009/dead
Remove some dead code
2021-11-09 19:47:34 +01:00
Bond_009 994101fcf4 Remove some dead code 2021-11-09 16:28:39 +01:00
Bond_009 5726535a26 Fix some warnings
609 left
2021-11-09 13:14:31 +01:00
Cody Robibero 40045d2147 Update to full dotnet 6 2021-11-08 09:40:12 -07:00
cvium f03e77a4d5 Merge branch 'master' into TVFix 2021-11-08 10:38:08 +01:00
Bond_009 4dfb7b18ae Add some docs and tests 2021-11-07 22:32:08 +01:00
Joe Rogers b4bf5af7c8
Remove ImageType.Screenshot and ItemFields.Screenshot 2021-11-06 20:43:20 +01:00
Bond_009 924c6682b9 Remove unused IHasScreenshots interface 2021-11-04 01:06:21 +01:00
Claus Vium 5c5d49ee60
Merge pull request #6763 from 1337joe/tmdb-image-provider-dedup 2021-11-04 00:22:08 +01:00
Bond_009 416894008e Minor improvements
* Removed some allocations
* Removed some useless abstractions
2021-11-03 14:02:57 +01:00
Claus Vium 6822693bd6
Merge pull request #6748 from ptalmeida/master 2021-11-03 13:01:53 +01:00
Claus Vium 0187500373
Merge pull request #6761 from Bond-009/startup2 2021-11-03 13:01:37 +01:00
Claus Vium 869d537aaa
Merge pull request #6752 from 1337joe/fix-metadata-refresh-deletes-backgrounds 2021-11-03 13:01:23 +01:00
Joe Rogers 149c77d9b1
Remove commented theory data, merge tests 2021-11-02 22:46:53 +01:00