From 5c64470d3873ba34db307ebc72b49bc21b4b4acc Mon Sep 17 00:00:00 2001 From: Damien De Paoli Date: Thu, 12 Jan 2023 17:19:37 +1100 Subject: [PATCH] reordered/rethink TODO --- TODO | 64 ++++++++++++++++++++++++++++-------------------------------- 1 file changed, 30 insertions(+), 34 deletions(-) diff --git a/TODO b/TODO index 7840495..a6add29 100644 --- a/TODO +++ b/TODO @@ -5,25 +5,27 @@ * change the rotation code to use that jpeg util to reduce/remove compression loss? - * ignore face should ignore ALL matching faces (re: Declan) + * get build process to create a random string for secret for PROD, otherwise use builtin for dev - * should allow context menu from View thumbs (particularly useful on search) to show other files around this one by date (maybe that folder or something?) + * think about security - in job_mgr anywhere I can os.replace/remove NEED to protect, etc * could get better AI optim, by keeping track of just new files since scan (even if we did this from the DB), then we could just feed those eid's explicitly into a 'run_ai_on_new_files' :) -- maybe particularly if count('new files') < say 1000 do eids, otherwise do path AND no new refimgs - * does search of matching dirname give all entries of subdirs of subdirs, etc. (think not) -- maybe a TODO? + * ignore face should ignore ALL matching faces (re: Declan) - * video player cannot handle non mp4 formats... do I care? (could just offer a download link and hope the client deals with it) - --> OR? https://jsmpeg.com/ - --> OR? convert all videos to mp4/webm + * should allow context menu from View thumbs (particularly useful on search) to show other files around this one by date (maybe that folder or something?) - * consider whether FE_MSG should exist without a job #, and/or a sep. table, etc. + * folder manipulation + - does search of matching dirname give all entries of subdirs of subdirs, etc. (think not) + - delete + - rename (does this work already somehow? see issue below) + - dont allow me to stupidly move a folder to itself - * delete folder - - * allow joblog search (less needed with logs visible on a given file now) + * browser back/forward buttons dont work -- use POST -> redirect to GET + - need some sort of clean-up of pa_user_state -- I spose its triggered by browser session, so maybe just after a week is lazy/good enough + -- pa_user_state has last_used as a timestamp so can be used to delete old entries * back button will fail if we do these POSTs: job.py:@app.route("/jobs", methods=["GET", "POST"]) @@ -32,11 +34,7 @@ files.py:@app.route("/fix_dups", methods=["POST"]) ??? - * browser back/forward buttons dont work -- use POST -> redirect to GET - - need some sort of clean-up of pa_user_state -- I spose its triggered by browser session, so maybe just after a week is lazy/good enough - -- pa_user_state has last_used as a timestamp so can be used to delete old entries - - GUI overhaul? + * GUI overhaul? * on a phone, the files.html page header is a mess "Oldest.." line is too large to fit on 1 line (make it a hamburger?) - searched for text overlaps buttons above and below - < 10 files > is subsequently not centered @@ -45,33 +43,27 @@ * when search, have a way to hide deleted files -> not sure where to put this on GUI, its so busy... - * metadata at folder level with file level to add more richness - - store in DB? or store in hidden file (or both)... IF it is outside the DB, then I can 'rebuild' the DB at anytime from scratch - - * dont allow me to stupidly move a folder to itself - - * get build process to create a random string for secret for PROD, otherwise use builtin for dev - - * deal with changing a path in settings + * comment your code -> only html files remaining * dup issues: * when we have lots of dups, sort the directories by alpha so its consistent when choosing - * comment your code -> only html files remaining + * fix up logging in general + ProcessFileForJob --> really need to better handle log levels and counting + + * metadata at folder level with file level to add more richness + - store in DB? or store in hidden file (or both)... IF it is outside the DB, then I can 'rebuild' the DB at anytime from scratch + + * video player cannot handle non mp4 formats... do I care? (could just offer a download link and hope the client deals with it) + --> OR? https://jsmpeg.com/ + --> OR? convert all videos to mp4/webm + + * support animated gifs in html5 canvas * read that guys face matching / clustering / nearest neighbour examples, for a whole new AI capability https://www.pyimagesearch.com/2018/07/09/face-clustering-with-python/ - * fix up logging in general - ProcessFileForJob --> really need to better handle log levels and counting - - * support animated gifs in html5 canvas - - * think about security - in job_mgr anywhere I can os.replace/remove NEED to protect, etc - - * real first-run, 'no or empty settings' -- need to think this through - -### DB +### DB * Dir can have date in the DB, so we can do Oldest/Newest dirs in Folder view ### BACKEND @@ -114,6 +106,10 @@ -- image is in dir, need to look at exifread output ### FUTURE: + * real first-run, 'no or empty settings' -- need to think this through + + * deal with changing a path in settings + * can emby use nfo for images (for AI/tags?) -NO sadly