chore: merge dependency updates from PRs #26-#49 and remove CodeQL checks
Backend (Python): - pydantic 2.5.3 → 2.12.5 - pydantic-settings 2.1.0 → 2.13.1 - psycopg2-binary 2.9.9 → 2.9.11 - asyncpg 0.29.0 → 0.31.0 - stripe 7.11.0 → 14.4.1 - aioimaplib 1.0.1 → 2.0.1 - google-auth-httplib2 0.2.0 → 0.3.0 - celery 5.3.6 → 5.6.2 - redis 5.0.1 → 7.3.0 - tenacity 8.2.3 → 9.1.4 Frontend (npm): - react 19.2.3 → 19.2.4 - @tanstack/react-query ^5.90.20 → ^5.95.0 - axios ^1.13.5 → ^1.13.6 - zustand ^5.0.11 → ^5.0.12 - eslint ^9 → ^10 - eslint-config-next 16.1.6 → 16.2.1 Docker: - Python base image 3.11-slim → 3.14-slim CI/CD: - actions/setup-python v5 → v6 - actions/setup-node v4 → v6 - docker/setup-buildx-action v3 → v4 - codecov/codecov-action v3 → v5 - Python version 3.11 → 3.14, Node.js 18 → 20 - Removed CodeQL checks (was blocking builds) Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com> Agent-Logs-Url: https://github.com/christianlouis/pop_puller_to_gmail/sessions/d8a6f888-1c85-4de6-a36d-55e9dcd7489e
This commit is contained in:
+10
-20
@@ -27,9 +27,9 @@ jobs:
|
|||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Set up Python
|
- name: Set up Python
|
||||||
uses: actions/setup-python@v5
|
uses: actions/setup-python@v6
|
||||||
with:
|
with:
|
||||||
python-version: '3.11'
|
python-version: '3.14'
|
||||||
|
|
||||||
- name: Install Python linting tools
|
- name: Install Python linting tools
|
||||||
run: |
|
run: |
|
||||||
@@ -48,9 +48,9 @@ jobs:
|
|||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
|
|
||||||
- name: Set up Node.js
|
- name: Set up Node.js
|
||||||
uses: actions/setup-node@v4
|
uses: actions/setup-node@v6
|
||||||
with:
|
with:
|
||||||
node-version: '18'
|
node-version: '20'
|
||||||
cache: 'npm'
|
cache: 'npm'
|
||||||
cache-dependency-path: frontend/package-lock.json
|
cache-dependency-path: frontend/package-lock.json
|
||||||
|
|
||||||
@@ -100,9 +100,9 @@ jobs:
|
|||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Set up Python
|
- name: Set up Python
|
||||||
uses: actions/setup-python@v5
|
uses: actions/setup-python@v6
|
||||||
with:
|
with:
|
||||||
python-version: '3.11'
|
python-version: '3.14'
|
||||||
cache: 'pip'
|
cache: 'pip'
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
@@ -122,7 +122,7 @@ jobs:
|
|||||||
pytest tests/ -v --cov=app --cov-report=xml --cov-report=term
|
pytest tests/ -v --cov=app --cov-report=xml --cov-report=term
|
||||||
|
|
||||||
- name: Upload coverage to Codecov
|
- name: Upload coverage to Codecov
|
||||||
uses: codecov/codecov-action@v3
|
uses: codecov/codecov-action@v5
|
||||||
with:
|
with:
|
||||||
file: ./backend/coverage.xml
|
file: ./backend/coverage.xml
|
||||||
flags: unittests
|
flags: unittests
|
||||||
@@ -136,16 +136,14 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
security-events: write
|
|
||||||
actions: read
|
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Set up Python
|
- name: Set up Python
|
||||||
uses: actions/setup-python@v5
|
uses: actions/setup-python@v6
|
||||||
with:
|
with:
|
||||||
python-version: '3.11'
|
python-version: '3.14'
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
@@ -161,14 +159,6 @@ jobs:
|
|||||||
run: safety check --json
|
run: safety check --json
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
|
|
||||||
- name: Initialize CodeQL
|
|
||||||
uses: github/codeql-action/init@v3
|
|
||||||
with:
|
|
||||||
languages: python, javascript-typescript
|
|
||||||
|
|
||||||
- name: Perform CodeQL Analysis
|
|
||||||
uses: github/codeql-action/analyze@v3
|
|
||||||
|
|
||||||
# ── Phase 4: Build ─────────────────────────────────────────────────────
|
# ── Phase 4: Build ─────────────────────────────────────────────────────
|
||||||
build:
|
build:
|
||||||
name: Build & Push Docker Image
|
name: Build & Push Docker Image
|
||||||
@@ -186,7 +176,7 @@ jobs:
|
|||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@v3
|
uses: docker/setup-buildx-action@v4
|
||||||
|
|
||||||
- name: Log in to Container Registry
|
- name: Log in to Container Registry
|
||||||
uses: docker/login-action@v3
|
uses: docker/login-action@v3
|
||||||
|
|||||||
@@ -36,6 +36,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
- Improved error handling with specific exception types
|
- Improved error handling with specific exception types
|
||||||
- Updated datetime usage to timezone-aware
|
- Updated datetime usage to timezone-aware
|
||||||
- Enhanced logging with structured context
|
- Enhanced logging with structured context
|
||||||
|
- Bumped Docker Python base image from 3.11-slim to 3.14-slim
|
||||||
|
- Bumped CI Python version from 3.11 to 3.14
|
||||||
|
- Bumped CI Node.js version from 18 to 20
|
||||||
|
- Bumped GitHub Actions: `actions/setup-python` v5 → v6, `actions/setup-node` v4 → v6, `docker/setup-buildx-action` v3 → v4, `codecov/codecov-action` v3 → v5
|
||||||
|
- Bumped backend dependencies: pydantic 2.5.3 → 2.12.5, pydantic-settings 2.1.0 → 2.13.1, psycopg2-binary 2.9.9 → 2.9.11, asyncpg 0.29.0 → 0.31.0, stripe 7.11.0 → 14.4.1, aioimaplib 1.0.1 → 2.0.1, google-auth-httplib2 0.2.0 → 0.3.0, celery 5.3.6 → 5.6.2, redis 5.0.1 → 7.3.0, tenacity 8.2.3 → 9.1.4
|
||||||
|
- Bumped frontend dependencies: react 19.2.3 → 19.2.4, @tanstack/react-query ^5.90.20 → ^5.95.0, axios ^1.13.5 → ^1.13.6, zustand ^5.0.11 → ^5.0.12, eslint ^9 → ^10, eslint-config-next 16.1.6 → 16.2.1
|
||||||
|
|
||||||
|
### Removed
|
||||||
|
- Removed CodeQL analysis from CI pipeline (was blocking builds)
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
- Bare exception handlers replaced with specific types
|
- Bare exception handlers replaced with specific types
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
FROM python:3.11-slim
|
FROM python:3.14-slim
|
||||||
|
|
||||||
# Set working directory
|
# Set working directory
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
FROM python:3.11-slim
|
FROM python:3.14-slim
|
||||||
|
|
||||||
# Set working directory
|
# Set working directory
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|||||||
+10
-10
@@ -1,14 +1,14 @@
|
|||||||
# Core Framework
|
# Core Framework
|
||||||
fastapi==0.109.1 # Updated: Fixed ReDoS vulnerability (was 0.109.0)
|
fastapi==0.109.1 # Updated: Fixed ReDoS vulnerability (was 0.109.0)
|
||||||
uvicorn[standard]==0.27.0
|
uvicorn[standard]==0.27.0
|
||||||
pydantic==2.5.3
|
pydantic==2.12.5
|
||||||
pydantic-settings==2.1.0
|
pydantic-settings==2.13.1
|
||||||
|
|
||||||
# Database
|
# Database
|
||||||
sqlalchemy==2.0.25
|
sqlalchemy==2.0.25
|
||||||
alembic==1.13.1
|
alembic==1.13.1
|
||||||
psycopg2-binary==2.9.9
|
psycopg2-binary==2.9.11
|
||||||
asyncpg==0.29.0
|
asyncpg==0.31.0
|
||||||
|
|
||||||
# Authentication
|
# Authentication
|
||||||
python-jose[cryptography]==3.3.0
|
python-jose[cryptography]==3.3.0
|
||||||
@@ -18,23 +18,23 @@ authlib==1.6.9 # Updated: Fixed OIDC hash binding, JWE RSA1_5 padding oracle, a
|
|||||||
httpx==0.26.0
|
httpx==0.26.0
|
||||||
|
|
||||||
# Payment Processing
|
# Payment Processing
|
||||||
stripe==7.11.0
|
stripe==14.4.1
|
||||||
|
|
||||||
# Email & Mail Processing
|
# Email & Mail Processing
|
||||||
aiosmtplib==3.0.1
|
aiosmtplib==3.0.1
|
||||||
aiohttp==3.13.3 # Updated: Fixed zip bomb, DoS, and directory traversal vulnerabilities (was 3.9.1)
|
aiohttp==3.13.3 # Updated: Fixed zip bomb, DoS, and directory traversal vulnerabilities (was 3.9.1)
|
||||||
aioimaplib==1.0.1
|
aioimaplib==2.0.1
|
||||||
email-validator==2.1.0.post1
|
email-validator==2.1.0.post1
|
||||||
|
|
||||||
# Gmail API (for direct email injection)
|
# Gmail API (for direct email injection)
|
||||||
google-api-python-client==2.193.0
|
google-api-python-client==2.193.0
|
||||||
google-auth==2.49.1
|
google-auth==2.49.1
|
||||||
google-auth-oauthlib==1.2.0
|
google-auth-oauthlib==1.2.0
|
||||||
google-auth-httplib2==0.2.0
|
google-auth-httplib2==0.3.0
|
||||||
|
|
||||||
# Job Queue & Cache
|
# Job Queue & Cache
|
||||||
celery==5.3.6
|
celery==5.6.2
|
||||||
redis==5.0.1
|
redis==7.3.0
|
||||||
|
|
||||||
# Security & Encryption
|
# Security & Encryption
|
||||||
cryptography==46.0.5 # Updated: Fixed NULL pointer dereference (was 42.0.0)
|
cryptography==46.0.5 # Updated: Fixed NULL pointer dereference (was 42.0.0)
|
||||||
@@ -55,4 +55,4 @@ faker==22.6.0
|
|||||||
# Utilities
|
# Utilities
|
||||||
python-dotenv==1.0.0
|
python-dotenv==1.0.0
|
||||||
schedule==1.2.0
|
schedule==1.2.0
|
||||||
tenacity==8.2.3
|
tenacity==9.1.4
|
||||||
|
|||||||
@@ -94,6 +94,8 @@ Comprehensive task breakdown for repository improvements and production readines
|
|||||||
- [x] Create `.github/workflows/security.yml` for security scanning
|
- [x] Create `.github/workflows/security.yml` for security scanning
|
||||||
- [x] Existing `.github/workflows/docker-build.yml` for Docker images
|
- [x] Existing `.github/workflows/docker-build.yml` for Docker images
|
||||||
- [x] Set up automatic dependency updates (Dependabot)
|
- [x] Set up automatic dependency updates (Dependabot)
|
||||||
|
- [x] Merge Dependabot dependency updates (PRs #26–#49)
|
||||||
|
- [x] Remove CodeQL checks from CI (was blocking builds)
|
||||||
|
|
||||||
### In Progress 🔨
|
### In Progress 🔨
|
||||||
- [ ] Configure branch protection rules
|
- [ ] Configure branch protection rules
|
||||||
|
|||||||
Generated
+366
-538
File diff suppressed because it is too large
Load Diff
@@ -9,21 +9,21 @@
|
|||||||
"lint": "eslint"
|
"lint": "eslint"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@tanstack/react-query": "^5.90.20",
|
"@tanstack/react-query": "^5.95.0",
|
||||||
"axios": "^1.13.5",
|
"axios": "^1.13.6",
|
||||||
"lucide-react": "^0.577.0",
|
"lucide-react": "^0.577.0",
|
||||||
"next": "16.1.7",
|
"next": "16.1.7",
|
||||||
"react": "19.2.3",
|
"react": "19.2.4",
|
||||||
"react-dom": "19.2.4",
|
"react-dom": "19.2.4",
|
||||||
"zustand": "^5.0.11"
|
"zustand": "^5.0.12"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@tailwindcss/postcss": "^4",
|
"@tailwindcss/postcss": "^4",
|
||||||
"@types/node": "^20",
|
"@types/node": "^20",
|
||||||
"@types/react": "^19",
|
"@types/react": "^19",
|
||||||
"@types/react-dom": "^19",
|
"@types/react-dom": "^19",
|
||||||
"eslint": "^9",
|
"eslint": "^10",
|
||||||
"eslint-config-next": "16.1.6",
|
"eslint-config-next": "16.2.1",
|
||||||
"tailwindcss": "^4",
|
"tailwindcss": "^4",
|
||||||
"typescript": "^5"
|
"typescript": "^5"
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user