-
Notifications
You must be signed in to change notification settings - Fork 106
Description
Description:
The tdd-guard-pytest library currently requires a hardcoded absolute path for the project root in pyproject.toml:
[tool.pytest.ini_options]
tdd_guard_project_root = "/absolute/path/to/project"Problem:
This makes projects using TDD Guard non-portable across different developers' machines and deployment environments. Anyone cloning a repository with TDD Guard will need to manually update this path to match their local setup.
Proposed Solutions:
-
Support relative paths (preferred):
[tool.pytest.ini_options] tdd_guard_project_root = "../"
Allow relative paths from the location of pyproject.toml
-
Environment variable support:
[tool.pytest.ini_options] tdd_guard_project_root = "${TDD_GUARD_PROJECT_ROOT:../}"
With fallback to relative path if env var not set
-
Auto-detection:
Automatically detect project root by finding.gitdirectory,pyproject.toml, or other marker files
Expected Behavior:
TDD Guard should work out of the box for any developer who clones a repository without requiring manual configuration changes to absolute paths.
Current Impact:
- Blocks new developers from running tests immediately after clone
- Creates merge conflicts when different developers update the path
- Breaks CI/CD if build environments use different paths
- Makes sharing TDD Guard configurations impossible without manual edits
Environment:
tdd-guard-pytestversion: 0.1.2- Python version: 3.10+
- Operating System: Linux (but affects all platforms)
Additional Context:
This issue affects any team trying to adopt TDD Guard in a collaborative development environment. The current design assumes single-developer usage with fixed filesystem layouts.