feat: add Arabic localization
feat: add manual logo search box and png prioritization
fix: pin discord notification action to a commit sha
fix: service worker caching stale logo search results and broken images as logos
fix: ai recommendations not handling varied provider responses
fix: deleting orphaned logos not taking into account themed variants
fix: stats page not using themed logo variants
fix: email notification test rejecting non-admin users
fix: notification test/send requests hanging on unreachable hosts
fix: progress bar showing 100% when next payment is more than one cycle away
feat: improve menu navigation on grid mode
feat: add new logo themed versions generation to add subscription api endpoint
fix: syntax error on nl.js translation file
feat: bottom sheet slide up animation
feat: option for the week to start on sunday
feat: redesign login / registration pages
feat: more statistics
feat: declarative oidc settings
feat: grid view for subscriptions
feat: subscription details popup
feat: translate categories with ai
feat: google image search with serpapi
feat: selfh.st image search
feat: dashboard icons image search
fix: improve background removal feature for logos
feat: v2.0 api - write endpoints
fix: include todays subscriptions on amount due this month
fix: calendar occurrences to respect subscription start date
fix: honor configured outbound proxy for logo search without reopening httpoxy SSRF bypass
fix: remove hardcode string from the admin page
fix: ssrf via http proxy env var in payments logo search
fix: require cron auth guard on storetotalyearlycost.php
fix: validate per-user smtp host against ssrf
fix: escape iCal property values to prevent crlf injection
* Add week_starts_sunday setting functionality
- Implemented a new endpoint to update the week_starts_sunday setting.
- Modified the settings retrieval to include week_starts_sunday.
- Added translation for the week_starts_sunday label.
- Updated user creation to include week_starts_sunday in the settings.
- Created a migration to add week_starts_sunday column to the settings table.
- Updated registration and settings scripts to handle week_starts_sunday.
- Added a checkbox in the settings UI for users to set their preference for the week starting on Sunday.
* fix: validate week_starts_sunday input before reading it
---------
Co-authored-by: Miguel Ribeiro <k.d.mintnick@gmail.com>
fix: account takeover via email-based account linking
fix: missing fields when cloning a subscription
fix: ssrf via oidc token/userInfo url configuration
fix: ssrf via test email notification
fix: zip slip path traversal in database restore writes files to webroot
fix: don't use mbstring
feat: sort graphs on the statistics page by usage
feat: lifetime subscriptions
feat: allow multiple filters on the settings page
feat: filter by notification status
fix: migrations using double quotes
feat: rework icons
fix: open 3 dot menu abone for the subscriptions at the bottom
fix: ntfy notifications with strange chars
feat: move update banner to the dashboard
fix: handle some ai responses that come in a different format
chore: handle deprecation of curl_close
feat: enable ai recommendations at a schedule
feat: make container shutdown instant & graceful (#916)
feat: add pushplus notification service (#911)
feat: option to delete ai recommendations
fix: parsing ai recommendations from gemini (#909)
fix: accept both api_key and apiKey as parameter on the api
feat: allow to disable password login when oidc is enabled
feat: add get_oidc_settings endpoint to the api
feat: refactor css colors
feat: ai recommendations with chatgpt, gemini or ollama
feat: display ai recommendations on the dashboard
feat: add first and last names to the user profile
feat: enable IPv6 environments by configuring a dual-stack listen in nginx
feat: add new currency
feat: add button to auto fill the next payment date
fix: vulnerability on test webhook endpoint
feat: use mobile style toggles instead of checkboxes
fix: barely readable placeholder text on textarea on dark the
feat: webhooks can now be used for cancelation notifications
feat: add sort by renew type
feat: add filter by renew type
fix: state filter not cleared by clear button
fix: special chars on calendar exports
fix: special chars on notifications
feat: remove "Wallos" text from calendar export
fix: ical trigger to spec RFC5545
fix: don't update next payment date for disabled subscriptions
feat: add total monthly cost trend graph to the statistics page
feat: allow email notifications without authentication
feat: run db migration after restoring database
feat: run db migration after importing db
feat: store weekly the total yearly cost of subscriptions
fix: double encoding in statistics labels