Robert Dailey
67d604d8a0
refactor: Log format ID in logs
1 year ago
Robert Dailey
5a3b850f11
style: Code cleanup on CS files
1 year ago
Robert Dailey
c1b87f4b8b
fix: NRE due to null RootConfigYaml
1 year ago
Robert Dailey
58927728f8
fix: Clone/update config repo in config create command
1 year ago
Robert Dailey
7733b5e569
fix: Update default clone URL for trash guides repo
...
New URL: https://github.com/TRaSH-Guides/Guides.git
1 year ago
Robert Dailey
010c788e14
feat: Add migration step to delete old repo directory
1 year ago
Robert Dailey
406e0590a4
fix: Refactor and re-introduce capability enforcement
...
Fixes #189
1 year ago
Robert Dailey
f020459023
fix: Do not exit application when instance sync fails
1 year ago
Robert Dailey
0eb084b146
style: Code cleanup
1 year ago
Robert Dailey
f05ff6e04b
fix: Service cache now remembers CFs no longer in config
...
With `delete_old_custom_formats: false` and
`replace_existing_custom_formats: false`, if you comment out a CF in
your configuration, sync, uncomment it and sync again, you get an error
about duplicate CFs. This is because, once a CF is removed from the
configuration, it's also removed from the cache.
This change makes the cache more flexible. As long as a CF (created by
Recyclarr) exists either in the config OR in the service itself, it will
be kept in the cache. This means that temporarily disabling CFs in
configuration won't cause ownership issues.
1 year ago
Robert Dailey
f06a2c829a
refactor: Move Cache code files to Cli project
1 year ago
Robert Dailey
715d777f9e
refactor: replace morelinq with superlinq
1 year ago
Robert Dailey
2a28130599
fix: Do not unconditionally show deleted custom formats
...
When `delete_old_custom_formats` is `false`, we should not show deleted
custom formats.
1 year ago
Robert Dailey
d799da385e
fix: Regression caused reset_unmatched_scores: false to not be respected
1 year ago
Robert Dailey
fd8a2f570b
test: Add AutoFixture to global usings in Cli test project
1 year ago
Robert Dailey
11f3ab005b
feat: Continue running if git fetch fails
...
As long as there's a valid clone available and no other git commands
fail, we allow `git fetch` to fail and proceed processing commands. Even
if internet connectivity is down, that shouldn't necessarily prevent
sync from functioning.
The primary motivation for this change is that we expect the Trash
Guides repo to be relocated soon and I do not want that to cause the
program to stop working between the change and when I can update the
URL.
1 year ago
Robert Dailey
596fc72dfe
build: Remove debug option from sync run configuration
1 year ago
Robert Dailey
ee377e55fa
feat: Create configs from templates
1 year ago
Robert Dailey
ca941ac31d
refactor: Rename ConfigListCategory enum
1 year ago
Robert Dailey
d5c4a5d8ec
test: Remove unused FileSystem extension methods
1 year ago
Robert Dailey
e61a23e649
build: Upgrade all nuget packages
1 year ago
Robert Dailey
fe7773ea07
fix: Fix false-positive duplicate score warnings
...
When doing a `sync --preview`, new custom formats are not created and
thus they never get an ID greater than `0`. Because of this, a
dictionary that tracks duplicates based on ID would result in warnings
about duplicate scores that made no sense.
We now index by Trash ID instead of Format ID, which is more accurate.
1 year ago
Robert Dailey
018d5f0157
refactor: Add back ToString() overrides
...
This fixes a warning related to ToString() returning null.
1 year ago
Robert Dailey
ebdea5eabf
build: Add debug option to sync preview run config
1 year ago
Robert Dailey
6b3bf893b5
build: Use debug option with sync command
1 year ago
Robert Dailey
be7dac7e62
build: Upgrade all nuget packages
1 year ago
Robert Dailey
a8aaca42cc
feat: Support `*.yaml` extension
1 year ago
Robert Dailey
4f0e365dd5
test: Remove a few Refresh() calls no longer needed
...
Some Refresh calls happen automatically now for IFileInfo, etc. in
MockFileSystem.
1 year ago
Robert Dailey
2e1c7bff7d
build: Upgrade all nuget packages
1 year ago
Robert Dailey
9dbd0e56fa
build: Upgrade all nuget packages
1 year ago
Robert Dailey
6d90e8f293
chore: Remove attached folder from Rider project
1 year ago
Robert Dailey
deb6696622
refactor: Reorganize processor classes into subdirs
1 year ago
Robert Dailey
cdf4b27686
fix: Explicitly add System.Private.Uri package to resolve security issue
...
Resolves:
- CVE-2019-0981
- CVE-2019-0980
- CVE-2019-0657
1 year ago
Robert Dailey
cab505591f
chore: Remove unused code
1 year ago
Robert Dailey
8d2f582b38
refactor: Move all test projects under src/tests
...
This allows easier specification of test-specific msbuild properties
1 year ago
Robert Dailey
3823b0ec43
feat: Move config templates to new repository
1 year ago
Robert Dailey
7edcd77f98
fix: Use correct link in settings.yml template
1 year ago
Robert Dailey
3127ab3bb8
refactor: Delete auto-created temp dir in MockFileSystem
...
Needed because of this issue:
https://github.com/TestableIO/System.IO.Abstractions/issues/983
1 year ago
Robert Dailey
2c7f220a71
refactor: Add LeafDirectories() extension method for MockFileSystem
1 year ago
Robert Dailey
f1f9887042
refactor: Introduce config template repo settings
1 year ago
Robert Dailey
da35eef1ed
feat!: Restructure repository settings
1 year ago
Robert Dailey
b8ac93a464
refactor: Fix broken URLs
1 year ago
Robert Dailey
058c06504b
build: Upgrade nuget packages
1 year ago
Robert Dailey
96a278b06f
refactor: Make InstanceName non-nullable
1 year ago
Robert Dailey
fe9f98e435
refactor: Make exception class serializable
1 year ago
Robert Dailey
5609853321
feat!: Remove old migration steps
...
The following migration steps were removed:
- `MigrateTrashUpdaterAppDataDir`
- `MigrateTrashYml`
1 year ago
Robert Dailey
21a63ab8e1
feat!: replace_existing_custom_formats now defaults to true
1 year ago
Robert Dailey
c773a1a90b
refactor: Output log for each pipeline execution
1 year ago
Robert Dailey
3840f9c5ab
refactor: Improved error messaging for backward breaking config changes
1 year ago
Robert Dailey
cd6eda4055
feat!: Remove `reset_unmatched_scores` under quality score config
1 year ago
Robert Dailey
982de8806f
refactor: Remove V2 from some filenames
1 year ago
Robert Dailey
4a021a341b
feat!: Remove deprecated CLI commands
1 year ago
Robert Dailey
3e2ce37701
refactor: Delete unused source file
1 year ago
Robert Dailey
38e7980dbe
test: Fix or remove disabled tests
1 year ago
Robert Dailey
32ce3bde21
refactor: Fix serializable issue with CacheException
1 year ago
Robert Dailey
3c5b139523
refactor: Reduce cognitive complexity of method
1 year ago
Robert Dailey
134477ab46
refactor: Add timeouts to all regular expressions
1 year ago
Robert Dailey
286f4b95b1
refactor: Deprecation messages for old style array mapping
1 year ago
Robert Dailey
76040df597
refactor: Reorganize code and fix unit tests
1 year ago
Robert Dailey
6a16bd6045
refactor: Create interface for RuntimeValidationService
1 year ago
Robert Dailey
9a515aa820
build: Exclude config data project from dupe detection
1 year ago
Robert Dailey
5c98949edc
refactor: YAML configuration relies less on custom parsing code
...
This change was necessary to facilitate the ability to serialize
(create/modify) YAML configuration data. This is a prerequisite to
creating config templates and also GUI work in the future.
1 year ago
Robert Dailey
81bbc50ef7
build: Upgrade all packages
1 year ago
Robert Dailey
2652a5c663
build: Move Jetbrains.Annotations to projects
1 year ago
Robert Dailey
53595fc6ce
build: Move Spectre console analyzer to project file
1 year ago
Robert Dailey
b006122921
build: Move GitVersion.Build to projects
1 year ago
Robert Dailey
abb16f29e7
chore: Add file scope for CS files
1 year ago
Robert Dailey
761a247860
feat: Send API key via header instead of query param
1 year ago
Robert Dailey
5fc4da0f52
build: Upgrade Autofac and TestableIO packages
1 year ago
Robert Dailey
fbb5141c25
build: Upgrade YamlDotNet
1 year ago
Robert Dailey
40ed9f366c
build: Upgrade all nuget packages
1 year ago
Robert Dailey
29ca61f68f
refactor: Address several resharper analysis issues
1 year ago
Robert Dailey
39f106c72b
refactor: Fix warning related to FluentValidation & NRT
2 years ago
Robert Dailey
9d53fd0152
fix: Do not assume only one field element in CF specifications
...
For most CF specifications, there is only one element in the `fields`
array, which has a `value` property inside of each of its objects. One
particular specification, however, deviates from this assumption. The
"SizeSpecification" has been observed with *two* field objects.
Logic for parsing custom format CFs no longer assumes that the fields
property may only have one element in it.
Fixes #178
2 years ago
Robert Dailey
bebd28bc11
build: Upgrade FluentValidation
2 years ago
Robert Dailey
fc6a186809
build: Upgrade morelinq
2 years ago
Robert Dailey
93a8c8bc22
build: Upgrade all nuget packages
2 years ago
Robert Dailey
1a16432341
refactor: Remove inappropriate usage of `required` in CliSettings
2 years ago
Robert Dailey
f7bfab065d
fix: Show default value in `config list` help
2 years ago
Robert Dailey
dc93b10e64
test: Add await where necessary
2 years ago
Robert Dailey
e54cef0859
feat: `config list local` implemented
2 years ago
Robert Dailey
ce481e0d1f
refactor: Config loader no longer reuses state
2 years ago
Robert Dailey
f5386dfeda
fix: Template config listing is no longer reversed
2 years ago
Robert Dailey
f6f6ea3192
style: Solution-wide code cleanup
2 years ago
Robert Dailey
a3c172cf02
feat: Add config list templates command
...
Lists template YAML files in the trash repo.
2 years ago
Robert Dailey
902fbad4bf
chore: Remove unused run configuration
2 years ago
Robert Dailey
a934e68227
fix: Enable strict parsing to error on unknown CLI options
2 years ago
Robert Dailey
7c15c14f40
refactor: More concise usage of UsedImplicitly in SyncCommand
2 years ago
Robert Dailey
fe2b062ba7
fix: Consistently set FormatIDs to avoid incorrect logs
2 years ago
Robert Dailey
f298926353
fix: Use INF instead of DBG for score update log
2 years ago
Robert Dailey
58bbb94a44
build: Upgrade all nuget packages
2 years ago
Robert Dailey
a22d6dec33
fix: Log janitor updated to clean up logs in new 'cli' dir
2 years ago
Robert Dailey
e222f547cc
test: Fix config loader test
...
No exception is thrown when a non-empty config results in no usable
configuration.
2 years ago
Robert Dailey
c82894291f
fix: Do not fail on empty service type sections
2 years ago
Robert Dailey
bf9a08c19c
test: Fix broken unit test
2 years ago
Robert Dailey
cffb8d783a
refactor: Convert processors/updaters to pipelines
2 years ago
Robert Dailey
e3d6d4f79a
refactor: Remove DI for IServiceConfiguration in API services
2 years ago
Robert Dailey
bcc65857df
refactor: Split Sonarr/Radarr orthogonally into service-based classes
...
Instead of organizing logic using service, such as Sonarr or Radarr,
organize it using function. So now logic is broken up by Custom Format,
Release Profile, and Quality Size.
2 years ago
Robert Dailey
7dec45a07a
refactor: Eliminate generics for config type
2 years ago
Robert Dailey
289d661247
refactor: Silence warnings in _Layout.cshtml
2 years ago