From c9090403e43fb9566060f8aae75402c0e0918443 Mon Sep 17 00:00:00 2001 From: Colin Powell Date: Sun, 23 Aug 2026 17:57:25 -0400 Subject: [PATCH] [backups] Fix version bug with webdav --- CHANGELOG.org | 25 ------------------------- PROJECT.org | 32 +++++++++++++++++++++++++++++++- poetry.lock | 2 +- pyproject.toml | 2 +- 4 files changed, 33 insertions(+), 28 deletions(-) diff --git a/CHANGELOG.org b/CHANGELOG.org index 5e045c2..de9d0c7 100644 --- a/CHANGELOG.org +++ b/CHANGELOG.org @@ -1,30 +1,5 @@ #+title: CHANGELOG -* Version 65.6 [1/1] -** DONE [#B] TODOIST_* variable names flagged as TODOs (false positives) :tasks:metadata:cleanup: -:PROPERTIES: -:ID: b2fd3053-ce26-4cdb-bf37-578387fef6c7 -:END: - -*** Description - -Task logdata now uses generic, source-agnostic field names instead of -per-source prefixed keys. `TaskLogData` gained `source_id`, `project_id`, -`state` and `raw_data` (the full remaining source payload kept for future -reference, matching the music track `raw_data` convention); the old `orgmode_*` -and `todoist_*` keys are gone. The todoist and emacs scrobblers and webhooks -normalize into the generic fields, and all `log__orgmode_id` / `log__todoist_id` -lookups became `log__source_id`. `Task.source_url_for_user()` now reads -`source_id` (fixing the `todist_id` typo and the never-matching log `source` -check). New `convert_orgmode_task_log_to_generic` / -`convert_todoist_task_log_to_generic` helpers (wired into the -`convert_task_log_data` management command) migrate existing scrobble logs. -The scrobble "Edit Log" form no longer renders the read-only fields (labels, -source_id, project_id, state, raw_data) as disabled inputs — they are excluded -from the form and preserved on save — and the form now defaults to being -toggled open. Task labels render as read-only badges in the detail view -instead. - * Version 65.5 [2/2] ** DONE [#A] Fix database backup bug where running in celery task fails :bug:backups:celery:tasks: :PROPERTIES: diff --git a/PROJECT.org b/PROJECT.org index 5925a93..89b8623 100644 --- a/PROJECT.org +++ b/PROJECT.org @@ -18,7 +18,7 @@ tasks, Todoist tasks, web pages I've read and trails I've hiked has turned out to be sometimes cathartic and sometimes functional as I try to remember when I did a thing. -* Backlog [0/34] :vrobbler:project:personal: +* Backlog [2/35] :vrobbler:project:personal: ** TODO [#C] Configure IMAP folder/start in user profile :imap:settings: *** Description @@ -611,6 +611,17 @@ The Edit log form should have from top to bottom: - People (which should be similar to the Bird widget on BirdLocation and allow setting per user score, win true/false, rank, new true/false, seat_ordrer) - Expansion ids (which should a multi-select widget of expansions for this game) - Location (which should be a drop down of BoardGameLocations for this user) +** DONE [#A] Fix recursive bug in backup script :backups:bug: +:PROPERTIES: +:ID: e986d35e-fc23-5d31-9d2a-0a95da4748a2 +:END: + +#+begin_src python +ERROR vrobbler.apps.scrobbles.tasks:808 backup_database backup_database: webdav upload failed: Client.mkdir() got an unexpected keyword argument 'recursive' +WARNING vrobbler.apps.scrobbles.tasks:537 _cleanup_failed_backup backup_database: removed incomplete backup /var/backups/vrobbler-backup-2026_08_23.sql.gz +ERROR vrobbler.apps.scrobbles.tasks:827 backup_database backup_database failed: Client.mkdir() got an unexpected keyword argument 'recursive' +DEBUG urllib3.connectionpool:2075 _new_conn Starting new HTTPS connection (1): ntfy.unbl.ink:443 +#+end_src ** DONE [#B] TODOIST_* variable names flagged as TODOs (false positives) :tasks:metadata:cleanup: :PROPERTIES: :ID: b2fd3053-ce26-4cdb-bf37-578387fef6c7 @@ -644,4 +655,23 @@ the detail view instead. - ~vrobbler/apps/scrobbles/constants.py~ (line 74) -- =TODOIST_TASK_URL= - These are variable/constant names for the Todoist integration, not actual TODOs. No action needed, but worth noting they show up in searches. +*** Agent description + +Task logdata now uses generic, source-agnostic field names instead of +per-source prefixed keys. `TaskLogData` gained `source_id`, `project_id`, +`state` and `raw_data` (the full remaining source payload kept for future +reference, matching the music track `raw_data` convention); the old `orgmode_*` +and `todoist_*` keys are gone. The todoist and emacs scrobblers and webhooks +normalize into the generic fields, and all `log__orgmode_id` / `log__todoist_id` +lookups became `log__source_id`. `Task.source_url_for_user()` now reads +`source_id` (fixing the `todist_id` typo and the never-matching log `source` +check). New `convert_orgmode_task_log_to_generic` / +`convert_todoist_task_log_to_generic` helpers (wired into the +`convert_task_log_data` management command) migrate existing scrobble logs. +The scrobble "Edit Log" form no longer renders the read-only fields (labels, +source_id, project_id, state, raw_data) as disabled inputs — they are excluded +from the form and preserved on save — and the form now defaults to being +toggled open. Task labels render as read-only badges in the detail view +instead. + diff --git a/poetry.lock b/poetry.lock index 358d03b..583a746 100644 --- a/poetry.lock +++ b/poetry.lock @@ -6896,4 +6896,4 @@ cffi = ["cffi (>=1.17,<2.0) ; platform_python_implementation != \"PyPy\" and pyt [metadata] lock-version = "2.1" python-versions = ">=3.11,<3.15" -content-hash = "a40297d1cdc081a926b8189bd1e284a5eb83462e218dc8d17b56dd9679baeea4" +content-hash = "1a2a1a0fc3a595186222bff20fc3eda9a2176e772cf1f955bbc8efd0a993582e" diff --git a/pyproject.toml b/pyproject.toml index cbd6398..ec3e4e7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -47,7 +47,7 @@ django-imagekit = "^5.0.0" django-mcp-server = "^0.5.7" thefuzz = "^0.22.1" dataclass-wizard = "^0.35.0" -webdavclient3 = "^3.14.6" +webdavclient3 = "^3.14.7" boto3 = "^1.35.37" urllib3 = "<2" django-oauth-toolkit = "^3.0.1"