Skip to content

Update Mealie v3.5.0 → v3.10.2 - Major Stability and Feature Improvements#34

Open
BookJJun-IJ wants to merge 3 commits intoYundera:mainfrom
BookJJun-IJ:Mealie
Open

Update Mealie v3.5.0 → v3.10.2 - Major Stability and Feature Improvements#34
BookJJun-IJ wants to merge 3 commits intoYundera:mainfrom
BookJJun-IJ:Mealie

Conversation

@BookJJun-IJ
Copy link
Member

Update Mealie v3.5.0 → v3.10.2 - Major Stability and Feature Improvements

Description

This update addresses user-reported issues (slow performance, login persistence bugs, recipe access failures) by upgrading Mealie from v3.5.0 to v3.10.2 and improving the container configuration.

User Feedback Addressed:

"This app is very slow and most of the times it needs too much time to start working. Also login is not persistent and bugs showing as not connected sometimes. But the worst is that even when finally opens you can't access the recipes."


Version Changes (v3.5.0 → v3.10.2)

v3.6.0 - Login Persistence Fix (Critical)

  • Removed backend cookie and switched to frontend-based auth - directly addresses the "login not persistent" and "showing as not connected" issues
  • Fixed Safari/iOS session timeout problems
  • Fixed favorites page sorting and category name editing
  • PWA screen rotation handling improvements

v3.7.0 - Image Processing & UI Improvements

  • Updated image processing algorithm for better performance
  • Calendar in date picker dialogs
  • Snack/drink/dessert meal planner options
  • Diacritics-insensitive autocomplete search
  • Improved startup workflow UI

v3.8.0 - Security Patches

  • Critical fix: Prevented arbitrary system file access vulnerability
  • SafeMarkdown HTML attribute restrictions
  • Optional URL inclusion during HTML/JSON imports

v3.9.0 - UX Improvements

  • Meal planner remembers previous date selections
  • Shopping list checkoff animations
  • Locale-specific number formatting (decimal separators)

v3.10.0 - Major Feature Release

  • Import original recipe URLs' categories during import
  • Custom OpenAI prompts for recipe processing
  • OpenAI migrated to structured outputs
  • Date ranges for shopping lists from meal planner
  • Toggle button for search filter "any/all" mode
  • XSS prevention via JavaScript URI sanitization

v3.10.1 & v3.10.2 - Patches

  • Fixed BASE_URL config for redirect_url availability
  • Resolved OIDC caching issues
  • UI button overflow fixes
  • Localization updates

Configuration Changes

1. Version Upgrade

Old: ghcr.io/mealie-recipes/mealie:v3.5.0
New: ghcr.io/mealie-recipes/mealie:v3.10.2

2. BASE_URL Fix

Old: BASE_URL: https://mealie-$domain
New: BASE_URL: https://mealie-${APP_DOMAIN}

  • Fixes login session/cookie domain mismatch causing persistent login failures
  • Fixes API call failures causing recipe access issues

3. Resource Limits Added

  • cpu_shares: 70 (Interactive with Heavy Tasks)
  • Memory limit: 1G, reservation: 512M
  • Addresses slow performance and startup time issues
  • Memory reservation prevents system from reclaiming resources

4. Caddy Labels Added

  • caddy=mealie-${APP_DOMAIN} for reverse proxy routing
  • caddy.reverse_proxy={{upstreams 80}}

5. Network Configuration

  • Added pcs external network for proper routing

6. Removed Healthcheck

  • Removed custom healthcheck (application handles internally)

7. Removed pre-install-cmd

  • Mealie handles directory initialization on its own

How This Fixes User-Reported Issues

Issue Root Cause Fix
Slow performance No resource limits, system resource contention Memory limits (1G/512M) + cpu_shares: 70
Login not persistent Backend cookie auth + wrong BASE_URL variable v3.6.0 frontend auth + correct ${APP_DOMAIN}
"Not connected" bugs Session cookie domain mismatch BASE_URL with proper domain variable
Can't access recipes API calls failing due to BASE_URL mismatch Correct BASE_URL routing

Security Checklist

  • Authentication via onboarding process (default: changeme@example.com / MyPassword) - valid exception per CONTRIBUTING.md
  • No hardcoded credentials in compose file
  • Proper file permissions: user: $PUID:$PGID
  • Specific version tag: v3.10.2 (no :latest)
  • Security patches included (v3.8.0 arbitrary file access fix, XSS prevention)

Functionality Checklist

  • Works immediately after installation
  • Data mapped to /DATA/AppData/mealie/data/
  • No manual configuration required
  • cpu_shares set: 70 (Interactive with Heavy Tasks)
  • Resource limits: 1G memory limit, 512M reservation
  • Fresh installation tested
  • Uninstall/reinstall tested - data persists

Documentation Checklist

  • Clear description in 5 languages (en_us, ko_kr, zh_cn, fr_fr, es_es)
  • Multi-language taglines
  • Multi-language tips with default credentials
  • Icon and screenshots point to Yundera/AppStore@main

Testing

  • ✅ Fresh installation - app starts and initializes correctly
  • ✅ Login with default credentials (changeme@example.com / MyPassword)
  • ✅ Login persistence verified - sessions maintained across page reloads
  • ✅ Recipe import from URL functional
  • ✅ Recipe browsing and access confirmed
  • ✅ Meal planner and shopping list features working
  • ✅ Mobile responsiveness verified
  • ✅ Uninstall/reinstall - data preserved
  • ✅ Resource usage within configured limits

Links

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