* factor out test helpers
* refactor, add tests for animebytes
* revert test refactor
* better name
* change format, migrate some examples
* migrated remaining test cases
* add comment about `Test` vs `Tests`
* refactor
* reorder expectations to match vars
* generate
* turn on strict unmarshalling, remove old `Test` from schema
* start modifying actual definitions
* done with the As
* Bs
* C, D
* E, F
* G, H, I, ... L
* M, N
* O, P
* R
* bonus error. without this, pattern/vars disagreement can panic.
* S
* T, U
* X.. Now we know our ABCs next time won't you sing with meeeee
* fix another test
* another driveby change
* be less strict parsing custom definitions
* fix(definitions): load custom definitions
---------
Co-authored-by: ze0s <ze0s@riseup.net>
* Fixed regex to still match the announce if there are no flags in it.
* customize freeleech parsing from regex
* Fix match when there is no year given (instead of 0) for a release.
Made capture group 4 lazy/optional/ungreedy.
Created a non-capturing group for the `:: NSFW! ::` section to exclude the seperators and the tag itself from the tags var.
I think we should exclude a possible `:: NSFW! ::` section after the tags section from matching for 2 reasons:
1. There is already an "adult" tag. Use it.
2. The `:: NSFW! ::` may get truncated if the announce line is too long. Matching the tag against `adult` is more consistent.
Fix match when `:: NSFW! ::` section gets truncated because the announce line is too long.
Tested with a sample size of 554 announces of which 554 resulted in a match.
* fix(indexers): ggn change flags to releaseTags and freeleech
* 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
* chore: add package
* feat: get size by api for ptp and btn
* feat: download and parse torrent if not api
* feat: bypass tls check and load meta from file
* fix: no invite command needed for btn
* feat: add ggn api
* feat: imrpove logging
* feat: build request url
* feat: improve err logging