Commit Graph

1932 Commits

Author SHA1 Message Date
IRHM d32a1ecb39 format files (new prettier version changes some formatting)
I'm upset that the textarea closing tag is being put on the same line instead of new lined, but I couldn't figure out what changed, so I'll cry in silence and hope it gets fixed one day.
2026-07-30 02:42:35 +00:00
IRHM 347113be68 ESLint: Migrate to flat config 2026-07-30 02:42:35 +00:00
IRHM 68150b38ec fix lint script - only look in src folder 2026-07-30 02:42:35 +00:00
IRHM dc9e7e9309 test-pr-server: Correct go-version-file path? 2026-07-30 02:42:35 +00:00
IRHM 6457146214 Workflows: test-pr-server: Set go-version-file for setup-go action. 2026-07-30 02:42:35 +00:00
IRHM baba8c8c60 Dockerfile: Upgrade node steps to use version 24. 2026-07-30 02:42:35 +00:00
IRHM 31ddcacf47 Workflows: Upgrade action versions and use node 24. 2026-07-30 02:42:35 +00:00
IRHM be94f1d2b7 Replace axios with native Fetch API & some maintenance 2026-07-30 02:42:35 +00:00
IRHM d7449642ba v4.1.1 changelog 2026-07-26 03:26:00 +01:00
IRHM dbc8b74893 v4.1.1 v4.1.1 2026-07-26 02:47:48 +01:00
IRHM 9d5e489675 plex: Stop after 10 redirects
Since the default CheckRedirect has been replaced with ours, we won't get the default protection of erroring after 10 redirects, so i've copied that back in from the std implementation
2026-07-26 01:27:30 +00:00
tonghuaroot 4e6e71687b fix(plex): strip X-Plex-Token on cross-host redirect
The Plex integration used bare http.Client values with no CheckRedirect
policy, so they followed redirects automatically. net/http strips the
standard sensitive headers on a cross-host redirect but not custom-named
headers, so the Plex token carried in X-Plex-Token was forwarded verbatim
to any host the configured PLEX_HOST redirected to, disclosing the
credential.

Route all Plex outbound calls through a shared client whose CheckRedirect
policy deletes X-Plex-Token when the redirect target host differs from the
original request host. Includes a regression test.

Signed-off-by: tonghuaroot <tonghuaroot@gmail.com>
2026-07-26 01:27:30 +00:00
IRHM 8c8d604bc6 v4.1.1-dev1 2026-07-26 01:34:45 +01:00
IRHM 39b82335eb Plex: Add Accept: "application/json" header so plex returns json again
I think the plex api default used to be JSON, which is why it worked, but I guess they changed it to XML. Adding this header asks for JSON response again.
2026-07-26 00:33:23 +00:00
IRHM 217be719e4 Revert "README: Open demo/track links in new tab"
This reverts commit 0da32164a3.
2026-07-21 09:38:20 +01:00
IRHM 0da32164a3 README: Open demo/track links in new tab 2026-07-21 09:36:49 +01:00
IRHM db72d05d79 README: Add instructions to demo instance login
I'm sure the extra clarity may be appreciated
2026-07-21 09:31:49 +01:00
IRHM 88a7542064 update readme and contributing text 2026-07-21 09:20:33 +01:00
IRHM 19c773976d CHANGELOG: v4.1.0 2026-07-19 14:40:44 +01:00
IRHM a16c769273 v4.1.0 v4.1.0 2026-07-19 14:15:42 +01:00
IRHM f022dc702c v4.1.0-dev1 2026-07-18 13:05:20 +01:00
IRHM c2f72dbd9c Remove dependabot.yml. 2026-07-18 12:58:30 +01:00
IRHM d777630e84 CHANGELOG: Add credit to SeasonsListEpisode change 2026-07-18 12:51:03 +01:00
IRHM f5bfa29877 SeasonsListEpisode: Show spoilers when status is set to FINISHED and allow changing status while spoilers are hidden
Based on PR by goestav: https://github.com/sbondCo/Watcharr/pull/1055

Different in these ways:
- Using $derived here for `ws` variable
- Using z-index to allow status button to be clicked while spoilers are hidden
- Don't hide spoilers again (if they are shown) when episode is deleted

