Commit graph

525 commits

Author SHA1 Message Date
DirectorX
762abef31e
fix(indexers): hebits use full category (#945)
fix(indexers): hebits fix pattern for category

Co-authored-by: Kyle Sanderson <kyle.leet@gmail.com>
2023-05-19 18:38:39 +02:00
ze0s
43ccf404da
fix(filters): duplicate missing actions (#943) 2023-05-17 18:59:19 +02:00
ze0s
d31866b03e
fix(config): env var prefix clashing in k8s (#937)
* fix: log config error

* fix: add extra underscore to env prefix

* fix: config revert

* chore: add web/.gitkeep

* chore: fix web/dist/.gitkeep

* fix: add extra underscore to env prefix
2023-05-16 00:46: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
97333d334f
fix(auth): too restrictive session handling (#933) 2023-05-15 19:09:06 +02:00
DirectorX
38242a8ca6
fix(indexers): Hebits infourl (#930)
fix(indexers): hebits fix infourl
2023-05-14 13:17:24 +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
Kyle Sanderson
058627f4e5
fix(indexers): Hebits URL parsing (#928) 2023-05-13 19:31:24 +02:00
Kyle Sanderson
ac61334f93
fix(irc): restart offline network (#769)
fix(irc): implement restart for offline network
2023-05-07 22:01:21 +02:00
Kyle Sanderson
2ce82cc687
feat(config): allow config environment variables (#691)
* feat(config): allow config environment variables

* generate secure config default token

* fix: read env vars

* fix: go mod tidy

* fix: revert default port change

* fix: do not ignore default config values

---------

Co-authored-by: ze0s <ze0s@riseup.net>
2023-05-07 21:57:52 +02:00
Yuchen Ying
fdc957c571
feat(notification): Telegram add support for topics in groups (#894)
* feat(notification): send Telegram messages to a specific topic of a group

* Convert settings.Topic to integer once and reuse it as part of the
telegramSender struct.

* feat(notifications): add migrations for topic

* fix(notifications): find null string

* fix(notifications): form initial values

---------

Co-authored-by: ze0s <ze0s@riseup.net>
2023-05-07 17:30:07 +02:00
ze0s
01a69c7582
fix(feeds): process RSS on initial run (#918) 2023-05-07 15:55:04 +02:00
soup
cf61bcf672
fix(actions): trim tags categories and save path for qbittorrent (#916)
trim tags, categories and save path for qbit
2023-05-06 23:40:22 +02:00
ze0s
1abc260047
fix(downloadclients): Deluge v1 save path (#915)
fix(downloadclients): Deluge v1 fix save path
2023-05-06 22:56:10 +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
96e38e649a
feat(downloadclients): rtorrent improve basic auth handling (#914)
* feat: wrap rtorrent client with custom transport

* refactor: move to autobrr/go-rtorrent

* feat: wrap rtorrent client with custom transport

* refactor: move to autobrr/go-rtorrent

* feat(web): update forms
2023-05-06 18:16:34 +02:00
soup
8a1910843c
fix(filters): handle empty tag_match_logic by defaulting to ANY (#910)
* speculative fix for tags_match_logic if set to ANY

* add default tag match logic handling

* fixed test cases and rejection messages

* trim tags in match funcs

* add test for empty TagsMatchLogic
2023-05-06 16:11:34 +02:00
Hilo4321
282175c39f
fix(indexers): xspeeds update passkey help (#907)
* Update xspeeds.yaml

Update the help info line for the Passkey.

* chore: update xspeeds secret key help

---------

Co-authored-by: ze0s <43699394+zze0s@users.noreply.github.com>
2023-05-06 16:07:25 +02:00
soup
d23f1f2bce
fix(indexers): xspeeds regex pattern for categories (#906)
fix xspeeds regex pattern
2023-05-03 20:51:47 +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
c1746dc7d6
fix(webhooks): increase timeout (#902)
* fix(webhooks): increase timeout

* feat: mockindexer add dummy webhook endpoint
2023-05-02 21:44:38 +02:00
ze0s
de4a6c7661
fix(filters): max downloads include pending with postgres (#901)
fix(filters): max downloads include pending with Postgres
2023-05-02 19:55:43 +02:00
ze0s
319bc2f200
fix(web): PWA asset and route handling (#898)
* fix(web): PWA asset and fallback route handling

* fix(web): strip baseurl

* fix(web): add back manifest.json

* fix(web): add back manifest.json

* fix(web): log file

* fix(web): do not trim baseurl

* fix(web): try different start_url

* fix(web): pwa with subfolder
2023-05-02 19:06:53 +02:00
Fabricio Silva
d085d894d4
fix(config): lxc container detection (#900)
fix(config): detection for lxc containers
2023-05-02 18:48:12 +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
83e9232b98
fix(auth): invalid session error (#892)
* chore: ignore dist dir

* fix(auth): speculative invalid session
2023-05-01 14:27:30 +02:00
Yuchen Ying
82a117c12b
fix(notifications): always verify Telegram certificate (#893) 2023-05-01 03:00:33 +02:00
ze0s
64900c4d56
fix(downloadclients): remove from filter actions on delete (#891)
fix(downloadclients): properly delete from filter actions
2023-05-01 01:18:46 +02:00
ze0s
82beb31767
feat(indexers): iAnon parse category and freeleech (#886)
* feat(indexers): iAnon parse category and freeleech

* feat(indexers): iAnon parse category and freeleech
2023-04-30 00:21:44 +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
Nelson Pecora
da5492febb
feat(notifications): add Pushover (#598)
* feat(notifications): add pushover

* add db migration

* fix lint error

* some small corrections

* fixed README

* added missing columns to postgres_migrate.go

* use token for user_key

* refactor(notifications): change priority to int

* fix: only test selected events

---------

Co-authored-by: soup <soup@r4tio.dev>
Co-authored-by: ze0s <ze0s@riseup.net>
2023-04-29 17:07:15 +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
martylukyy
b0198bc2a3
fix(indexers): OPS new announce format (#862)
* fix ops parsing
extend regex capture group for torrentName var to contain releaseTags var
replace all – in announces with a - for torrentName var

* update ops yaml for new announces

* replace en-dashes with hyphens for OPS
add Sampler to releaseTypeMusic const
sort strings of releaseTypeMusic const alphabetically
shorten import in constants.ts

* replace en-dashes in pattern with . to cover any separator

---------

Co-authored-by: ze0s <43699394+zze0s@users.noreply.github.com>
2023-04-26 20:31:21 +02:00
martylukyy
9e2e43477d
fix(indexers): TorrentNetwork settings crash (#879)
fix panic due to misspelling in definition
2023-04-24 12:59:50 +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
Joakim Olsen
35af06a535
feat(macros): add Category and Categories (#863)
Adding "Category", "Categories" filter variables

Add "Category" and "Categories" to available filter variables, ie available as {{ .Category }}.
2023-04-23 15:53:43 +02:00
ze0s
7f05dd1efd
fix(onboarding): could not create user (#848)
fix: onboarding not working
2023-04-17 20:56:17 +02:00
KaiserBh
e0aaa0bcab
fix(notifications): test handle unsupported type (#841)
* bugfix: nil pointer dereference

if agent variable is nil when the Send method is called, will crash.

* refactor: return early.

* refactor: idiomatic solution.

---------

Co-authored-by: KaiserBh <kaiserbh@proton.me>
2023-04-16 18:44:07 +02:00
ze0s
f3cfeed8cd
feat(indexers): test API from settings (#829)
* refactor(indexers): test api clients

* feat(indexers): test api connection

* fix(indexers): api client tests

* refactor: indexer api clients

* feat: add Toasts for indexer api tests

* fix: failing red tests
2023-04-15 23:34:27 +02:00
ze0s
fb9dcc23a0
feat(indexers): add iAnon (#838)
* feat(indexers): add iAnon

* fix: regex captures
2023-04-15 17:50:10 +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
paperclip-go-brr
8487475e73
feat(indexers): add Tokyo Toshokan (#818)
* Add toktotoshokan.yaml definition

* Update tokyotoshokan.yaml
2023-04-13 18:09:24 +02:00
soup
81092cfe16
fix(indexers): OPS parsing (#832)
* fix/OPS parsing

* replaced special character with .
escaped / in case we ever switch regex flavour
altered a test line to account for empty releaseTags

---------

Co-authored-by: martylukyy <35452459+martylukyy@users.noreply.github.com>
2023-04-13 18:05:35 +02:00
Gustavo Machado
ef75b67b25
feat(filters): add match logic for tags and except tags (#810)
* feat(filters): add fields for tag and except tag matching logic

* refactor(filters): rearrange and simplify logic for containsAllMatch

---------

Co-authored-by: Gustavo Machado <me@gstv.dev>
2023-04-10 16:11:44 +02:00
soup
2534186b5f
feat(macros): add TorrentID and GroupID (#819)
* add TorrentID to list of supported macros

* added GroupID
2023-04-10 15:04:52 +02:00
martylukyy
169863dded
feat(logs): webhook sanitization (#809)
* feat: sanitize passwords from json payload

* add webhook sanitization

* update comments

Co-authored-by: soup <soup@r4tio.dev>

* sanitize RED apikeys from webhook payloads

* added an optional whitespace token between field name and data

---------

Co-authored-by: soup <soup@r4tio.dev>
2023-04-10 14:32:19 +02:00
KaiserBh
1cdbbe5bf3
refactor(web): migrate create-react-app to vite (#823)
* fix(build): dockerignore add exclusions

* fix: baseurl and build

* chore: removed react-app-env instead use vite

* chore: updated server and embedding static files.

* commented because conflict I believe, and not needed.

* docs: updated readme

* chore: updated json and added vite

* chore: import fix

* chore: updated yarn.lock and package json

* build: add empty dist to compile backend

* fix: use / as default baseurl

---------

Co-authored-by: KaiserBh <kaiserbh@proton.me>
Co-authored-by: ze0s <ze0s@riseup.net>
2023-04-10 14:28:24 +02:00
ze0s
33897b04a1
Revert #787 (#821)
Revert "refactor(web): migrate create-react-app to vite (#787)"

This reverts commit edae1bbf4b.
2023-04-07 19:08:42 +02:00
KaiserBh
edae1bbf4b
refactor(web): migrate create-react-app to vite (#787)
* removed react-app type instead use vite.

* removed index.html from public since vite uses it from root: read more: https://vitejs.dev/guide/#index-html-and-project-root

* yarn.lock update.

* added vite config file. With commented rollUp option if we want the build to be called build but using default stuff for now.

* updated tsconfig to use vite and include vite.config.ts

* changed package json build commands to use vite.

* for some reason there is an error in vite config when we put project as tsconfig.json.

* build.go updated to use the new dist folder.

* refactored as well updated to use dist and web.AssetHandler again.

* Fixed issue forcing the frontend to be reloaded for all routes to work if logged in fresh without reloading it will always go back to dashboard.

* updated it to use the new function; need to fix the Index for baseUrl I believe, if enabled it works except logs route will crash due to cors.

* refactored and default port to 7474, don't think we need the rollUpOptions.

* added tmp/ to ignore .

* init air.toml, for dev hot reloading both app and backend. https://github.com/cosmtrek/air run it using air but make sure it's in PATH

* updated the start command to build and watch for changes, works great with air.

* revert

* added proxy for vite config. To be used for dev.

* refactor: I think this should fix it, when logs route etc getting accessed usually it throws error but by getting rid of the catch-all it should work as intended, since web.RegisterHandler(r) will catch the unmatched ones.

* fix: baseurl and build

* fix(build): docker ignore !web/dist

* fix(build): dockerignore add exclusions

* docs: update README.md

* build: update postcss config

---------

Co-authored-by: KaiserBh <kaiserbh@proton.me>
Co-authored-by: ze0s <ze0s@riseup.net>
2023-04-07 16:04:10 +02:00
martylukyy
4cf251e2cf
feat(indexers): add TheDarkCommunity (#808)
* add TheDarkCommunity indexer

* add RSS as supported protocol
2023-04-02 22:36:42 +02:00