Skip to main content
Glama

MCP Memory Service

CACHE_FIX.md2.79 kB
# Python Cache Configuration Fix ## Issue Identified **Date**: 2024-08-24 **Problem**: GitHub Actions workflows failing at Python setup step ### Root Cause The `setup-python` action was configured with `cache: 'pip'` but couldn't find a `requirements.txt` file. The project uses `pyproject.toml` for dependency management instead. ### Error Message ``` Error: No file in /home/runner/work/mcp-memory-service/mcp-memory-service matched to [**/requirements.txt], make sure you have checked out the target repository ``` ## Solution Applied Added `cache-dependency-path: '**/pyproject.toml'` to all Python setup steps that use pip caching. ### Files Modified #### 1. `.github/workflows/main-optimized.yml` Fixed 2 instances: - Line 34-39: Release job Python setup - Line 112-117: Test job Python setup #### 2. `.github/workflows/cleanup-images.yml` Fixed 1 instance: - Line 95-100: Docker Hub cleanup job Python setup ### Before ```yaml - name: Set up Python uses: actions/setup-python@v4 with: python-version: '3.11' cache: 'pip' # ❌ Missing cache-dependency-path causes failure ``` ### After ```yaml - name: Set up Python uses: actions/setup-python@v4 with: python-version: '3.11' cache: 'pip' cache-dependency-path: '**/pyproject.toml' # ✅ Explicitly tells setup-python where to find dependencies ``` ## Benefits 1. **Immediate Fix**: Workflows will no longer fail at Python setup step 2. **Performance**: Dependencies are properly cached, reducing workflow execution time 3. **Compatibility**: Works with modern Python projects using `pyproject.toml` (PEP 621) ## Testing All modified workflows have been validated: - ✅ `main-optimized.yml` - Valid YAML syntax - ✅ `cleanup-images.yml` - Valid YAML syntax ## Background The `setup-python` action defaults to looking for `requirements.txt` when using pip cache. Since this project uses `pyproject.toml` for dependency management (following modern Python packaging standards), we need to explicitly specify the dependency file path. This is a known issue in the setup-python action: - Issue #502: Cache pip dependencies from pyproject.toml file - Issue #529: Change pip default cache path to include pyproject.toml ## Next Steps After pushing these changes: 1. Workflows should complete successfully 2. Monitor the Python setup steps to confirm caching works 3. Check workflow execution time improvements from proper caching ## Alternative Solutions (Not Applied) 1. **Remove caching**: Simply remove `cache: 'pip'` line (would work but slower) 2. **Create requirements.txt**: Generate from pyproject.toml (adds maintenance burden) 3. **Use uv directly**: Since project uses uv for package management (more complex change) Date: 2024-08-24 Status: Fixed and ready for deployment

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/doobidoo/mcp-memory-service'

If you have feedback or need assistance with the MCP directory API, please join our Discord server