Also refactored `handleStatusClick()` a bit by removing the redundant `ws` lookup (it can now just use `we` set at the top of the component).

Co-Authored-By: Goestav <27970303+goestav@users.noreply.github.com>
2026-07-18 11:48:52 +00:00
IRHM 9b64932af1 watched_refine: refineFilterStatus: Remove parenthesis around WHERE query.
It looks like GORM already adds the parenthesis around this for us in the final query, so ours was unnecessary
2026-07-18 09:50:53 +00:00
IRHM bf0594c1e8 Fix Include Previously Watched regression and update profile stats to not use the setting
Index also added to

Fixes https://github.com/sbondCo/Watcharr/issues/1027
2026-07-18 09:50:53 +00:00
IRHM fee82df59d CHANGELOG: v4.0.1 2026-07-16 10:29:15 +01:00
IRHM 61382de4d2 v4.0.1 v4.0.1 2026-07-16 10:07:58 +01:00
IRHM e65ba9d1d9 v4.0.1-dev1 2026-07-16 09:40:47 +01:00
IRHM 6654d85448 testing workflow - no longer testing workflow cuz it works now yippee 2026-07-16 08:36:22 +00:00
IRHM eabdb47cfa testing workflow - gofmt 2026-07-16 08:36:22 +00:00
IRHM 643ca0fd38 testing workflow - go test 2026-07-16 08:36:22 +00:00
IRHM a08b19675a test-pr-server.yml: Set working directory to server to fix commands not running against our go code 2026-07-16 08:36:22 +00:00
IRHM 38fba0ac10 Watched: Also log the error on the "failed to restore existing watched entry" log. 2026-07-16 08:36:22 +00:00
IRHM f23552c170 Use an svg for the favicon and change its fill to white for dark themed browsers. 2026-07-16 08:36:22 +00:00
IRHM 448fdd9df3 SpinnerTiny: Fix circle animation appearing to skip 2026-07-16 08:36:22 +00:00
IRHM ca428327e2 Move notifications to its own component. 2026-07-16 08:36:22 +00:00
IRHM f7cca74a41 SpinnerTiny: Use svg instead of the css border trick to create the spinner fixing it looking more like a horseshoe than a circle on different browser scales (also added animation on the svg circle).
also: Fix color being wrong on dark theme.

svg fix inspired by mui :)
2026-07-16 08:36:22 +00:00
IRHM 86286b967f workflows/test-pr-server: Add test step 2026-07-16 08:36:22 +00:00
IRHM 8243838bfb Update CHANGELOG.md 2026-07-11 03:55:10 +01:00
IRHM 5bebb754ed v4.0.0 v4.0.0 2026-07-11 03:28:19 +01:00
IRHM c8920c911d migrate: Change debug log to info
and add an info migration not been applied before log.
2026-07-11 03:27:31 +01:00
IRHM dd0bae137f migrations: Remove comment TODO
Should be okay with them there.
2026-07-10 22:08:04 +01:00
IRHM d5baee0df7 v4.0.0-dev1 2026-07-10 21:42:03 +01:00
IRHM 764a25be6c Changelog: Add youtube-nocookie change 2026-07-10 21:36:15 +01:00
IRHM c019162994 Update CHANGELOG.md 2026-07-10 20:30:23 +00:00
IRHM 05f9813be8 image: validate: Don't log whole image config 2026-07-10 20:30:23 +00:00
IRHM f285d1a8f4 image: Move new download/save methods to a Saver struct 2026-07-10 20:30:23 +00:00
IRHM 4cc9bd3edb make image module way more robust
- Create a better (more) re-usable flow for downloading images to disk and inserting images into the db
- Validate images properly by reading them fully and using DecodeConfig
- Fix some security issues by re-encoding images
- Always outputs one format `jpeg`, which keeps everything "normalized" and adds compression to images (mainly user uploads which might be big).
2026-07-10 20:30:23 +00:00
IRHM 34f7f54e72 fix: Add headers to requests for files in img/ folder to prevent stored xss attacks
A modern browser will see these headers and protect the user by not allowing any code to run.
2026-07-10 20:30:23 +00:00