Skip to content

Conversation

@Gvolexe
Copy link

@Gvolexe Gvolexe commented Dec 23, 2025

  • Add CliDriver class for non-GUI CLI operations
  • Implement --refresh/-r argument to refresh libraries without GUI
  • Scan directory for new files and add them to the database
  • Proper error handling and logging
  • Include comprehensive documentation
  • Add test suite for CLI refresh functionality

This solves issue #1270 by allowing users to set up automated background refreshes for large libraries without opening the GUI.

Summary

Tasks Completed

  • Platforms Tested:
    • Windows x86
    • Windows ARM
    • macOS x86
    • macOS ARM
    • Linux x86
    • Linux ARM
  • Tested For:
    • Basic functionality
    • PyInstaller executable

- Add CliDriver class for non-GUI CLI operations
- Implement --refresh/-r argument to refresh libraries without GUI
- Scan directory for new files and add them to the database
- Proper error handling and logging
- Include comprehensive documentation
- Add test suite for CLI refresh functionality

This solves issue TagStudioDev#1270 by allowing users to set up automated
background refreshes for large libraries without opening the GUI.
- Add directory type validation to catch incorrect paths early
- Improve exception handling with specific exception types
- Distinguish between expected and unexpected errors in logging
- Better error categorization aids debugging and monitoring
The Library class auto-creates a library if one doesn't exist.
Update test to reflect actual behavior: empty directories are
valid targets for library creation and refresh.

Fixes failing test: test_cli_driver_refresh_invalid_library
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant