Commit graph

49 commits

Author SHA1 Message Date
soup
0391629862
chore(license): update copyright year in headers (#1929)
* chore: update copyright year in license headers

* Revert "chore: update copyright year in license headers"

This reverts commit 3e58129c431b9a491089ce36b908f9bb6ba38ed3.

* chore: update copyright year in license headers

* fix: sort go imports

* fix: add missing license headers
2025-01-06 22:23:19 +01:00
ze0s
80426e4773
fix(irc): revert lazy announcer check (#1707) 2024-09-05 19:36:40 +02:00
soup
f48b103a52
feat(irc): allow lazy announcer nicks (#1322)
* feat(irc): allow lazy announcer nicks

* fix web

* fix: indents

* fix: add missing entries

* feat: extend announcer validation with digit suffix support

this reverts the previous commits

* feat(irc): allow lazy announcer match

* fix(irc): imports

---------

Co-authored-by: ze0s <43699394+zze0s@users.noreply.github.com>
2024-09-02 13:00:30 +02:00
ze0s
bc0f4cc055
feat: add support for proxies to use with IRC and Indexers (#1421)
* feat: add support for proxies

* fix(http): release handler

* fix(migrations): define proxy early

* fix(migrations): pg proxy

* fix(proxy): list update delete

* fix(proxy): remove log and imports

* feat(irc): use proxy

* feat(irc): tests

* fix(web): update imports for ProxyForms.tsx

* fix(database): migration

* feat(proxy): test

* feat(proxy): validate proxy type

* feat(proxy): validate and test

* feat(proxy): improve validate and test

* feat(proxy): fix db schema

* feat(proxy): add db tests

* feat(proxy): handle http errors

* fix(http): imports

* feat(proxy): use proxy for indexer downloads

* feat(proxy): indexerforms select proxy

* feat(proxy): handle torrent download

* feat(proxy): skip if disabled

* feat(proxy): imports

* feat(proxy): implement in Feeds

* feat(proxy): update helper text indexer proxy

* feat(proxy): add internal cache
2024-09-02 11:10:45 +02:00
ze0s
be05ffba73
feat(irc): manually re-process announces (#1419)
* fix(releases): add manual processing

* feat(irc): add re-process button to channel msg

* feat(irc): add missing client method

* feat(web): change reprocess icon placement

---------

Co-authored-by: martylukyy <35452459+martylukyy@users.noreply.github.com>
2024-03-19 18:23:43 +01:00
ze0s
6b37c13da7
fix(irc): allow insecure TLS cipher suites (#1444) 2024-02-28 18:02:38 +01:00
ze0s
8156c8d66e
chore(deps): upgrade to Go v1.22 and deps (#1423)
* chore(deps): upgrade go to v1.22 and deps

* chore(deps): upgrade workflow go to v1.22
2024-02-22 14:33:50 +01:00
Kyle Henfrey
1f31c9b063
feat(irc): disable auto chan part when using bouncer (#1396)
* don't part if using bouncer

* refactor(irc): move bouncer part logic

* refactor(irc): move bouncer part channel logic

---------

Co-authored-by: ze0s <43699394+zze0s@users.noreply.github.com>
2024-02-13 13:33:03 +01:00
ze0s
45b522abf8
chore: update license header year (#1332)
* chore: update license header year

* chore: update license header year tsx files

* chore: update license header
2024-01-01 16:21:02 +01:00
Shivaram Lingamneni
b2c32a421e
fix(irc): improve IRC handler management (#1269)
* fix some races in IRC handler management

* remove go 1.21 and slices package

* chore: update deps

* fix: use exp/slices pkg and client callbacks

* fix(irc): remove deadlock mutex from authenticate

* restore locking in authenticate()

* fix(irc): data races

* fix(irc): do not allow restart of disabled network

* fix(irc): disable restart btn if net disabled

---------

Co-authored-by: ze0s <43699394+zze0s@users.noreply.github.com>
2023-12-12 20:29:43 +01:00
Kuredant
f89a25d645
feat(irc): support optional bot mode (#1246)
* feat(irc): set bot mode when the server supports it

See https://ircv3.net/specs/extensions/bot-mode.

* feat(irc): add a config option per network for bot mode
2023-11-22 19:57:16 +01:00
Frederick Robinson
7cb2aaa8a5
feat(irc): log connection errors (#1239)
* add logline for failed connection

* modify logging, change debug -> error

* don't surface "client called Quit" errors

* irc: don't retry Connect() while stopped

* fix issue number

* don't unlock until state-change complete

* Revert "don't unlock until state-change complete"

This reverts commit bf107db99bc2758b729a5995c63067f8fdf16aec.

---------

Co-authored-by: Shivaram Lingamneni <slingamn@cs.stanford.edu>
2023-11-18 15:44:46 +01:00
ze0s
cbf668e87c
feat(logs): show full log event (#1096)
* feat(logs): show all extra fields in UI

* feat(logs): init log level as debug then trace
2023-09-10 12:28:10 +02:00
ze0s
1a48316233
fix(irc): merge with existing network (#1085)
* fix(irc): merge with existing network

* fix(irc): log format wrong type
2023-09-07 17:48:07 +02:00
ze0s
ecc84f5f2d
fix(irc): view channel history (#987)
fix(irc): irc monitor channels

* base64 sse stream key
2023-06-15 23:17:26 +02:00
ze0s
2677c16ff8
feat(irc): add bouncer/znc support (#951)
* feat(irc): add initial bouncer support

* feat(irc): add bouncer fields to irc update form

* fix: make fields optional

* feat(db): add migrations
2023-06-14 21:06:28 +02:00
Kyle Sanderson
5a61b406b0
fix(irc): log only validated messages (#954)
* fix(irc): flip spam to trace

* Update handler.go
2023-05-24 13:00:35 +02:00
ze0s
ccabe96bdf
feat(irc): view announces per channel (#948)
* feat(irc): add sse to handler

* feat(irc): view and send irc messages per network

* refactor(irc): use id as handlerkey

* refactor(irc): use id as handlerkey

* feat(web): add irc context

* refactor: create sse stream per network channel

* fix(irc): remove non-working wildcard callback handler

* feat: use fork of sse

* chore(deps): update ergo/irc-go to v0.3.0

* fix: clean irc msg before sse publish

* feat: add view channel button

* feat: styling improvements

* feat: show time
2023-05-21 15:51:40 +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
4bf023d030
feat(irc): support optional SASL and NickServ auth (#511)
* feat(irc): support SASL and NickServ auth

* feat(irc): add missing fields

* feat(irc): support SASL and NickServ auth

* feat(irc): add missing fields

* feat(irc): add validation

* feat(indexers): unify and set required values

* feat(irc): add postgres migrations

* feat(irc): use nick as handlerkey

* feat(irc): use account for nickserv

* fix(irc): pg db migration
2022-10-27 22:25:58 +02:00
Kyle Sanderson
7deac6a781
fix(irc): rewrite handler pipeline (#399)
* fix(irc): rewrite handler pipeline

This might be overkill but the pipeline has been made event driven. I've tested on a couple networks, and bouncing nicks / connections brings it back every time. creating the a different branch from https://github.com/autobrr/autobrr/pull/398 because it's pretty intrusive (and I didn't apply the GUI changes).

* fix(irc): couple adjustments

* fix(irc): deadlocks

* fix: add missing dependency

* fix(irc): remove more locks from connect cmds

* feat(irc): conditional monitoring message

* feat(irc): show unhealthy network in ui

* feat(irc): improve logs and comments
2022-08-12 15:32:02 +02:00
Ludvig Lundgren
01888aeb1c
feat(irc): join valid channels from invite (#354) 2022-07-16 01:23:28 +02:00
Ludvig Lundgren
aa94962dfd
fix(irc): on connect join logic error (#353) 2022-07-12 16:43:13 +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
Shivaram Lingamneni
95471a4cf7
feat(irc): attempt SASL login with fallback to nickserv (#333)
* IRC: attempt SASL, ignore SASL failure

* update Ergo integration testing config

* refactor(irc): rework auth and join based on events
2022-07-03 22:49:34 +02:00
Ludvig Lundgren
f63ace662a
feat(irc): improve reconnect and add notifications (#315)
* refactor(irc): nickserv and methods

* feat(notifications): add new events and refactor send

* feat(irc): handle disconnect reconnect and connect

* feat(irc): update config for ergo local irc server

* feat(irc): retry initial connect

* feat(irc): show nickserv errors
2022-06-29 16:50:38 +02:00
Ludvig Lundgren
b1d7a1f555
fix(logging): timestamp and update pkg (#309) 2022-06-15 23:00:33 +02:00
Ludvig Lundgren
cf326a6c10
refactor(irc): cleanup logging (#277) 2022-05-20 09:46:02 +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
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
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
46cffc4453
feat(irc): allow other channels for idle (#195) 2022-03-22 18:36:10 +01:00
Ludvig Lundgren
7455b2973d
fix(irc): irc join cmd channel with password (#193) 2022-03-22 00:33:59 +01:00
Ludvig Lundgren
0b0a48e306
fix(irc): increase sleep pre join (#192) 2022-03-22 00:00:21 +01:00
Ludvig Lundgren
4e4e498cc3
fix(irc): run nickserv identify with password only (#191) 2022-03-21 23:29:27 +01:00
Ludvig Lundgren
3759964ea1
feat: irc reconnect (#148)
* chore: add and update deps

* feat(irc): change lib add reconnect

* feat: remove irc caps

* feat: add sleep fix irc stop restart
2022-02-26 14:12:21 +01:00
Ludvig Lundgren
2daeedbdc7
Feature: Support multi user per irc network (#78)
* feat: delete irc network in transaction

* feat: use compound key for irc handlers

* chore: update deps

* refactor: start network

* refactor: init irc handler

* indexers: update network name
2022-01-13 21:26:23 +01:00
Ludvig Lundgren
d8c37dde2f
fix: irc network distinguish inactive and error (#76) 2022-01-10 22:05:27 +01:00
Ludvig Lundgren
27f902041b
fix: make valid channels check lowercase (#75) 2022-01-10 21:18:11 +01:00
Ludvig Lundgren
140fc97398 feat: show irc channel status 2022-01-09 02:41:19 +01:00
Ludvig Lundgren
f103dff221 feat: show irc network status in settings list 2022-01-08 21:18:38 +01:00
Ludvig Lundgren
bc064e15e2
fix: announce parse queue (#50) 2021-12-25 17:44:50 +01:00
Ludvig Lundgren
c4d580eb03
Feature: Support multiline irc parsing (#39)
* feat: initial multiline support

* refactor: handle multiple indexers per network

* wip: setup indexer

* build: add docker compose for testing

* chore: remove temp mock indexers

* chore: update deps

* refactor: update and store network handler

* build: update test compose

* chore: minor cleanup
2021-12-21 21:15:42 +01:00
Ludvig Lundgren
09eb0b1716
Feature: Tail live logs (#27)
* chore: add new yarn.lock

* chore: add pkgs

* feat: push events via server-sent-events

* feat(web): tail live logs

* fix: update irc network

* fix: set baseurl

* fix: headers
2021-09-07 22:23:27 +02:00
Ludvig Lundgren
00f956870b
feat: improve logging (#24) 2021-08-31 00:07:18 +02:00
Ludvig Lundgren
d4aa2027c0
fix: date time and improve erorrs (#22) 2021-08-30 22:11:59 +02:00
Ludvig Lundgren
4d40d41628
Refactor irc client (#19)
* refactor: update http handlers

* feat: add trace log level

* refactir: irc handler

* refactor(definitions): add irc settings and invite cmd:

* feat: add dft values to inputs

* refactor: indexer irc forms

* refactor(definitions): fix nickserv.password var:

* feat: pre fill indexer name field

* refactor: handle stopping and updates
2021-08-29 23:23:02 +02:00
Ludvig Lundgren
a838d994a6 feat: add backend 2021-08-11 15:26:17 +02:00