2.4
a16z-infra/llm-app-stack2.4Jan 18, 2026by rolandgeider
AI Summary
This release focuses on refactoring application settings, adding a Trophy System backend, and improving performance logging for ingredient sync operations. It also includes numerous bug fixes and dependency updates.
Key Highlights
- Refactored application settings and database structure
- Added Trophy System backend
- Improved logging and performance for ingredient sync
Breaking Changes
- Default location for settings files has changed (requires migration if not using Docker)
New Features
- Trophy System backend
- Multiple weight entries per day
- Exercise submission endpoint
- AVIF image support
- Password toggle feature in forms
- React components as a regular dependency
Full Release Notes
<!-- Release notes generated using configuration in .github/release.yml at 2.4 --> ## Breaking changes Please note that the default location for the settings files has changed, *if you are not using the docker setup you will probably need to update this*, please check the instructions at #2153 ## Update steps * Update python libraries `uv sync` or `pip3 install .` * Migrate database `python manage.py migrate` * Update CSS and JS libraries `npm install` * Compile the CSS `npm run build:css:sass` * Update static files (only production): `python3 manage.py collectstatic` * For the trophies you will need to manually start the evaluation process: ```bash python manage.py recalculate_statistics --all --active-only python manage.py evaluate_trophies --all ``` ## What's Changed ### Features * Fix NoneType exception by @rolandgeider in https://github.com/wger-project/wger/pull/1955 * Move requirements to pyproject.toml by @rolandgeider in https://github.com/wger-project/wger/pull/1964 * adds support for auth proxy header by @eyJhb in https://github.com/wger-project/wger/pull/1859 * Handle special characters in OFF product import #1956 by @wbonicki in https://github.com/wger-project/wger/pull/1970 * Ensure trainers see their templates impersonating. by @perrito666 in https://github.com/wger-project/wger/pull/1967 * Improve logging for ingredient sync operations by @rolandgeider in https://github.com/wger-project/wger/pull/1975 * docs: Fix demo container name by @hangy in https://github.com/wger-project/wger/pull/1976 * perf: Optimize landing page images by @hangy in https://github.com/wger-project/wger/pull/1978 * Compile django translations on docker build time by @rolandgeider in https://github.com/wger-project/wger/pull/1990 * Add start and end fields to the nutritional plan models by @rolandgeider in https://github.com/wger-project/wger/pull/1997 * Make language dropdown scrollable (limit height; overflow-y:auto) by @Carner-Lin in https://github.com/wger-project/wger/pull/2042 * Prevent height spinner going below 0 in user preferences by @Carner-Lin in https://github.com/wger-project/wger/pull/2030 * Add languages by @rolandgeider in https://github.com/wger-project/wger/pull/2046 * Replace ingredient search function by @rolandgeider in https://github.com/wger-project/wger/pull/1724 * Adds validator for (exercise) images by @rolandgeider in https://github.com/wger-project/wger/pull/2049 * Allow multiple weight entries per day by @scrapcode in https://github.com/wger-project/wger/pull/1895 * Exercise submission endpoint by @rolandgeider in https://github.com/wger-project/wger/pull/2051 * Feature/1694 by @wbonicki in https://github.com/wger-project/wger/pull/1977 * Fix typo in meal planning text by @AmandeepMandal1077 in https://github.com/wger-project/wger/pull/2059 * Refactor exercise search to unified endpoint (issue #2052) by @ChristianFeliks in https://github.com/wger-project/wger/pull/2057 * Fix "Get Started" Button and Add Registration Sidebar by @JANVI-CHATURVEDI in https://github.com/wger-project/wger/pull/2066 * refactor: make fields collections immutable by @seppzer0 in https://github.com/wger-project/wger/pull/2061 * Gallery: reuse exercise image validator to block animated uploads ( # 2054 ) by @saadpy0 in https://github.com/wger-project/wger/pull/2055 * Add password toggle feature in forms by @Akshit-MMQH in https://github.com/wger-project/wger/pull/2079 * AVIF: updated supported images formats with avif by @3mpee3mpee in https://github.com/wger-project/wger/pull/2083 * issue(2053): added the diemnsions and updated historical data by @shantanugupta2004 in https://github.com/wger-project/wger/pull/2063 * Add our react components as a regular dependency by @rolandgeider in https://github.com/wger-project/wger/pull/2086 * Added clickable app-store links to README by @DidiNDexter in https://github.com/wger-project/wger/pull/2100 * feat: add management command to check gallery images for animation by @saadpy0 in https://github.com/wger-project/wger/pull/2077 * Make app-store badges uniform in height by @DidiNDexter in https://github.com/wger-project/wger/pull/2102 * Remove test for empty common name. by @rolandgeider in https://github.com/wger-project/wger/pull/2114 * Properly translate the strings by @rolandgeider in https://github.com/wger-project/wger/pull/2115 * Improve the celery ingredient sync by @rolandgeider in https://github.com/wger-project/wger/pull/2117 * Fix bug that caused days with logs not to advance correctly by @rolandgeider in https://github.com/wger-project/wger/pull/2123 * Add Trophy System's Backend by @jeremy-ru in https://github.com/wger-project/wger/pull/2136 * Refactor application settings by @rolandgeider in https://github.com/wger-project/wger/pull/2153 * Remove django compressor by @rolandgeider in https://github.com/wger-project/wger/pull/2162 * PR trophies by @justin-pinheiro in https://github.com/wger-project/wger/pull/2147 ### Dependencies * Bump bootstrap from 5.3.3 to 5.3.5 by @dependabot[bot] in https://github.com/wger-project/wger/pull/1950 * Bump datatables.net-bs5 from 2.2.2 to 2.3.0 by @dependabot[bot] in https://github.com/wger-project/wger/pull/1966 * Bump bootstrap from 5.3.5 to 5.3.6 by @dependabot[bot] in https://github.com/wger-project/wger/pull/1968 * Bump django from 5.2 to 5.2.1 by @dependabot[bot] in https://github.com/wger-project/wger/pull/1969 * Bump datatables.net-bs5 from 2.3.0 to 2.3.1 by @dependabot[bot] in https://github.com/wger-project/wger/pull/1972 * Bump bootstrap from 5.3.6 to 5.3.7 by @dependabot[bot] in https://github.com/wger-project/wger/pull/1988 * Bump htmx.org from 2.0.4 to 2.0.5 by @dependabot[bot] in https://github.com/wger-project/wger/pull/1992 * Bump datatables.net-bs5 from 2.3.1 to 2.3.2 by @dependabot[bot] in https://github.com/wger-project/wger/pull/1986 * Bump actions/checkout from 4 to 5 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2021 * Bump super-linter/super-linter from 7 to 8 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2010 * Bump actions/download-artifact from 4 to 5 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2017 * Bump datatables.net-bs5 from 2.3.2 to 2.3.3 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2022 * Bump bootstrap from 5.3.7 to 5.3.8 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2029 * Bump htmx.org from 2.0.5 to 2.0.6 by @dependabot[bot] in https://github.com/wger-project/wger/pull/1999 * Bump actions/setup-python from 5 to 6 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2035 * Bump django from 5.2.5 to 5.2.6 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2038 * Bump htmx.org from 2.0.6 to 2.0.7 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2037 * Bump datatables.net-bs5 from 2.3.3 to 2.3.4 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2039 * Bump django from 5.2.6 to 5.2.7 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2062 * Bump devbridge-autocomplete from 1.4.11 to 1.5.0 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2004 * Bump github/codeql-action from 3 to 4 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2081 * Bump astral-sh/setup-uv from 6 to 7 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2080 * Bump actions/upload-artifact from 4 to 5 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2096 * Bump actions/download-artifact from 5 to 6 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2095 * Bump vite from 7.1.10 to 7.1.11 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2089 * Bump htmx.org from 2.0.7 to 2.0.8 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2099 * Bump docker/setup-qemu-action from 3.6.0 to 3.7.0 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2109 * Bump django from 5.2.7 to 5.2.8 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2108 * Bump datatables.net-bs5 from 2.3.4 to 2.3.5 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2111 * Bump actions/checkout from 5 to 6 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2118 * Bump actions/download-artifact from 6 to 7 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2144 * Bump actions/upload-artifact from 5 to 6 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2143 * Bump actions/cache from 4 to 5 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2142 * Bump datatables.net-bs5 from 2.3.5 to 2.3.6 by @dependabot[bot] in https://github.com/wger-project/wger/pull/2151 ## New Contributors * @wbonicki made their first contribution in https://github.com/wger-project/wger/pull/1970 * @perrito666 made their first contribution in https://github.com/wger-project/wger/pull/1967 * @hangy made their first contribution in https://github.com/wger-project/wger/pull/1976 * @Carner-Lin made their first contribution in https://github.com/wger-project/wger/pull/2042 * @AmandeepMandal1077 made their first contribution in https://github.com/wger-project/wger/pull/2059 * @ChristianFeliks made their first contribution in https://github.com/wger-project/wger/pull/2057 * @JANVI-CHATURVEDI made their first contribution in https://github.com/wger-project/wger/pull/2066 * @seppzer0 made their first contribution in https://github.com/wger-project/wger/pull/2061 * @saadpy0 made their first contribution in https://github.com/wger-project/wger/pull/2055 * @Akshit-MMQH made their first contribution in https://github.com/wger-project/wger/pull/2079 * @3mpee3mpee made their first contribution in https://github.com/wger-project/wger/pull/2083 * @shantanugupta2004 made their first contribution in https://github.com/wger-project/wger/pull/2063 * @DidiNDexter made their first contribution in https://github.com/wger-project/wger/pull/2100 * @jeremy-ru made their first contribution in https://github.com/wger-project/wger/pull/2136 * @justin-pinheiro made their first contribution in https://github.com/wger-project/wger/pull/2147 **Full Changelog**: https://github.com/wger-project/wger/compare/2.3...2.4