Cameron Cordes
7863990c68
Run clippy
2023-03-25 20:59:32 -04:00
Cameron Cordes
a9109fc52d
Add the ability to query files by tags independent of file path
2023-03-25 20:52:51 -04:00
Cameron Cordes
ae2642a544
Fix warnings, and general code cleanup
2023-03-25 20:52:20 -04:00
Cameron Cordes
ae8665f632
Fix clippy warnings
2023-03-22 15:17:48 -04:00
Cameron Cordes
4ded708911
Extract FileSystem to a trait for better testability
...
Added some tests around filtering and searching by Tags. Added the
ability to use an in-memory Sqlite DB for more integration tests.
2023-03-22 15:17:33 -04:00
Cameron Cordes
5a2dce85e8
Fix searching by tags and fixed All FilterMode
...
Manually parsing the tag_ids for the file filtering isn't amazing, but
this works in a more friendly format.
Also the All filter mode was set up in the wrong direction instead of
checking that the file had ALL the tag ids provided, it checked that all
the tag-ids were on a file, which is too restrictive and wouldn't show
many files. Perhaps an ONLY option could exist for being even more
specific.
2023-03-22 13:58:14 -04:00
Cameron Cordes
7d05c9b8bf
Add filtering by Tag to /images endpoint
2023-03-20 08:14:12 -04:00
Cameron Cordes
528db5da3a
Move app state to its own module
Core Repos/ImageApi/pipeline/pr-master This commit looks good
2022-03-17 19:40:07 -04:00
Cameron Cordes
4d9b7c91a1
Improve testability and remove boxing
...
Core Repos/ImageApi/pipeline/pr-master There was a failure building this commit
Leverage generics to remove the extra heap allocation for the response
handlers using Dao's. Also moved some of the environment variables to
app state to allow for easier testing.
2022-03-16 20:51:37 -04:00
Cameron Cordes
50e973da1f
Cleanup unused imports
Core Repos/ImageApi/pipeline/pr-master This commit looks good
2022-03-01 21:16:04 -05:00
Cameron Cordes
69fe307516
Update to Actix 4
Core Repos/ImageApi/pipeline/pr-master There was a failure building this commit
2022-03-01 20:38:41 -05:00
Cameron Cordes
d6e4a01c88
Move list_photos to files module
...
Core Repos/ImageApi/pipeline/pr-master This commit looks good
Added some tests, refactored the error handling/logging, and refactored
the extension tests.
2021-10-07 20:32:36 -04:00
Cameron Cordes
9d823fdc51
Create file metadata endpoint
...
This allows retrieving create/modify date as well as file size for any
file in the BASE_PATH.
2021-05-19 08:53:20 -04:00
Cameron Cordes
3c02bcc8fb
Check upload name to make sure its an image or video
...
Core Repos/ImageApi/pipeline/head This commit looks good
The upload code should be additionally refactored to probably do a more
comprehensive check of if the file is an image or video.
2021-03-07 22:00:12 -05:00
Cameron Cordes
659bad02c9
Fix clippy warnings
Core Repos/ImageApi/pipeline/head This commit looks good
2021-02-03 17:21:23 -05:00
Cameron Cordes
f20a8a5842
Update dependencies, disable registration and improve path handling
2021-02-02 13:57:51 -05:00
Cameron Cordes
eccb45ced0
Use Absolutize for files that do not exist
...
Canonicalize relies on the file existing to resolve the potential
traversal, which won't work for file upload in case the file name has a
traversal inside it.
2020-10-17 19:22:55 -04:00
Cameron Cordes
f52ad9e3b6
Include Nikon Raw image files
2020-09-17 13:29:47 -04:00
Cameron Cordes
426c695b47
File upload working
2020-09-13 21:34:08 -04:00
Cameron Cordes
68bb9d9d5c
Added tests and better path validation
...
Secure video endpoints.
2020-07-23 16:18:28 -04:00
Cameron Cordes
f63dd9cb05
Keep thumbnails in their relative directories
2020-07-21 20:36:41 -04:00
Cameron Cordes
78c066b7be
Update Photos API
...
Since there is a body to the photos api it should be a post for now.
Also updated the response to separate files and directories.
2020-07-09 18:22:03 -04:00
Cameron Cordes
536300e0a1
Serving files is working
...
Right now we're not doing any streaming and this isn't ideal. I'll need
to figure it out at some point.
2020-07-08 21:38:21 -04:00
Cameron Cordes
e3bb607d95
Fix token parsing and require Auth for list files
2020-07-07 22:37:20 -04:00
Cameron Cordes
36f7351627
Initial API setup
...
Right now we are just listing files in a given subdirectory with not
authentication.
2020-07-07 19:53:12 -04:00