Commit graph

69 commits

Author SHA1 Message Date
soup
f774831d76
feat(releases): delete older than x (#924)
* feat: delete releases older than x

* check timestamp

* incomplete front end changes

commiting changes from codespace to not lose them

* change to dropdown with options

* using int comparisons to avoid nightmares

* Revert "using int comparisons to avoid nightmares"

This reverts commit dc55966a73e9f6ad79ed28c3a3e0dbe0e35448a6.

* suggestions by stacksmash76

come back to discord @stacksmash76

* Curves - a touch of warmth in our pixel realm

* replace inline css with tailwind

* remove unnecessary comment

* align label with dropdown
changed first paragraph to something more sensible

* change font weight for duration label

* padding changes

* nitpicky

* merged divs where possible

* small adjustments for light theme

* attempt to fix for postgres

* refactor: split into component and add confirmation modal

also restyle component

* fix: go fmt

---------

Co-authored-by: ze0s <43699394+zze0s@users.noreply.github.com>
2023-05-21 18:39:28 +02:00
ze0s
6898ad8315
feat(releases): replay actions (#932)
* feat(releases): replay actions

* feat(releases): replay actions component

* fix: update filter actions

* fix: select filter_id from ras
2023-05-15 21:30:04 +02:00
ze0s
e5b4ded725
feat(filters): add support for feed description (#922)
* feat(filters): match description

* feat(filters): support description

* chore: remove match logic for description

* fix: update rss tests
2023-05-13 19:33:18 +02:00
soup
a5d6da7373
feat(releases): improve error handling on torrent download (#880)
* feat/check-content-type-torrent-download

* check for text/html instead

* check for status codes above 308

* refactor

* make sure < 499 goes to content-type check

* fix content header check by accounting for charset

* retry on 404

* change to errors.New for 404

* make use of verbs

* handle http errors as cases

* check contentType with strings.Contains instead

* adjust message for unauthorized and forbidden

---------

Co-authored-by: ze0s <43699394+zze0s@users.noreply.github.com>
2023-05-06 18:22:08 +02:00
ze0s
1ca2677f9f
fix(actions): handle non download client actions (#903)
fix(actions): handle non download clients
2023-05-03 00:10:29 +02:00
ze0s
604c7896bd
chore: add LICENSE GPLv2-or-later (#897)
* chore: add LICENSE

* chore: add LICENSE to README
2023-05-01 16:21:59 +02:00
ze0s
ef3445cbed
fix(releases): max downloads per hour (#883)
* fix(releases): max downloads per hour

* refactor: release processing

* compare apples to apples (#884)

* from rocketships back to apples

* Update internal/database/filter.go

* cast me to the

* keep your eye on the case

---------

Co-authored-by: Kyle Sanderson <kyle.leet@gmail.com>
2023-04-29 21:52:49 +02:00
Kyle Sanderson
1b8f2fce3c
fix(release): cleanup temporary torrent files (#839)
* fix(release): cleanup temporary files

* the other file

* backout revert
2023-04-27 21:43:20 +02:00
ze0s
956bccd69f
feat(releases): set freeleech percent 100 with freeleech bool (#872)
* feat(releases): set freeleech to freeleech percent 100

* fix(releases): check if freeleechpercent is gt 0
2023-04-23 20:54:39 +02:00
ze0s
969a9e7025
fix(indexers): PolishSource downloads (#837)
* test: dump req and res for torrent download

* chore: remove req res dump
2023-04-14 21:15:32 +02:00
bakerboy448
830e719169
fix(newznab): Use valid usenet release protocol for Starrs (#762)
also update comments

Fixes #761
2023-03-19 20:58:47 +01:00
Kyle Sanderson
13a74f7cc8
feat: add usenet support (#543)
* feat(autobrr): implement usenet support

* feat(sonarr): implement usenet support

* feat(radarr): implement usenet support

* feat(announce): implement usenet support

* announce: cast a line

* feat(release): prevent unknown protocol transfer

* release: lines for days.

* feat: add newznab and sabnzbd support

* feat: add category to sabnzbd

* feat(newznab): map categories

* feat(newznab): map categories

---------

Co-authored-by: ze0s <43699394+zze0s@users.noreply.github.com>
Co-authored-by: ze0s <ze0s@riseup.net>
2023-03-04 20:27:18 +01:00
ze0s
ca196f0bf1
feat(releases): support magnet links (#730)
* feat(releases): support magnet links

* feat(feeds): support magnet links

* feat(actions): log messages

* fix: component warning

* fix: check hasprefix instead of hassuffix for magnet

* feat(release): resolve magnet uri from link

* fix(actions): deluge use magnet uri

* fix(macros): add `MagnetURI` var

* fix(actions): run magnet resolving before macros

* feat(feeds): set download type on creation
2023-02-28 22:16:10 +01:00
ze0s
5607184522
fix(releases): parse isScene as Origins SCENE (#716)
* fix(releases): parse isScene as Origins SCENE

* fix(releases): remove isScene
2023-02-14 22:48:10 +01:00
Ignacio
9a47dbc588
fix(feeds): RSS improve torrent size parsing (#667)
* Fixes issue 636 - fail to parse torrent size on some RSS feeds when enclosure is a fixed value

* Pick the biggest size

* minor comment

* Updates release size when new parsed string size is bigger

- Sets default size of `Release` to zero (unparsed)
- When there are parsing errors, then it doesn't RESET the size to 0 (assuming a tracker providing some size that can't be parsed)
- Updates the size to the new size only if the parsed size is bigger than the previous.

* fix(feeds): ignore default 39399 enclosure size

---------

Co-authored-by: ze0s <43699394+zze0s@users.noreply.github.com>
2023-02-05 19:18:17 +01:00
Kyle Sanderson
af43c98632
fix(filters): add support for year-less titles (#685)
* fix(filters): add support for year-less titles

* chore: update pkg

* fix: broken tests

---------

Co-authored-by: ze0s <ze0s@riseup.net>
2023-02-02 23:45:19 +01:00
ze0s
4c83787a0b
feat(releases): add info url link to releases list (#683)
* feat(indexers): definitions add infourl to irc parsing

* feat(indexers): add infourl to releases

* fix(indexers): fix info urls

* fix(indexers): update btn
2023-01-29 21:40:49 +01:00
varoOP
ad0d482065
fix(releases): force capture titles AB (#668)
capture those weird titles
2023-01-29 16:03:37 +01:00
Kyle Sanderson
6e85ec52e3
fix(releases): check for duplicate tags (#681)
* fix(releases): don't store duplicate tags

* Update release.go
2023-01-29 15:50:27 +01:00
Kyle Sanderson
3713985dcc
fix(filters): enable IsScene parsing for value 1 (#676) 2023-01-28 17:00:09 +01:00
ze0s
21c02dfab0
fix(filters): max downloads per filter check (#660) 2023-01-18 21:47:27 +01:00
ze0s
5c402b6d6c
feat(filters): support Language filtering (#632)
* feat(filters): add support for language

* feat(filters): add db migrations and repo

* feat(filters): fix failing tests

* feat(filters): fix failing tests
2023-01-09 00:33:08 +01:00
ze0s
38795be9ea
feat(filters): smart episode (#563)
* feat(filters): initial smart episode

* feat(smart-episode): pseudo-logic

* feat(filters): check releases

* feat(filters): update logic

* feat(web): smart episode (#562)

* add frontend part for smart episode feature

* change description for smart episode help text

* fix wording

* feat(filters): smart-episode logic

Co-authored-by: Kyle Sanderson <kyle.leet@gmail.com>
Co-authored-by: xoaaC <35452459+xoaaC@users.noreply.github.com>
2022-12-14 19:07:04 +01:00
ze0s
29da2416ec
feat(clients): add support for qBittorrent 4.4.0+ (#558)
* refactor: move client to go-qbittorrent

* refactor: move client to go-qbittorrent

* feat(downloadclient): cache qbittorrent client

* feat(downloadclient): update qbit

* feat(downloadclient): client test and remove pkg qbit

* feat(downloadclient): update pkg qbit

* fix(release): method

* feat(release): make GetCachedClient concurrent safe

* feat(release): add additional tests for buildLegacyHost

* feat(release): remove branching

* chore: update pkg autobrr/go-qbittorrent to v.1.2.0
2022-12-10 19:25:04 +01:00
ze0s
25a165b764
feat(indexers): add support for optional baseurl override (#551)
* feat(indexers): optional baseurl override

* feat(indexers): update baseUrl parsing

* refactor(indexers): BREAKING move parse to IRC struct

* Move Parse as part of IRC struct from Indexer
* Updated definitions
* Build torrentUrl in stages
* Use new url.JoinPath to build torrentUrl
* Update tests

* refactor(indexers): select option obj

* refactor(indexers): make backwards compatible
2022-12-03 15:40:45 +01:00
ze0s
14ecaa530e
feat(indexers): add HUNO (#533) 2022-11-11 14:01:35 +01:00
Kyle Sanderson
2d8f7aeb4e
feat(releases): retry failed downloads (#491)
* feat(download): implement parsing and retry

* feat: retry torrent file downloads

* refactor: error handling downloadtorrentfile

* feat: add tests for download torrent file

* build: add runs-on self-hosted

* build: add runs-on self-hosted
2022-10-19 21:52:31 +02:00
ze0s
b7d2161fdb
feat(feeds): torznab parse category and freeleech (#492)
* feat(feeds): torznab parse freeleech

* feat(feeds): torznab parse categories
2022-10-14 18:01:04 +02:00
xoaaC
2777f8c3cd
fix(indexers): improve animebytes parsing (#477)
* Fixed typo for "Aweomse Raw Novel"
Added one missing whitespace after "manga" tag for "Awesome Live Action Special" test
Changed regex expression to fix AB parsing

* Fixed regex to acknowledge "uploader" var in case there is no tags in the announce.
Added test line for announces without tags.

* chore: update rls package

* fix(release): don't overwrite season and episode
2022-10-13 20:35:48 +02:00
ze0s
dc309a57e4
fix(releases): improve tags parsing (#459) 2022-09-10 21:26:26 +02:00
Kyle Sanderson
c7b372ee4e
feat(actions): implement TorrentDataRawBytes macro (#444)
* feat(action): implement TorrentDataRawBytes

* better citizen

* feat(filters): external support TorrentDataRawBytes macro

* feat(actions): exec add TorrentDataRawBytes macro

* feat(actions): exec add TorrentDataRawBytes macro
2022-08-31 15:03:02 +02:00
E7
48d6468503
feat(indexers): TorrentName templating (#381)
* feat(indexers): animebytes improve parsing

* Update animebytes.yaml

fix music parsing

* parse releaseEpisode

* add torrentname template

* improve releaseTags parsing

* add torrentName templating
conditional rendering of group and episode number
add freeleech parsing

* fix(indexers): improve ab releasename parsing

* feat(macros): expose TorrentID, GroupID, and Size

* Revert "feat(macros): expose TorrentID, GroupID, and Size"

This reverts commit dae40116a1cce40f3c18d057d0af697af4407274.

* change year to use parentheses

Co-authored-by: ze0s <ze0s@riseup.net>
Co-authored-by: varoOP <varoOP@protonmail.com>
2022-08-25 14:47:41 +02:00
ze0s
b50688159e
feat(feeds): add generic RSS support (#410)
* feat(feeds): add generic rss support

* feat(feeds/web): add generic rss support

* implement rss downloading

* gosum + mod

* re-add size from Custom field.

* implement uploader + category

* sync

* remove double assignment (+torznab)

* didn't save the rss file >.>

* cleanup

* fixfeeds): create rss indexer

* fix(feeds): stop feed

* feat(feeds): support nexusphp rss enclosure link

* feat(feeds): check size for custom size

* fix(feeds): race condition and only stop enabled feeds

* fix(feeds): unify indexer implementation badge

Co-authored-by: Kyle Sanderson <kyle.leet@gmail.com>
2022-08-20 00:34:46 +02:00
ze0s
9c036033e9
feat(indexers): mam parse vip as freeleech (#407) 2022-08-12 16:13:45 +02:00
ze0s
4f3091a4a7
feat(indexers): btn improve parsing (#371)
* feat(indexers): btn improve parsing
2022-07-23 16:47:15 +02:00
ze0s
d56693cd33 feat(filters): add external script and webhook checks 2022-07-23 15:19:28 +02:00
Ludvig Lundgren
402596523d
feat(actions): improve errors and logs (#340) 2022-07-07 16:28:14 +02:00
Ludvig Lundgren
31fbe013ff
feat(releases): action status show filter and client (#338)
* feat(releases): action status show client and filter

* feat(releases): add better tooltip
2022-07-06 17:30:41 +02:00
varoOP
95ff83cd3a
feat(indexers): animebytes parse group and category (#327)
* refactor(AB): get releaseGroup

* feat(AB): match category
2022-07-06 15:01:52 +02:00
Ludvig Lundgren
0e88117702
feat(logging); improve messages and errors (#336)
* feat(logger): add module context

* feat(logger): change errors package

* feat(logger): update tests
2022-07-05 13:31:44 +02:00
Ludvig Lundgren
6675a1df3e
fix(releases): releasetags freeleech parsing (#306)
* refactor(releases): remove err from constructor

* fix(releases): freeleech parsing and filtering

* chore: remove unused releaseinfo package
2022-06-14 22:26:45 +02:00
Ludvig Lundgren
258754643d
feat(web): search releases (#302)
* feat(releases): search in ui

* refactor(releases): optimize query recent releases
2022-06-14 01:51:33 +02:00
Ludvig Lundgren
91b094f4f4
feat(confg): reload on save and refactor logging (#275)
* feat(confg): reload on save

* refactor(logging): rework
2022-05-20 09:27:01 +02:00
Ludvig Lundgren
2903e7b493
fix(indexers-irc): load new values on update (#274)
* fix(indexers-irc): reload config on restart

* fix(indexers-irc): reload config

* fix: indexer add form
2022-05-17 09:35:08 +02:00
Ludvig Lundgren
e6c151a029
feat: improve release parsing and filtering (#257)
* feat(releases): improve parsing

* refactor: extend filtering add more tests

* feat: improve macro

* feat: add and remove fields

* feat: add freeleech percent to bonus

* feat: filter by origin
2022-04-30 13:43:51 +02:00
Ludvig Lundgren
bb62e724a1
feat: add torznab feed support (#246)
* feat(torznab): initial impl

* feat: torznab processing

* feat: torznab more scheduling

* feat: feeds web

* feat(feeds): create on indexer create

* feat(feeds): update migration

* feat(feeds): restart on update

* feat(feeds): set cron schedule

* feat(feeds): use basic empty state

* chore: remove duplicate migrations

* feat: parse release size from torznab

* chore: cleanup unused code
2022-04-25 12:58:54 +02:00
Ludvig Lundgren
8592787b8b
fix(release): edge case resolution parsing (#243) 2022-04-12 20:58:36 +02:00
Ludvig Lundgren
a3854ecd59
refactor: filter and action flow (#225)
* refactor: fitler and action flow

* fix: save release before filters

* feat: add action client to notifications

* feat: improve filter check logging
2022-04-09 21:20:26 +02:00
Ludvig Lundgren
431742fd94
feat: add notifications (#216)
* feat: initial notifications support

* chore: update deps
2022-04-04 19:13:09 +02:00
Ludvig Lundgren
3185832708
feat: add postgres support (#215)
* feat: add postgres support and refactor

* feat: improve releases find

* fix: autobrrctl create user
2022-04-02 19:24:23 +02:00