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

upgrade to transmission-rpc v4 #3716

Merged
merged 22 commits into from
Apr 9, 2023
Merged

Conversation

trim21
Copy link
Contributor

@trim21 trim21 commented Mar 11, 2023

Motivation for changes:

Detailed changes:

  • add transmission-rpc to deps, expected version will be installed with flexget

Addressed issues/feature requests:

  • Fixes # .

@BrutuZ
Copy link
Contributor

BrutuZ commented Mar 11, 2023

I vote against adding yet another dependency to the base install. It's fine for the dockerfile as overhead is expected.

Keep it as a note for its requirement on the plugin's page as already is the case for a few others

@gazpachoking
Copy link
Member

Well, first of all, great work on the update. I think I agree with @BrutuZ though on including it directly right now, especially since 3.7 isn't eol quite yet, and this would be our only reason to drop support. We have discussed a few times having plugins be able to declare their dependencies more formally, and have them be automatically installed when used. Would be really great if we could move to that system eventually. I think for now though we still leave this as optional, and document the requirement on the wiki page and in an error message when it's used without the proper dep.

@trim21
Copy link
Contributor Author

trim21 commented Mar 14, 2023

We have discussed a few times having plugins be able to declare their dependencies more formally, and have them be automatically installed when used

I think pip extra requirements is for this...

especially since 3.7 isn't eol quite yet, and this would be our only reason to drop support

Yes I mentioned in issue #3699

I can help upgrading to transmission-rpc v4 after you drop python3.7(EOL 06 Dec 2022) 🤔

@gazpachoking
Copy link
Member

gazpachoking commented Mar 17, 2023

I think pip extra requirements is for this...

Yeah, we could add a pip extra to let an user install flexget[transmission] or something, but that doesn't feel any better than just having them install both dependencies separately. The real goal that I'm talking about would be to let someone just install flexget, but then when they include transmission plugin in their config flexget would automatically install (a compatible version of) transmission-rpc into their environment without any added steps.

I can help upgrading to transmission-rpc v4 after you drop python3.7(EOL 06 Dec 2022) 🤔

I'm pretty sure the code in this branch is compatible with both transmission-rpc 3.x and 4.x? Couldn't we do this before adding the hard requirement of transmission-rpc 4.0 and python 3.7 3.8?

@trim21
Copy link
Contributor Author

trim21 commented Mar 17, 2023

then when they include transmission plugin in their config flexget would automatically install (a compatible version of) transmission-rpc into their environment without any added steps.

Don't do that... Even add all deps to requirements is a better idea than install pip deps in python program ...

I'm pretty sure the code in this branch is compatible with both transmission-rpc 3.x and 4.x?

I'm pretty sure it doesn't work with v3

@gazpachoking
Copy link
Member

Don't do that... Even add all deps to requirements is a better idea than install pip deps in python program ...

The other idea I had was some sort of more explicit command like flexget deps install which did the installation, based on what plugins you had configured. I still am not sure about adding everything as explicit deps though no matter what our future better plan might be.

I'm pretty sure it doesn't work with v3

Oh. I had only looked at a couple of attributes that were compatible with both 3.x and 4.x. Just noticed now that you are the author of transmission-rpc 😅 you probably know better than me!

@trim21 trim21 marked this pull request as ready for review March 31, 2023 18:18
@trim21
Copy link
Contributor Author

trim21 commented Mar 31, 2023

I backport transmission-rpc v4 to python3.7 now.

and also remove transmission-rpc from deps

@gazpachoking
Copy link
Member

Oh, excellent! I think this should make things much easier for our users finding the right combination of versions. I think with these changes we are good to merge and can just update all our docs to use transmission-rpc 4+
I guess we should bump our minor version and document the required dep update in an upgrade action.
Anyone have any concerns?

@trim21
Copy link
Contributor Author

trim21 commented Apr 1, 2023

runtime package version check added

@paranoidi
Copy link
Member

@trim21 Is this in a state where it should be merged? I think you know better than anyone :)

@trim21
Copy link
Contributor Author

