Commit graph

5 commits

Author SHA1 Message Date
Alessandro
d1827e6c66 Refactor: use user locale for time displays
Some checks are pending
Build And Publish Docker Images / plan (push) Waiting to run
Build And Publish Docker Images / build (push) Blocked by required conditions
Add user-configurable timezone and 12/24-hour preferences, then wire them through settings, runtime snapshots, scheduler payloads, wait handling, notifications, backups, memory, plugin metadata, and frontend formatters.

Keep UTC as the boundary for absolute instants while serializing user-facing dates in the configured or browser-resolved timezone. Preserve scheduler wall-clock inputs in the selected timezone, propagate TZ into desktop/runtime process environments, and restart active desktop sessions when the runtime timezone changes.

Cover the risky paths with timezone regression tests for settings normalization, auto and fixed timezone resolution, scheduler round-trips, memory timestamp conversion, and desktop timezone sync.
2026-05-21 15:26:00 +02:00
frdel
192d6e2cae Add latest selector option to self-update with branch head resolution for testing/development and newest tag resolution for main
- Add LATEST_SELECTOR_TAG constant and is_latest_selector_tag helper to identify "latest" selection
- Add split_describe_version helper to parse git describe output into tag and commit count
- Replace fetch_release_refs with resolve_requested_target that handles both specific tags and "latest" resolution
- For main branch, resolve "latest" to newest reachable release tag
- For testing/development branches
2026-03-26 10:44:12 +01:00
frdel
482fa42d98 refactor(git): Restructure git helpers with dataclasses and add remote update checking
Replace get_git_info implementation with structured dataclass-based approach. Add GitHeadInfo, GitReleaseInfo, GitRemoteReleaseInfo, GitRemoteReleasesResult, GitRemoteCommitsInfo, GitRepoReleaseInfo, and PluginUpdateInfo dataclasses. Implement get_remote_releases to query GitHub tags, get_remote_commits_since_local to check for upstream commits, get_repo_release_info to extract repository metadata, and update
2026-03-13 15:18:13 +01:00
frdel
6dde8c2e74 Derive plugin names; refactor API helpers
Add robust plugin name derivation and clean up API helper code.

- helpers/git.py: add giturlparse dependency and extract_author_repo(url) to reliably extract owner/repo from git URLs (strips auth and validates).
- plugins/plugin_installer/helpers/install.py: replace the old sanitize function with two derivation helpers: _derive_git_plugin_name (normalizes owner/repo into a safe plugin ID) and _derive_zip_plugin_name (determine name from zip contents or uploaded filename). Import regex and use extract_author_repo; switch import to clear_plugin_cache and remove redundant cache clears on intermediate failures.
- requirements.txt: add giturlparse==0.14.0.
- webui/js/api.js: deduplicate and move extensions/URL normalization helpers, add redirect(response) helper to centralize login redirect handling, normalize CSRF cookie secure flag formatting, and minor whitespace/logic cleanup.

These changes improve reliability of plugin ID inference from git URLs/archives and simplify/centralize client-side API helper logic.
2026-03-09 15:59:41 +01:00
frdel
d02dda3667 BIG PYTHON REFACTOR
Python scripts moved out of python/ folder to root to be unified with plugins

+ frontend extension around api calls
2026-03-05 17:28:11 +01:00
Renamed from python/helpers/git.py (Browse further)