Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for Sonarr V4 #7

Open
Callum027 opened this issue Apr 9, 2023 · 10 comments
Open

Add support for Sonarr V4 #7

Callum027 opened this issue Apr 9, 2023 · 10 comments
Assignees
Labels
enhancement New feature or request refactor Code refactoring-related issue or pull request
Milestone

Comments

@Callum027
Copy link
Member

Callum027 commented Apr 9, 2023

The Prowlarr plugin determined the Buildarr-side framework for supporting an application that requires authentication by default, and the example Ansible playbooks prove that fully automating deployments of such applications is possible.

Therefore, it is time to start looking at introducing support for Sonarr V4 in this plugin.

Ideally this should be done before Sonarr V4 goes stable, or not too long afterwards.

@Callum027 Callum027 added enhancement New feature or request refactor Code refactoring-related issue or pull request labels Apr 9, 2023
@Callum027 Callum027 added this to the v0.5.0 milestone Apr 9, 2023
@Callum027 Callum027 self-assigned this Apr 9, 2023
@Callum027 Callum027 modified the milestones: v0.5.0, v0.6.0 Apr 14, 2023
@Callum027
Copy link
Member Author

Sonarr V4 adds support for NameEmail types in email notification connections.

Add support for both EmailStr and NameEmail in the plugin, using a validator to return an str if the name and the address part of the email address is the same, otherwise a NameEmail.

@Callum027 Callum027 modified the milestones: v0.6.0, v0.7.0 Nov 11, 2023
@rasmus-kirk
Copy link

Any news on this?

@Callum027 Callum027 pinned this issue Mar 1, 2024
@Callum027 Callum027 modified the milestones: v0.7.0, v0.8.0 Mar 1, 2024
@Callum027
Copy link
Member Author

Hi @rasmus-kirk, thanks for taking an interest in Buildarr, and sorry for the late reply (I've been on a break for a while).

I've got some refactors to do before I can get started on this (mainly, I have to upgrade all of the Buildarr libraries to Pydantic V2) but once that is done, this is the first thing I will get started on. Supporting most of the Sonarr V4 APIs is not a massive amount of work, but some new things need to be implemented (e.g. Custom Formats).

I will update this issue as I work on things to keep people in the loop.

@rasmus-kirk
Copy link

rasmus-kirk commented Mar 3, 2024

That's great news! Not supporting V4 is the biggest reason why I'm not using this at the moment. Couple of questions:

  • Do you plan on maintaining this for a while?
  • Is support for Lidarr/Readarr on the table?

I don't know how difficult it would be to add support to other "*Arrs", so I don't expect anything, just curious.

@Callum027
Copy link
Member Author

Callum027 commented Mar 3, 2024

  • Do you plan on maintaining this for a while?

The main reason I made Buildarr is to use it myself. From my perspective there is no better alternative to managing *Arr instance configuration either available or in development, so I will maintain it as long as it is useful to people.

  • Is support for Lidarr/Readarr on the table?

I don't know how difficult it would be to add support to other "*Arrs", so I don't expect anything, just curious.

It's not difficult to add support for a new *Arr, as at this point the formula is relatively stabilised for creating a new plugin. It does, however, take a little bit of time (a week or two to make something functional and tested).

All the plugins I've made so far I've done because I currently use them. I'm also interested in Lidarr and Readarr, so I'll be happy to make new plugins for them (once everything else has been stabilised post-refactor). And if they're plugins other people would also get use out of, that's good as well.

@rasmus-kirk
Copy link

Thank you! This clears things up for me.

@ChadTaljaardt
Copy link

Hello @Callum027

Is there any main issues that you need assistance with? I currently use Sonarr v4 and would like to help in my free time to make this supported if you need.

@Callum027
Copy link
Member Author

Callum027 commented Mar 5, 2024

Hello @Callum027

Is there any main issues that you need assistance with? I currently use Sonarr v4 and would like to help in my free time to make this supported if you need.

Hi @ChadTaljaardt, thanks for offering to help with this.

From a Sonarr V4 perspective, in terms of priorities, the following needs to be done:

  1. Fix any incompatibilities with Sonarr V4 (such as this issue) so it can be used with Buildarr (even if new features are not yet supported), while maintaining compatibility with Sonarr V3.
  2. Add support for the new Sonarr V4 configuration structures, such as Custom Formats (ideally using the sonarr-py library, which I haven't yet adopted in this plugin).
  3. Add unit tests for the new features (I haven't added any testing infrastructure to the plugin repos yet, but it is in the works).

If we could start working on things in that order, that would be fantastic.

@Callum027
Copy link
Member Author

Callum027 commented Mar 5, 2024

The following PR which adds basic Radarr V5 support to the Radarr plugin is a good reference for step 1:

buildarr/buildarr-radarr#16

@ChadTaljaardt
Copy link

ChadTaljaardt commented Mar 26, 2024

Just a small update to this, it looks like sonarr-v4 is now released and out of beta so is the default version provided now. I am wondering if there is value in still supporting sonarr v3 given that its a old release now and everything is v4 by default now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request refactor Code refactoring-related issue or pull request
Projects
None yet
Development

No branches or pull requests

3 participants