Qstick
4db10e6283
Prefer AsSpan to Substring to avoid unnecessary allocation
2023-03-15 19:24:48 -05:00
Qstick
e8aff90582
Use span-based string.Concat to avoid unnecessary allocation
...
Calling Substring produces a copy of the extracted substring. By using AsSpan instead of Substring and calling the overload of string.Concat that accepts spans, you can eliminate the unnecessary string allocation.
2023-03-15 19:24:48 -05:00
Qstick
af28bbad52
Use Environment.CurrentManagedThreadId for efficiency
...
System.Environment.CurrentManagedThreadId is a compact and efficient replacement of the Thread.CurrentThread.ManagedThreadId pattern.
2023-03-15 19:24:48 -05:00
Qstick
f928ee7cad
Use Environment.ProcessPath instead of GetCurrentProcess().MainModule.FileName
...
GetCurrentProcess().MainModule.FileName is expensive, Environment.ProcessPath added in net6
2023-03-15 19:24:48 -05:00
Qstick
7521579bca
Use Apend(char) instead of Apend(string) for performance
...
When calling StringBuilder.Append with a unit length string, consider using a const char rather than a unit length const string to improve performance.
2023-03-15 19:24:48 -05:00
Qstick
e805f61450
Use Length/Count property instead of Count() method to prevent enumerating
2023-03-15 19:24:48 -05:00
Qstick
4fe9daec03
Use Any() in place of Count() to prevent enumerating
...
This rule flags the Count and LongCount LINQ method calls used to check if the collection has at least one element. These method calls require enumerating the entire collection to compute the count. The same check is faster with the Any method as it avoids enumerating the collection.
2023-03-15 19:24:48 -05:00
Qstick
738dc2c98c
Do not use Enumerable methods on indexable collections
...
This rule flags the Enumerable LINQ method calls on collections of types that have equivalent but more efficient properties to fetch the same data.
2023-03-15 19:24:48 -05:00
Qstick
0ed8ba828d
Avoid unnecessary zero-length array allocations
2023-03-15 19:24:48 -05:00
Qstick
b2c2c79a96
Don't compare strings to Empty using Equals
...
Comparing strings using the String.Length property or the String.IsNullOrEmpty method is faster than using Equals. This is because Equals executes significantly more MSIL instructions than either IsNullOrEmpty or the number of instructions executed to retrieve the Length property value and compare it to zero.
2023-03-15 19:24:48 -05:00
Qstick
08ee2f7e32
Remove unnecessary assignments to default type value
...
The .NET runtime initializes all fields of reference types to their default values before running the constructor. In most cases, explicitly initializing a field to its default value in a constructor is redundant, adding maintenance costs and potentially degrading performance
2023-03-15 19:24:48 -05:00
Qstick
42e45f93ac
Use const where appropriate
...
The value of a const field is computed at compile time and stored in the metadata, which improves run-time performance when it is compared to a static readonly field.
2023-03-15 19:24:48 -05:00
Qstick
b4d8f0c311
Enable all analyzers and enforce code style on build
2023-03-15 19:24:48 -05:00
Stevie Robinson
21045127cd
Fixed: Parsing of multi season packs with only space between the season numbers
2023-03-14 00:32:57 -07:00
Mark McDowall
d496733b31
Fixed: Don't import Custom Format downgrades
...
Closes #5475
2023-03-14 00:22:37 -07:00
Mark McDowall
b3d1e4f520
Fixed: Multiple Downloaded Episodes Scan commands should not run in parallel
2023-03-13 18:11:17 -07:00
Mark McDowall
cd67671bc1
Fixed: Slow loading of files in Manage Episodes modal
...
Closes #5449
2023-03-13 00:30:28 -07:00
Mark McDowall
ac806a2933
New: Show downloading status for series progress bar
...
Closes #5474
2023-03-12 23:51:38 -07:00
Mark McDowall
6d88a98282
New: Plex Watchlist RSS support
2023-03-12 23:51:38 -07:00
cicomalieran
9800bd6b43
Fixed: Processing very long ETA from Transmission
...
Closes #5444
2023-03-07 16:46:48 -08:00
Sergey M
255f947860
Fixed: Mapping of parsed titles when one doesn't have an alias
...
Co-authored-by: Sergey M <msergein>
2023-03-05 17:30:56 -08:00
bakerboy448
92ecb30fab
Fixed: Regression in error message logging
...
Closes #5461
2023-03-01 18:19:16 -05:00
bakerboy448
e968919e63
Fixed: Improve some request failure messaging
2023-02-22 17:36:12 -08:00
Mark McDowall
bd3816dac9
Handle null for parent name with clean path is empty
2023-02-20 17:20:07 -08:00
Mark McDowall
95a8f59a32
Fixed: Don't handle images in metadata folder as Roksbox images
2023-02-20 16:42:57 -08:00
Mark McDowall
890f107467
New: Support for .plexmatch series metadata files
...
Closes #4960
2023-02-20 15:08:26 -08:00
Mark McDowall
6740257135
New: Add Episode Guide option for Kodi MetadataFile
...
Closes #5415
2023-02-20 12:35:22 -08:00
Mark McDowall
bbd9b1657d
Fixed: Don't clean Kodi library if video is playing and Always Update is disabled
...
Closes #5387
2023-02-20 10:48:49 -08:00
Mark McDowall
cf00fecbe4
Fixed: Don't grab propers/repacks when item in queue meets cutoff and propers/repacks are not downloaded automatically
...
Closes #1208
2023-02-19 00:32:58 -08:00
Qstick
5a22afc42b
Fixed broken path tests
2023-02-18 15:37:35 -08:00
Mark McDowall
75378f7bde
Fixed: USB drives mounted to folders are treated as different mounts
...
Closes #4147
2023-02-16 17:05:39 -08:00
Mark McDowall
997aabbc3c
Improve CF calculation for files without scene name
...
Fixed: Use original filename instead of complete path when calculating CF for existing file without scene name
Closes #5365
2023-02-12 22:33:45 -08:00
Mark McDowall
2c65e4fa41
Fixed: Prevent getting disk space from returning no information when it partially fails
...
Closes #5247
2023-02-12 20:55:13 -08:00
Qstick
9c1fd7c73e
Bump MonoTorrent to 2.0.7
...
Pulls in fix for parsing torrents when certain values are an empty string
2023-02-12 21:58:44 -06:00
Mark McDowall
27cc551980
Updated API documents
2023-02-12 15:09:00 -08:00
Mark McDowall
d2cd3f7716
Rename LocalizationLanguageResource to avoid collision with LanguageResource
2023-02-12 15:06:51 -08:00
bakerboy448
ddb25b1095
New: Use better page size for Newznab/Torznab (up to 100) when supported by the indexer
...
Closes #5373
2023-02-12 14:34:04 -08:00
Mark McDowall
303fc5d786
New: Return static response to requests while app is starting
...
Closes #5402
2023-02-07 17:31:54 -08:00
Qstick
a379d0c403
Fixed: Settings fail to save for some auth setups
2023-02-06 23:09:10 -06:00
Mark McDowall
72b307f4ad
Fixed: Using absolute episode number in Standard Format for episode without while renaming
2023-02-06 16:55:04 -08:00
Mark McDowall
69f325b9dd
SeriesFolderFormat needs to be OS Agnostic
2023-02-04 16:54:22 -08:00
Mark McDowall
81d2b18ce1
New: Use Series Folder Format to improve unmapped folders within root folders
2023-02-04 15:51:00 -08:00
Mark McDowall
119addd75f
Fixed: Migrating case-sensitive Preferred Word REGEX to Custom Formats
...
Closes #5399
2023-02-04 00:32:48 -08:00
Xavier Xiong
0f111dd066
Fixed: Chinese Anime releases that include a season number
2023-02-04 00:10:13 -08:00
Stevie Robinson
e29470d8cb
Fixed: Enable parsing of repacks with revision
...
Closes #5383
2023-02-04 00:08:35 -08:00
bakerboy448
83f6359063
New: Improve Manual Import logging when not parsing files
2023-02-04 00:06:59 -08:00
Mark McDowall
ad42d4a14c
Fixed: Ping endpoint no longer requires authentication
...
Closes #5396
2023-01-31 23:39:59 -08:00
Qstick
faccfe17a2
Remove debug code in CleanupQualityProfileFormatItems
2023-01-22 13:47:13 -06:00
Qstick
f05e109b50
Fixed: Avoid Sqlite Error when all profiles have lowest quality cutoff
2023-01-21 18:11:09 -06:00
Stevie Robinson
3973571411
New: Added new series title rename tokens without year
...
Closes #5369
2023-01-21 18:55:00 -05:00