121 Commits

Author SHA1 Message Date
Samuel Chau
29a64511b8 fix(conflict): deserialize arr specific score objects when checking for conflicts (#220) 2025-08-21 10:25:26 +09:30
Sam Chau
6bb045d761 fix(yaml): add normalization of boolean keys to strings for JSON compatibility 2025-08-21 09:58:51 +09:30
Sam Chau
17756013b2 fix(compiler): advanced langauge processing
- use database langauge import score, not default
- fix except language field
2025-08-13 23:22:01 +09:30
Samuel Chau
d7d6b13e46 feat(profiles): radarr/sonarr split functionality (#215)
- added option to set radarr/sonarr specific scores that profilarr's compiler will handle on import
- revise design for arr settings container - now styled as a table
- completely rewrote import module. Now uses connection pooling to reuse connections.
- fixed import progress bug where 1 failed format causes all other formats to be labelled as failed (even if they succeeded)
- fixed bug where on pull sync wasn't working
- improve styling for link / unlink database modals
- fixed issue where 0 score formats were removed in selective mode
2025-08-11 01:51:51 +09:30
Samuel Chau
5281752269 feat: dynamic language score (#207)
- add database setting for language score on imports
- add settings container on general tab to let user update the value
- improved styling of general settings page to be more like media management page
2025-06-16 11:46:12 +09:30
Samuel Chau
22d4029e20 feat: media management (#205)
- implemented new data page for media management
- renaming options to set movie / episode / folder formats
- misc options for propers/repacks/video analysis
- quality definitions
- syncing with instances
- improved mobile view for tabs / navbar
2025-06-12 15:42:29 +09:30
Samuel Chau
b21216b667 fix: sonarr source mappings now use proper name (#202) 2025-05-31 13:08:14 +09:30
Samuel Chau
e251a4e317 fix: clone permissions for private repos (#190)
- reverted back to Flask development server for development
- improved / suppressed git logging
- fixed cloning for private repos by including PAT in clone job
- add 'private repo' badge that replaces repository stats for private repos
2025-03-30 20:42:31 +10:30
Sam Chau
37585067a3 Merge branch 'main' of https://github.com/Dictionarry-Hub/profilarr into dev 2025-03-19 11:11:08 +10:30
Samuel Chau
f7589a5bb9 fix: resolve sonarr remux mappings in quality groups (#174) 2025-03-19 11:10:15 +10:30
Samuel Chau
ecc5f9eade refactor: profile import optimisation (#165)
feat: add concurrent, async requests to improve profile / format import performance

feat: optimise cf prefetching, reduce verbose logging
- now only make single request, then propagate changes to remaining profiles
- remove verbose logging

fix: increase Gunicorn worker timeout to 10 minutes to prevent timeouts during database syncing operations
2025-03-16 10:41:13 +10:30
Samuel Chau
f9989ee0cd feat: various styling improvements + simple language processing (#154)
style: improve quality item aesthetic
- perma edit / delete buttons for groups
- replace radarr/sonarr badges with tooltip
- replace selected styling with tick icon

refactor: upgrade until logic
- remove dropdown selection
- let individual quality items be selectable as the upgrade until target

- fix: let modal handle scrolling on quality tab
- style: improve quality header / create group button
- feat: add special choice functionality to search dropdown
- style: add bottom margin to qualities container

feat: language improvements
- simple mode added to change for profile langauge back compatability in radarr
- improved styling for language tab

style: profile footer improvements
- save confirmation
- improved styling for save / delete buttons

- feat: enhance modal close animations and add closing state management
- fix: append [copy] to cloned profiles
- fix: change keyboard shortcut from 'a' to 'm' for selection mode
2025-03-08 01:51:31 +10:30
santiagosayshey
df16d7c52f fix: merge/delete conflicts (#151)
feat: enhance merge conflict handling with improved status messages and conditional rendering
feat: improved modify / delete conflict handling
- fix ours/theirs messages for deleted files
- fix handling of choice moniker
- fix parsing of local/incoming name when deleted
2025-02-26 18:11:35 +10:30
Sam Chau
b402976848 fix: update PAT status on startup
- now allows transition from non dev -> dev environments or vice versa
2025-02-23 09:51:31 +10:30
santiagosayshey
f91fea113f fix/improve: arr config modal (#146)
- Fix: remove / update dangling references on data delete / rename in arr config. 
- Fix: Show dangling references in data selector so they can be removed after git operation (cascade operations not possible).
- Fix: improve onclick behaviour so that button clicks in arr modal don't incorrectly trigger save / update.
- Refactor: Turn data selector into a non modal component - now exists on the same pane as the arr modal.
- Feat: Add search / sort functionality to data selector. Sorted A-Z by default now.
2025-02-23 04:12:10 +10:30
santiagosayshey
b9289510eb refactor: remove tweaks functionality from profile handling (#145)
- removed because I couldn't integrate it nicely with the rest of the application, will keep in the todo pile for later.
2025-02-21 00:30:01 +10:30
santiagosayshey
0729ac0a62 feature: Include Format when Renaming (#143)
- New: Field inside format general tab to enable include format in rename
- New: Database migration that adds format renames table
- New: Queries to get / update rename status for a format
- Update: Format compiler checks for rename entries and add include rename field when found
- Update: Parsing improvements for incoming commit messages
2025-02-18 01:49:38 +10:30
santiagosayshey
f6ad7485b1 feat: Rename / Status Improvements (#142)
- Renames within profilarr now affect all files that reference the renamed file
- Outgoing / Incoming status now properly shows renamed files as renamed, rather than new
- Overhauled view changes header + commit section. Now shows commit scope + file type as badges + improved message parsing
2025-02-17 07:06:11 +10:30
Sam Chau
17d9932783 fix: calculate sync percentage based on explicitly selected items only
- no longer count CFs inside profiles
2025-02-07 11:08:03 +10:30
Sam Chau
0c4bb8417c fix: move prod dockerfile into root 2025-02-05 16:09:59 +10:30
Sam Chau
c1c129d3c5 feat: update production Dockerfile and docker-compose for improved deployment 2025-02-05 16:09:59 +10:30
Sam Chau
b335ca73ed feat: add production Dockerfile and docker-compose configuration for backend setup 2025-02-05 16:09:59 +10:30
Sam Chau
33a24b764d feat: add URL prefixes to blueprints for improved API structure 2025-02-05 16:09:59 +10:30
Sam Chau
8d3ab5718f refactor: remove URL prefixes from blueprints in the application 2025-02-05 16:09:59 +10:30
Sam Chau
ff575f5a2a feat: implement settings API integration for fetching and updating user settings 2025-02-05 16:09:59 +10:30
Sam Chau
3757cbdb21 feat: add session ID management for authentication setup and middleware 2025-02-05 16:09:59 +10:30
Sam Chau
1b5a438d14 feat: register settings blueprint in the main application 2025-02-05 16:09:59 +10:30
Sam Chau
1598e06f84 refactor: remove redundant logging setup code 2025-02-05 16:09:59 +10:30
Sam Chau
df82ddaa73 refactor: implement database connection and migration handling 2025-02-05 16:09:59 +10:30
Sam Chau
94bbc81449 feat: normalize file path brackets in load_yaml_file function 2025-02-05 16:09:59 +10:30
Sam Chau
4b0755630a feat: add support for 'release_type' condition in FormatConverter with handling for Radarr 2025-02-05 16:09:59 +10:30
Sam Chau
4faa777c6b feat: add Release_Types class for Sonarr release type mappings and retrieval method 2025-02-05 16:09:59 +10:30
Sam Chau
cd56900431 feat: add support for 'year' condition type in FormatConverter with min and max year specifications 2025-02-05 16:09:59 +10:30
Sam Chau
afef0ff2c3 feat: add size condition support in FormatConverter for min and max size specifications 2025-02-05 16:09:59 +10:30
Sam Chau
2813fc6c77 feat: add support for 'edition' and 'quality_modifier' condition types in FormatConverter 2025-02-05 16:09:59 +10:30
Sam Chau
5b658a564e feat: add Quality_Modifiers class for Radarr quality mappings and retrieval method 2025-02-05 16:09:59 +10:30
Sam Chau
de24893f81 feat: trim whitespace from 'name' and 'rename' fields in handle_item function 2025-02-05 16:09:59 +10:30
Sam Chau
34cd563273 fix: prevent duplicate format entries when syncing profile format IDs 2025-02-05 16:09:59 +10:30
Sam Chau
cd05e07a0e feat: add conflict handling for duplicate configuration names in save and update processes 2025-02-05 16:09:59 +10:30
Sam Chau
afad8f320c feat: update import success counting to include referenced CF names and profile formats 2025-02-05 16:09:59 +10:30
Sam Chau
7428b71a32 feat: add support for unique import names in format and profile import processes 2025-02-05 16:09:59 +10:30
Sam Chau
76f4f94290 feat: enhance profile import functionality to support original name preservation and unique import modifications 2025-02-05 16:09:59 +10:30
Sam Chau
0fc36be017 feat: enhance import functionality to support unique import settings and original name preservation 2025-02-05 16:09:59 +10:30
Sam Chau
f39b693b3d feat: add function to retrieve unique import settings for multiple arr IDs 2025-02-05 16:09:59 +10:30
Sam Chau
54e3e7499a refactor: simplify profile import logic by removing unique import handling and related logging 2025-02-05 16:09:59 +10:30
Sam Chau
c53d8681be feat: add active sync configuration checks before branch checkout and repository unlinking 2025-02-05 16:09:59 +10:30
Sam Chau
782b3c40fa feat: improve import success tracking and sync percentage calculation in run_import_for_config 2025-02-05 16:09:59 +10:30
Sam Chau
fba319eee2 feat: add manual sync functionality with confirmation modal in ArrModal component 2025-02-05 16:09:59 +10:30
Sam Chau
d93b57975c feat: enhance load_tasks_from_db method to remove old jobs before reloading tasks 2025-02-05 16:09:59 +10:30
Sam Chau
4d19ecac1e refactor: improve formatting and structure of ARR config data handling 2025-02-05 16:09:59 +10:30