WebStreamr
|
7d0544a590
|
chore(handler): add height detection to Soaper
|
2025-06-08 18:21:52 +00:00 |
|
webstreamr
|
2d9f602256
|
chore(release): release v0.25.1 (#120)
|
2025-06-08 17:12:21 +02:00 |
|
WebStreamr
|
48209ac876
|
chore: introduce config helper, enable English by default
|
2025-06-08 14:09:10 +00:00 |
|
WebStreamr
|
968b7d4bc0
|
chore(handler): add year to soaper result movie title
|
2025-06-08 14:01:43 +00:00 |
|
WebStreamr
|
fbae3924e5
|
refactor: simplify id usage and imdb <-> tmdb transformations
|
2025-06-08 13:50:53 +00:00 |
|
WebStreamr
|
8724e04860
|
refactor: move ids into dedicated folder
|
2025-06-08 13:26:58 +00:00 |
|
WebStreamr
|
374896caca
|
refactor: introduce ImdbId and TmdbId
|
2025-06-08 13:24:31 +00:00 |
|
WebStreamr
|
62f18ece85
|
refactor: strictly type ContentType
|
2025-06-08 07:54:17 +00:00 |
|
webstreamr
|
82c75b0654
|
chore(release): release v0.25.0 (#119)
|
2025-06-07 19:25:45 +00:00 |
|
WebStreamr
|
717c2afdc4
|
feat(handler): implement EN Soaper source
|
2025-06-07 19:24:50 +00:00 |
|
WebStreamr
|
5bda4c88f0
|
test: rename confusing tests
|
2025-06-07 19:10:06 +00:00 |
|
WebStreamr
|
a56aea56a8
|
refactor: add custom helper for flags instead of package
|
2025-06-07 18:59:23 +00:00 |
|
webstreamr
|
f08670bb21
|
chore(release): release v0.24.1 (#118)
|
2025-06-06 12:54:21 +00:00 |
|
WebStreamr
|
ab39636196
|
chore: warm up cache only with trending movies and tv shows
|
2025-06-06 12:53:07 +00:00 |
|
WebStreamr
|
99434aa49a
|
chore: only warm up cache in prod
|
2025-06-06 12:16:29 +00:00 |
|
webstreamr
|
802ec4275d
|
chore(release): release v0.24.0 (#117)
|
2025-06-06 14:12:23 +02:00 |
|
WebStreamr
|
9ba4e7374c
|
feat: implement hourly movie cache warmup
|
2025-06-06 12:08:53 +00:00 |
|
WebStreamr
|
01218c77a6
|
chore(handler): support TMDB ID in Frembed
|
2025-06-06 11:21:54 +00:00 |
|
WebStreamr
|
355663f036
|
chore(tmdb): add parseTmdbId
|
2025-06-06 11:12:03 +00:00 |
|
WebStreamr
|
860a6ae18c
|
chore(imdb): stricter parsing checks
|
2025-06-06 11:08:39 +00:00 |
|
WebStreamr
|
a0e83f287d
|
chore(tmdb): add getImdbIdFromTmdbId and cache both ID transformations
|
2025-06-06 08:03:16 +00:00 |
|
WebStreamr
|
876698825f
|
chore: add statusText to HttpError and show in result as well
|
2025-06-06 06:50:31 +00:00 |
|
webstreamr
|
db67a91413
|
chore(release): release v0.23.5 (#116)
|
2025-06-05 22:05:39 +02:00 |
|
WebStreamr
|
8e57400c58
|
fix: always sort external URLs down
|
2025-06-05 20:02:25 +00:00 |
|
WebStreamr
|
04ee59e9d3
|
fix(handler): skip invalid CSV URLs
|
2025-06-05 19:56:45 +00:00 |
|
WebStreamr
|
d8f0c4602c
|
chore: introduce HttpError and show status in result
|
2025-06-05 19:52:49 +00:00 |
|
webstreamr
|
119e338292
|
chore(release): release v0.23.4 (#113)
|
2025-06-05 17:21:35 +02:00 |
|
WebStreamr
|
be3464369b
|
chore(fetcher): simplify queuing and allow parallel requests
instead of only one per host we allow 5, which is more realistic
|
2025-06-05 15:19:30 +00:00 |
|
webstreamr
|
ad98dc8661
|
chore(release): release v0.23.3 (#112)
|
2025-06-05 12:31:36 +02:00 |
|
WebStreamr
|
65d2d0ac83
|
chore(fetcher): enable keepalive
|
2025-06-05 10:30:30 +00:00 |
|
WebStreamr
|
63a53a18cc
|
refactor(fetcher): introduce CustomRequestInit
|
2025-06-05 10:30:30 +00:00 |
|
WebStreamr
|
092ee4bfc2
|
refactor(fetcher): add full FlareSolverrResult type
|
2025-06-05 10:30:30 +00:00 |
|
webstreamr
|
523bbc0f41
|
fix(fetcher): use expires FlareSolverr cookie prop (#111)
|
2025-06-05 10:30:26 +00:00 |
|
webstreamr
|
d0802fea50
|
chore(release): release v0.23.2 (#110)
|
2025-06-04 18:38:45 +00:00 |
|
WebStreamr
|
efb0f96be2
|
chore(fetcher): use well-working node user agent by default again
|
2025-06-04 18:37:51 +00:00 |
|
WebStreamr
|
aa4c672594
|
chore(fetcher): persist and use FlareSolverr cookie and user agent
doesn't seem to work, but this is best practice anyway..
|
2025-06-04 18:29:02 +00:00 |
|
WebStreamr
|
0d3a5b8919
|
chore(fetcher): use queue limit of 10 again :)
queuing too long results in a bad experience. and often there are other
non-blocked sources too, so people can choose those. or self-host.
|
2025-06-04 16:18:03 +00:00 |
|
webstreamr
|
a9ebe9946a
|
chore(release): release v0.23.1 (#107)
|
2025-06-04 15:24:36 +00:00 |
|
WebStreamr
|
7387aef764
|
chore(fetcher): use FlareSolverr also for other 403 Cloudflare responses
|
2025-06-04 15:23:15 +00:00 |
|
WebStreamr
|
e6aa95f875
|
chore(fetcher): increase queue limit to 30
|
2025-06-04 15:22:59 +00:00 |
|
WebStreamr
|
2c9faebcdc
|
fix(fetcher): improve Flaresolverr fetching
- use queued fetching to not mix sessions
- log issue responses
|
2025-06-04 14:59:12 +00:00 |
|
webstreamr
|
7c45c78788
|
chore(release): release v0.23.0 (#105)
|
2025-06-04 16:20:24 +02:00 |
|
WebStreamr
|
af65ed0094
|
feat(fetcher): add FlareSolverr support
|
2025-06-04 14:18:50 +00:00 |
|
WebStreamr
|
1b8f75f00e
|
fix(extractor): do not mutate URLs to avoid cache misses
|
2025-06-04 13:23:54 +00:00 |
|
WebStreamr
|
fef59dd03b
|
fix: never cache result errors
|
2025-06-04 12:05:59 +00:00 |
|
WebStreamr
|
7ec7219ed4
|
chore: do not log headers for known blocking reasons
|
2025-06-04 12:05:09 +00:00 |
|
webstreamr
|
a156e98831
|
chore(release): release v0.22.10 (#104)
|
2025-06-04 12:59:20 +02:00 |
|
WebStreamr
|
422f7d014c
|
chore(fetcher): hard-code user-agent again for debugging purposes
|
2025-06-04 10:54:16 +00:00 |
|
WebStreamr
|
77fc20cfff
|
refactor: extract env access into helpers
|
2025-06-04 10:29:50 +00:00 |
|
webstreamr
|
64823685cc
|
chore(release): release v0.22.9 (#103)
|
2025-06-04 10:07:13 +00:00 |
|
WebStreamr
|
b69c9cde03
|
chore: cache successful results as long as we safely can
|
2025-06-04 10:06:24 +00:00 |
|
WebStreamr
|
d78dca3345
|
chore: log response headers for blocks
|
2025-06-04 08:45:08 +00:00 |
|
webstreamr
|
c5cc955d91
|
chore(release): release v0.22.8 (#99)
|
2025-06-04 00:47:28 +02:00 |
|
WebStreamr
|
f0817a3dd6
|
chore: implement queued fetching
|
2025-06-03 22:44:57 +00:00 |
|
WebStreamr
|
ef2c45e2cb
|
chore: add more error infos to results
|
2025-06-03 21:56:19 +00:00 |
|
webstreamr
|
ed501a7ee9
|
chore(release): release v0.22.7 (#96)
|
2025-06-03 17:04:57 +02:00 |
|
WebStreamr
|
9d17f5340a
|
chore: catch handler blocked errors and report the and report themm
|
2025-06-03 15:02:56 +00:00 |
|
WebStreamr
|
f6967da5cc
|
chore: try to log error causes
|
2025-06-03 14:54:05 +00:00 |
|
WebStreamr
|
0b9cf21fae
|
fix(handler): use new frembed domain (again)
|
2025-06-03 14:21:18 +00:00 |
|
WebStreamr
|
ae6fdfe726
|
chore: add language name to config in manifest as well
|
2025-06-02 15:45:16 +00:00 |
|
webstreamr
|
9291a377d3
|
chore(release): release v0.22.6 (#95)
|
2025-06-02 15:33:11 +00:00 |
|
WebStreamr
|
e4dd16e9d1
|
chore: improve results format and refactor name/title generation
|
2025-06-02 15:31:15 +00:00 |
|
webstreamr
|
120fb2896f
|
chore(release): release v0.22.5 (#94)
|
2025-06-02 11:43:57 +02:00 |
|
WebStreamr
|
e86b5c3454
|
fix(handler): use new frembed domain
|
2025-06-02 09:42:26 +00:00 |
|
WebStreamr
|
12d91ba0b4
|
test: fix mocked Fetcher real calls by using same headers
|
2025-06-02 09:42:26 +00:00 |
|
webstreamr
|
d271b2c337
|
chore(release): release v0.22.4 (#91)
|
2025-06-01 19:38:06 +00:00 |
|
WebStreamr
|
cd8ff60508
|
fix(handler): disable Eurostreaming as long as it doesn't work
|
2025-06-01 19:37:03 +00:00 |
|
WebStreamr
|
c3a2f9fdc6
|
fix(fetcher): use "node" as user agent explicitly
no idea why, but this avoids challenges so far..
|
2025-06-01 19:31:25 +00:00 |
|
WebStreamr
|
2eb09fc65a
|
chore: generalize forbidden/blocked handling
|
2025-06-01 19:31:11 +00:00 |
|
webstreamr
|
f3cbc92286
|
chore(release): release v0.22.3 (#88)
|
2025-06-01 13:42:44 +00:00 |
|
WebStreamr
|
424ed78b93
|
chore(fetcher): hardcode user-agent for now to avoid using "node"
|
2025-06-01 13:40:59 +00:00 |
|
webstreamr
|
ba9f33230f
|
chore(release): release v0.22.2 (#87)
|
2025-06-01 13:21:25 +00:00 |
|
WebStreamr
|
717019e04e
|
chore(fetcher): add response header info to non-expected errors
|
2025-06-01 13:19:38 +00:00 |
|
WebStreamr
|
ca981220c9
|
chore(fetcher): remove Origin header
more is not always better I guess :)
not breaking anything, but that header is not used for normal HTTP GET
requests
|
2025-06-01 13:08:52 +00:00 |
|
webstreamr
|
a85a483732
|
chore(release): release v0.22.1 (#86)
|
2025-05-31 21:15:58 +00:00 |
|
WebStreamr
|
fbc1aa994c
|
fix: switch back to fetch and do not generate user agents
seems to be causing less cloudflare challenges
|
2025-05-31 21:13:52 +00:00 |
|
webstreamr
|
0f19b4b7a7
|
chore(release): release v0.22.0 (#80)
|
2025-05-29 21:25:43 +02:00 |
|
WebStreamr
|
799ca975ac
|
feat: make external URL exclusion configurable
|
2025-05-29 19:17:21 +00:00 |
|
WebStreamr
|
5bfe2f800b
|
chore(fetcher): reduce timeout to 5s
|
2025-05-29 18:32:06 +00:00 |
|
WebStreamr
|
07ddaab7fb
|
chore(fetcher): set more headers to mimick browser requests
|
2025-05-29 17:55:20 +00:00 |
|
WebStreamr
|
f2a7da21e0
|
test: remove duplicated Fetcher test parts
|
2025-05-29 17:43:51 +00:00 |
|
WebStreamr
|
862d3bb5f2
|
refactor(handler): remove not needed 404 special handling
|
2025-05-29 17:40:48 +00:00 |
|
WebStreamr
|
02b73b41d7
|
chore(fetcher): use more realistic referer/origin header values
|
2025-05-29 17:36:43 +00:00 |
|
WebStreamr
|
0638ce0a8c
|
fix: detect and report Cloudflare challenge blocks
|
2025-05-29 17:17:17 +00:00 |
|
webstreamr
|
fbc35550b9
|
chore(release): release v0.21.0 (#76)
|
2025-05-25 20:48:23 +02:00 |
|
WebStreamr
|
d4e402e5c9
|
feat: add title to meta, restructure result name
|
2025-05-25 18:46:55 +00:00 |
|
WebStreamr
|
f27fc6c38a
|
refactor: introduce type for CountryCode
|
2025-05-25 19:32:16 +02:00 |
|
WebStreamr
|
979dddd20c
|
refactor: move bytes, height and countryCode into meta object
and pass that to the extractors instead. this is a preparation to
support more meta like e.g. title
|
2025-05-25 19:25:39 +02:00 |
|
WebStreamr
|
faa6eb6ed7
|
test: update fetch fixtures only when requested
avoids automagic http requests in tests
|
2025-05-25 19:12:36 +02:00 |
|
WebStreamr
|
f3beb72f17
|
bug(extractor): handle not found case properly for DoodStream
|
2025-05-25 19:04:12 +02:00 |
|
WebStreamr
|
6b5c9a4ce7
|
feat(extractor): cache not found results too
|
2025-05-25 18:58:00 +02:00 |
|
webstreamr
|
9b0d416393
|
chore(release): release v0.20.1 (#74)
|
2025-05-23 13:47:32 +02:00 |
|
WebStreamr
|
5c51abbd46
|
chore: log IP in stream request
|
2025-05-23 10:53:09 +00:00 |
|
WebStreamr
|
b313c4eb8d
|
chore(fetcher): set Origin header and add back proxy headers
|
2025-05-23 10:52:49 +00:00 |
|
WebStreamr
|
8e791bbe24
|
chore: better handle not found streams/links
|
2025-05-23 10:40:59 +00:00 |
|
WebStreamr
|
1e9ebd5905
|
test: do not reset but only clear mocks
|
2025-05-23 10:37:13 +00:00 |
|
WebStreamr
|
f4a0b03246
|
fix(handler): do not ignore main link in Eurostreaming
|
2025-05-23 09:20:20 +00:00 |
|
WebStreamr
|
1447adad1b
|
chore: reduce axios retries to 1 again, avoid risky retries
|
2025-05-23 09:08:20 +00:00 |
|
WebStreamr
|
0a99f1e501
|
chore(extractor): use HEAD instead of GET to check external URLs
|
2025-05-22 16:36:28 +00:00 |
|
webstreamr
|
7be71c965f
|
chore(release): release v0.20.0 (#71)
|
2025-05-21 22:41:51 +02:00 |
|