trim21 commented Apr 7, 2023

yes

@gazpachoking
Copy link
Member

I think we should bump our minor flexget version, otherwise I'm 👍

@trim21
Copy link
Contributor Author

trim21 commented Apr 8, 2023

I think we should bump our minor flexget version, otherwise I'm 👍

Yes

@trim21
Copy link
Contributor Author

trim21 commented Apr 9, 2023

I think we should bump our minor flexget version, otherwise I'm 👍

Sorry, do you mean to bump version in this PR? I thought you will do it in trunk

@gazpachoking
Copy link
Member

Sorry, do you mean to bump version in this PR? I thought you will do it in trunk

I bumped it in here. I think we are probably good to go now. We'll just put an upgrade action and update the wiki with the new version requirements.

@gazpachoking gazpachoking merged commit 8c4c2dc into Flexget:develop Apr 9, 2023
@trim21 trim21 deleted the transmission-v4 branch April 9, 2023 16:18
@gazpachoking
Copy link
Member

I updated the wiki page as well as created an upgrade action for this. Anyone should feel free to update more places if it's needed for more clarity.

@gazpachoking
Copy link
Member

Thanks for all your work on this (and transmission-rpc itself) @trim21 ! 👏

@trim21
Copy link
Contributor Author

trim21 commented Apr 9, 2023

@gazpachoking it require 4.1.4 or greater, not 4.0.0

__version__ = '>=4.1.4,<5.0.0'

@gazpachoking
Copy link
Member

Gotcha. Updated the wiki pages 👍

stevezau added a commit that referenced this pull request May 24, 2023
* Update docker/build-push-action action to v4

* Update irc to download tracker config correctly (#3678)

[fix] irc: Update irc to download tracker config correctly

* Bump isort version in pre-commit

* Close task requests session after execution.
Hopefully helps address issue with file handles being left open.

* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/psf/black: 22.12.0 → 23.1.0](psf/black@22.12.0...23.1.0)

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* v3.5.22

* Prepare v3.5.23.dev

* Fix for empty lazy field

* use better way for cheking for existance of a field

Co-authored-by: Chase Sterling <chase.sterling@gmail.com>

* v3.5.23

* Prepare v3.5.24.dev

