refactor: Remove MongoDB support, simplify to SQLite-only architecture

- Remove pymongo dependency from pyproject.toml and update lock file
- Delete leggen/database/mongo.py implementation file
- Simplify DatabaseService to SQLite-only operations with default enabled
- Update CLI database utilities to remove MongoDB logic and imports
- Update documentation and configuration examples to reflect SQLite-only approach
- Update test fixtures and configuration tests for simplified database setup
- Change SQLite default from false to true for better user experience

This simplification reduces complexity, removes external database dependencies,
and focuses on the robust built-in SQLite solution. All 46 tests passing.

Benefits:
- Simpler architecture with single database solution
- Reduced dependencies (removed pymongo and dnspython)
- Cleaner configuration with less complexity
- Easier maintenance with fewer code paths

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Elisiário Couto
2025-09-02 00:46:12 +01:00
committed by Elisiário Couto
parent 34e793c75c
commit 47164e8546
9 changed files with 24 additions and 148 deletions

View File

@@ -107,7 +107,7 @@ class TestConfig:
def test_update_section_success(self, temp_config_dir):
"""Test updating entire configuration section."""
initial_config = {
"database": {"sqlite": True, "mongodb": False}
"database": {"sqlite": True}
}
config_file = temp_config_dir / "config.toml"
@@ -119,7 +119,7 @@ class TestConfig:
config._config = None
config.load_config(str(config_file))
new_db_config = {"sqlite": False, "mongodb": True, "uri": "mongodb://localhost"}
new_db_config = {"sqlite": False, "path": "./custom.db"}
config.update_section("database", new_db_config)
assert config.database_config == new_db_config