* [fix] pyload ng (#3684)

* Fix for pyload ng

---------

Co-authored-by: Stefan Bischoff <stefan.bischoff@power.cloud>

* v3.5.24

* Prepare v3.5.25.dev

* fix

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* revert space change

* v3.5.25

* Prepare v3.5.26.dev

* [fix] sftp_list host_key accessing exception (#3694)

* v3.5.26

* Prepare v3.5.27.dev

* [add] from_qbittorrent plugin (#3692)

* [change] Add support for 'labels' in Transmission. (#3693)

* v3.5.27

* Prepare v3.5.28.dev

* [fix] memusage debugging module updated for python 3

* [fix] memusage plugin crashes with windows

* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/python-poetry/poetry: 1.3.0 → 1.4.0](python-poetry/poetry@1.3.0...1.4.0)

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* v3.5.28

* Prepare v3.5.29.dev

* [fix] Memory leak when there is no sys.stderr (#3701)

Also clean up the Manager init behavior and logging startup to be
a bit easier to follow.

* v3.5.29

* Prepare v3.5.30.dev

* Add more detailed assertions for entries generated by the sftp_list plugin.

Previously the test cases only focused on if a certain entry existed, not that it contined the correct data. As such this change adds assert_entries() method which allows more detail about the entries generated to be specified as well as checking if any erroneous entires were also generated. This change preceeds the change of symlink handling in the sftp_list plugin to make it easier to assert the URL change in the test.

This change also includes a small bit of cleanup in terms of the task names to make it clearer which variables are been set in that test case.

* Dont normalized every path returned via the sftp_list plugin.

Previously every path returned from the sftp_list plugin was normalised, this meant that symlinks were always resolved before been returned making it impossible to get the symlinks path.

* If a sftp_download entry points to a symlink and delete_origin is true, only remove the symlink, and not it's target.

This changes the behaviour when dealing with entries representing
symlinks. If entry previously represented a symlink it would remove it's
target or in the case of a directory it's contents. This changes that
behaviour such as in the case of a symlink, only the link will be
removed, but not it's target.

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Allow newer rpyc versions. fix #3601

* v3.5.30

* Prepare v3.5.31.dev

* [fix] transmission: transmission-rpc deprecated base64 torrent content (#3715)

* fix: transmission-rpc deprecated base64 torrent content

* use patblib.Path

* use shared timeout

* read bytes

* [add] Torznab: Add timeout parameter (#2738)

* Torznab: Add timeout parameter

This is needed for under some environments with many sources on the
torznab, the answer will take more than 30 seconds.
Let the user configure this to adapt according to their needs.

* v3.5.31

* Prepare v3.5.32.dev

* [add] sftp plugin supports additional SSH key types (#3714)

* Handle additional SSH Key.

pysftp doesn't handle  Ed25519Key and ECDSA key types, this change monkeypatches the _set_authentication method in pysftp to add handling for these additional key types.

* v3.5.32

* Prepare v3.5.33.dev

* Pushsafer Notification Service (#3718)

[change] pushsafer: Adds more options to customize notification

* v3.5.33

* Prepare v3.5.34.dev

* Update actions/stale action to v8 (#3725)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* v3.5.34

* Prepare v3.5.35.dev

* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/psf/black: 23.1.0 → 23.3.0](psf/black@23.1.0...23.3.0)

* v3.5.35

* Prepare v3.5.36.dev

* v3.5.36

* Prepare v3.5.37.dev

* upgrade to transmission-rpc v4 (#3716)

transmission: Update to use transmission-rpc >=4.0

* v3.6.0

* Prepare v3.6.1.dev

* upgrade to new python syntax (#3738)

Adds a pre-commit hook which updates syntax to cleaner versions available
in newer python versions.

* [change] rarbg: allow using domain_delay and increase default delay. fix #3705
Increase rarbg delay from 3s to 6s.
Allow using domain_delay to override the built in delay for rarbg.
Add an option to not replace existing domain limiter on a session.

* Add ruff to dev dependencies

* Ruff fix E713. not X in Y -> X not in Y

* Ruff fix F541. f-strings without placeholders

* Ruff fix F401. unused imports

* Ruff fix F841. unused variables

* Ruff fix E731. lambda assignment

* Ruff fix F402. shadowed variables

* Ruff fix F821. undefined names

* Add some noqa for purposefully delayed imports

* Ruff fix F811. redefinition of unused names

* Ruff fix E722. bare excepts

* Ruff fix E741. ambiguous variable names

* Fix aria2 config schema I just broke

* Fix sftp plugin?

* add qb package to Docker (#3737)

Move extra docker requirements to pyproject.toml
Build docker image on PRs

* v3.6.1

* Prepare v3.6.2.dev

* Enable ruff in pre-commit.
Enable ruff to do import sorting.
Sort all imports.

* Switch from pyupgrade to ruff in pre-commit.
More pyupgrade type fixes.

* Remove isort and pylint deps.

* Enable pylint error checking on ruff.

* Some fixes for flake8 bugbear warnings.

* Enable flake8 comprehension fixes (C4)
Fix them.

* Enable some more ruff checks.

* from_transmission: Properly set url field to prevent crash. fix #3741

* Simplify by using pathlib instead of os.path

* Enable implicit string concat linting

* Tweak docker webui install for easier maintenance (#3739)

* Update docker.io/python Docker tag to v3.11

* Switch Dockerfile to use dev_tools to bundle webui

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* v3.6.2

* Prepare v3.6.3.dev

* v3.6.3

* Prepare v3.6.4.dev

* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/charliermarsh/ruff-pre-commit: v0.0.261 → v0.0.262](astral-sh/ruff-pre-commit@v0.0.261...v0.0.262)

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* v3.6.4

* Prepare v3.6.5.dev

* Cross build docker images for more arch

* Add rust compiler

This is needed to build cryptography

* Add cargo package manager

* Set cargo to use of the git executable to fetch,

Ref. rust-lang/cargo#10230

* Add git

We need it to allow cargo to fetch packages

* add

* [fix] from_transmission: Don't crash when generating done_date. fix #3745

* fix(deps): update dependency flask to v2.3.2 [security]

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Maybe fix renovate/pre-commit wars on vulnerability PRs

* Different try to disable requirements.txt detection for vulnerability prs

* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/charliermarsh/ruff-pre-commit: v0.0.262 → v0.0.263](astral-sh/ruff-pre-commit@v0.0.262...v0.0.263)

* v3.6.5

* Prepare v3.6.6.dev

* fix(deps): update dependency flask to v2.2.5 [security]

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* v3.6.6

* Prepare v3.6.7.dev

* [Add] template filter to parse human-readable file size to bytes (#3750)

* Add template filter to parse human-readable file size to bytes

* pass test

* handle undefined variable case

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* add si carry support and remove regex anchor

minor improve of regex false-positive match

* tighten up regexp and adjust variable name

* add specified test for `parse_size`

* add case-insensitive matching support

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* add provenance: false to docker buildx (#3759)

* Strip timezone from transmission_date_done field to be consistent with other datetimes

* v3.6.7

* Prepare v3.6.8.dev

* [change] Update dockerfile for faster builds and smaller updates

* Optimize docker layers so that dependencies don't get rebuilt when they haven't changed
* CI now caches docker image layers for faster builds

* v3.6.8

* Prepare v3.6.9.dev

* chore(deps): update actions/cache action to v3

* Remove unused docker caching (#3763)

The docker/build-push-action has built in caching. Looks like the explicit cache action wasn't doing anything.

* [fix] download: Fix streaming downloads to disk instead of loading entirely in memory. fix #3762 (#3764)

* Cache intermediate layers for docker builds

* [pre-commit.ci] pre-commit autoupdate (#3765)

updates:
- [github.com/charliermarsh/ruff-pre-commit: v0.0.263 → v0.0.265](astral-sh/ruff-pre-commit@v0.0.263...v0.0.265)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* v3.6.9

* Prepare v3.6.10.dev

* [change] morethantv: Update categories to match website

* Update ubuntu Docker tag to v22 (#3662)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* v3.7.0

* Prepare v3.7.1.dev

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Steve Adams <stevezau@gmail.com>
Co-authored-by: Chase Sterling <chase.sterling@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: FlexGet-Bot <chase.sterling+fg@gmail.com>
Co-authored-by: Stefan Bischoff <stefan.bischoff@power.cloud>
Co-authored-by: StefftheEmperor2 <55734627+StefftheEmperor2@users.noreply.github.com>
Co-authored-by: Trim21 <trim21.me@gmail.com>
Co-authored-by: Aidan Rowe <aidanrowe@gmail.com>
Co-authored-by: paranoidi <marko.koivusalo@gmail.com>
Co-authored-by: ProteinPig <ProteinPig@Gmail.com>
Co-authored-by: kingamjick <kingamajick@gmail.com>
Co-authored-by: eSoares <eSoares@users.noreply.github.com>
Co-authored-by: Kevin Siml <appzer@users.noreply.github.com>
Co-authored-by: ianstalk <ijeaston@gmail.com>
Co-authored-by: Massimiliano Cannarozzo <maxcanna@gmail.com>
Co-authored-by: Johnny Hsieh <32300164+mnixry@users.noreply.github.com>
Co-authored-by: Steve <38679608+spgomez@users.noreply.github.com>
Co-authored-by: Patrick Egli <paedy@P-DESKTOP>
stevezau added a commit that referenced this pull request May 25, 2023
* [fix] imdb_lookup: updated the scraper for the newish html structure

* fix some tests

* cassettes

* ...

* move to https as imdb now redirects to https by default

* fix test_imdb tests

* fix imdb parser tests

* fix imdb tests

* more updates to vcr recordings to fix imdb tests

* use api v3

* fix profile endpoint

* fix profileid name

* language id required

* fixed

* Initial rewrite

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Initial rewrite

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix test cassettes

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix exact match

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix test imdb cache

* fix nfo tests

* refactor exact testing

* fix text exists

* Fix test

* Radarr sonarr api v3 - Fix merge conflicts (#3771)

* Revert unwanted changes

Restore api.py and test_metainfo.py to develop version.
Delete imdb.py (not existent on develop)

tmp

* Adapt cassettes for radarr/sonarr tests

---------

Co-authored-by: Patrick Egli <paedy@P-DESKTOP>

* Radarr sonarr api v3 - Fix merge conflicts with develop (#3775)

* Update docker/build-push-action action to v4

* Update irc to download tracker config correctly (#3678)

[fix] irc: Update irc to download tracker config correctly

* Bump isort version in pre-commit

* Close task requests session after execution.
Hopefully helps address issue with file handles being left open.

* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/psf/black: 22.12.0 → 23.1.0](psf/black@22.12.0...23.1.0)

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* v3.5.22

* Prepare v3.5.23.dev

* Fix for empty lazy field

* use better way for cheking for existance of a field

Co-authored-by: Chase Sterling <chase.sterling@gmail.com>

* v3.5.23

* Prepare v3.5.24.dev

* [fix] pyload ng (#3684)

* Fix for pyload ng

---------

Co-authored-by: Stefan Bischoff <stefan.bischoff@power.cloud>

* v3.5.24

* Prepare v3.5.25.dev

* fix

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* revert space change

* v3.5.25

* Prepare v3.5.26.dev

* [fix] sftp_list host_key accessing exception (#3694)

* v3.5.26

* Prepare v3.5.27.dev

* [add] from_qbittorrent plugin (#3692)

* [change] Add support for 'labels' in Transmission. (#3693)

* v3.5.27

* Prepare v3.5.28.dev

* [fix] memusage debugging module updated for python 3

* [fix] memusage plugin crashes with windows

* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/python-poetry/poetry: 1.3.0 → 1.4.0](python-poetry/poetry@1.3.0...1.4.0)

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* v3.5.28

* Prepare v3.5.29.dev

* [fix] Memory leak when there is no sys.stderr (#3701)

Also clean up the Manager init behavior and logging startup to be
a bit easier to follow.

* v3.5.29

* Prepare v3.5.30.dev

* Add more detailed assertions for entries generated by the sftp_list plugin.

Previously the test cases only focused on if a certain entry existed, not that it contined the correct data. As such this change adds assert_entries() method which allows more detail about the entries generated to be specified as well as checking if any erroneous entires were also generated. This change preceeds the change of symlink handling in the sftp_list plugin to make it easier to assert the URL change in the test.

This change also includes a small bit of cleanup in terms of the task names to make it clearer which variables are been set in that test case.

* Dont normalized every path returned via the sftp_list plugin.

Previously every path returned from the sftp_list plugin was normalised, this meant that symlinks were always resolved before been returned making it impossible to get the symlinks path.

* If a sftp_download entry points to a symlink and delete_origin is true, only remove the symlink, and not it's target.

This changes the behaviour when dealing with entries representing
symlinks. If entry previously represented a symlink it would remove it's
target or in the case of a directory it's contents. This changes that
behaviour such as in the case of a symlink, only the link will be
removed, but not it's target.

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Allow newer rpyc versions. fix #3601

* v3.5.30

* Prepare v3.5.31.dev

* [fix] transmission: transmission-rpc deprecated base64 torrent content (#3715)

* fix: transmission-rpc deprecated base64 torrent content

* use patblib.Path

* use shared timeout

* read bytes

* [add] Torznab: Add timeout parameter (#2738)

* Torznab: Add timeout parameter

This is needed for under some environments with many sources on the
torznab, the answer will take more than 30 seconds.
Let the user configure this to adapt according to their needs.

* v3.5.31

* Prepare v3.5.32.dev

* [add] sftp plugin supports additional SSH key types (#3714)

* Handle additional SSH Key.

pysftp doesn't handle  Ed25519Key and ECDSA key types, this change monkeypatches the _set_authentication method in pysftp to add handling for these additional key types.

* v3.5.32

* Prepare v3.5.33.dev

* Pushsafer Notification Service (#3718)

[change] pushsafer: Adds more options to customize notification

* v3.5.33

* Prepare v3.5.34.dev

* Update actions/stale action to v8 (#3725)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* v3.5.34

* Prepare v3.5.35.dev

* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/psf/black: 23.1.0 → 23.3.0](psf/black@23.1.0...23.3.0)

* v3.5.35

* Prepare v3.5.36.dev

* v3.5.36

* Prepare v3.5.37.dev

* upgrade to transmission-rpc v4 (#3716)

transmission: Update to use transmission-rpc >=4.0

* v3.6.0

* Prepare v3.6.1.dev

* upgrade to new python syntax (#3738)

Adds a pre-commit hook which updates syntax to cleaner versions available
in newer python versions.

* [change] rarbg: allow using domain_delay and increase default delay. fix #3705
Increase rarbg delay from 3s to 6s.
Allow using domain_delay to override the built in delay for rarbg.
Add an option to not replace existing domain limiter on a session.

* Add ruff to dev dependencies

* Ruff fix E713. not X in Y -> X not in Y

* Ruff fix F541. f-strings without placeholders

* Ruff fix F401. unused imports

* Ruff fix F841. unused variables

* Ruff fix E731. lambda assignment

* Ruff fix F402. shadowed variables

* Ruff fix F821. undefined names

* Add some noqa for purposefully delayed imports

* Ruff fix F811. redefinition of unused names

* Ruff fix E722. bare excepts

* Ruff fix E741. ambiguous variable names

* Fix aria2 config schema I just broke

* Fix sftp plugin?

* add qb package to Docker (#3737)

Move extra docker requirements to pyproject.toml
Build docker image on PRs

* v3.6.1

* Prepare v3.6.2.dev

* Enable ruff in pre-commit.
Enable ruff to do import sorting.
Sort all imports.

* Switch from pyupgrade to ruff in pre-commit.
More pyupgrade type fixes.

* Remove isort and pylint deps.

* Enable pylint error checking on ruff.

* Some fixes for flake8 bugbear warnings.

* Enable flake8 comprehension fixes (C4)
Fix them.

* Enable some more ruff checks.

* from_transmission: Properly set url field to prevent crash. fix #3741

* Simplify by using pathlib instead of os.path

* Enable implicit string concat linting

* Tweak docker webui install for easier maintenance (#3739)

* Update docker.io/python Docker tag to v3.11

* Switch Dockerfile to use dev_tools to bundle webui

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* v3.6.2

* Prepare v3.6.3.dev

* v3.6.3

* Prepare v3.6.4.dev

* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/charliermarsh/ruff-pre-commit: v0.0.261 → v0.0.262](astral-sh/ruff-pre-commit@v0.0.261...v0.0.262)

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* v3.6.4

* Prepare v3.6.5.dev

* Cross build docker images for more arch

* Add rust compiler

This is needed to build cryptography

* Add cargo package manager

* Set cargo to use of the git executable to fetch,

Ref. rust-lang/cargo#10230

* Add git

We need it to allow cargo to fetch packages

* add

* [fix] from_transmission: Don't crash when generating done_date. fix #3745

* fix(deps): update dependency flask to v2.3.2 [security]

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Maybe fix renovate/pre-commit wars on vulnerability PRs

* Different try to disable requirements.txt detection for vulnerability prs

* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/charliermarsh/ruff-pre-commit: v0.0.262 → v0.0.263](astral-sh/ruff-pre-commit@v0.0.262...v0.0.263)

* v3.6.5

* Prepare v3.6.6.dev

* fix(deps): update dependency flask to v2.2.5 [security]

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* v3.6.6

* Prepare v3.6.7.dev

* [Add] template filter to parse human-readable file size to bytes (#3750)

* Add template filter to parse human-readable file size to bytes

* pass test

* handle undefined variable case

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* add si carry support and remove regex anchor

minor improve of regex false-positive match

* tighten up regexp and adjust variable name

* add specified test for `parse_size`

* add case-insensitive matching support

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* add provenance: false to docker buildx (#3759)

* Strip timezone from transmission_date_done field to be consistent with other datetimes

* v3.6.7

* Prepare v3.6.8.dev

* [change] Update dockerfile for faster builds and smaller updates

* Optimize docker layers so that dependencies don't get rebuilt when they haven't changed
* CI now caches docker image layers for faster builds

* v3.6.8

* Prepare v3.6.9.dev

* chore(deps): update actions/cache action to v3

* Remove unused docker caching (#3763)

The docker/build-push-action has built in caching. Looks like the explicit cache action wasn't doing anything.

* [fix] download: Fix streaming downloads to disk instead of loading entirely in memory. fix #3762 (#3764)

* Cache intermediate layers for docker builds

* [pre-commit.ci] pre-commit autoupdate (#3765)

updates:
- [github.com/charliermarsh/ruff-pre-commit: v0.0.263 → v0.0.265](astral-sh/ruff-pre-commit@v0.0.263...v0.0.265)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* v3.6.9

* Prepare v3.6.10.dev

* [change] morethantv: Update categories to match website

* Update ubuntu Docker tag to v22 (#3662)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* v3.7.0

* Prepare v3.7.1.dev

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Steve Adams <stevezau@gmail.com>
Co-authored-by: Chase Sterling <chase.sterling@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: FlexGet-Bot <chase.sterling+fg@gmail.com>
Co-authored-by: Stefan Bischoff <stefan.bischoff@power.cloud>
Co-authored-by: StefftheEmperor2 <55734627+StefftheEmperor2@users.noreply.github.com>
Co-authored-by: Trim21 <trim21.me@gmail.com>
Co-authored-by: Aidan Rowe <aidanrowe@gmail.com>
Co-authored-by: paranoidi <marko.koivusalo@gmail.com>
Co-authored-by: ProteinPig <ProteinPig@Gmail.com>
Co-authored-by: kingamjick <kingamajick@gmail.com>
Co-authored-by: eSoares <eSoares@users.noreply.github.com>
Co-authored-by: Kevin Siml <appzer@users.noreply.github.com>
Co-authored-by: ianstalk <ijeaston@gmail.com>
Co-authored-by: Massimiliano Cannarozzo <maxcanna@gmail.com>
Co-authored-by: Johnny Hsieh <32300164+mnixry@users.noreply.github.com>
Co-authored-by: Steve <38679608+spgomez@users.noreply.github.com>
Co-authored-by: Patrick Egli <paedy@P-DESKTOP>

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: cvium <clausvium@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: patrickegli <patrickegli@users.noreply.github.com>
Co-authored-by: Patrick Egli <paedy@P-DESKTOP>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Chase Sterling <chase.sterling@gmail.com>
Co-authored-by: FlexGet-Bot <chase.sterling+fg@gmail.com>
Co-authored-by: Stefan Bischoff <stefan.bischoff@power.cloud>
Co-authored-by: StefftheEmperor2 <55734627+StefftheEmperor2@users.noreply.github.com>
Co-authored-by: Trim21 <trim21.me@gmail.com>
Co-authored-by: Aidan Rowe <aidanrowe@gmail.com>
Co-authored-by: paranoidi <marko.koivusalo@gmail.com>
Co-authored-by: ProteinPig <ProteinPig@Gmail.com>
Co-authored-by: kingamjick <kingamajick@gmail.com>
Co-authored-by: eSoares <eSoares@users.noreply.github.com>
Co-authored-by: Kevin Siml <appzer@users.noreply.github.com>
Co-authored-by: ianstalk <ijeaston@gmail.com>
Co-authored-by: Massimiliano Cannarozzo <maxcanna@gmail.com>
Co-authored-by: Johnny Hsieh <32300164+mnixry@users.noreply.github.com>
Co-authored-by: Steve <38679608+spgomez@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants