Skip to content

v16.24.0

Choose a tag to compare

@frappe-pr-bot frappe-pr-bot released this 24 Jun 05:43

Features

  • Adds a one-time prompt for admins to keep or delete saved Gravatar URLs. If deletion is chosen, those URLs are removed from User and Contact records, and from Lead records when ERPNext is installed. (#40049)
  • Adds YEAR() support so lists and reports can be filtered or grouped by year. (#40065)
  • Moves the dialog for choosing a naming series into the shared framework so it can be reused in other forms. (#40182)

Bug Fixes

  • Report PDFs now download without the external link warning when Show External Link Warning is enabled in System Settings. (#40051)
  • When you export from a list view, the downloaded file keeps the order you selected instead of switching to newest records first. (#40053)
  • The workspace sidebar now shows the correct links when you open list or Kanban views. (#40087)
  • PDF creation now accepts files from the site's public folders, not just the folder used for uploaded files. This lets PDFs include files stored in other public folders. (#40099)
  • Adds read access for Desk users in Global Search Settings, so global search can load its filters without showing an error. (#40106)
  • When a Role's access changes, only the affected User accounts are logged out. (#40114)
  • In Arabic and other right-to-left languages, the phone number country code picker opens next to the flag button instead of appearing off screen. The phone field also leaves room for the code on the right side. (#39768)
  • Fixes percentage formatting when a value is missing, so forms display it without an error. It also avoids showing more decimal places than the value already has. (#40109)
  • Virtual child tables are excluded from "Show Links", so opening a document referenced in one of them does not cause an error. (#40134)
  • The setup wizard now waits until setup finishes before turning off telemetry, so you can still change the Enable Telemetry option while you go through setup. It also keeps track of whether setup completes or fails, even after you switch it off during setup. (#40055)
  • Sets Include filters on by default when printing reports or saving them as PDFs, so the applied filters appear in the output unless you clear the option. (#40129)
  • Quick Entry shows the "saved" message only after your entry is created. If saving fails, the dialog stays open so you can correct the entry and try again. (#40156)
  • Updates Assigned To and Liked By filters to use a broader match instead of an exact one, so they return items linked to the selected user. Filters opened from a link use the same matching rule. (#40155)
  • If the selected Letter Head is disabled, the Print Format page now shows the default enabled Letter Head when available instead of keeping the disabled one selected. (#40112)
  • Marks Address Title as required in the Address form when no linked records are present. It also adds the field to Quick Entry. (#40168)
  • Reports now check user permissions across all fields linked to other records together, instead of checking each field on its own. This prevents some restricted rows from appearing in reports that use more than one of these fields. (#40157)
  • Pressing Delete or Backspace on a selected image in the text editor removes the image instead of showing a browser error. (#40159)
  • Text fields that already contain formatting in printouts and PDFs now keep their formatting instead of showing the tags. (#40142)
  • Query Report and Script Report exports to Excel now keep date and date-time columns as real dates instead of text, so Excel recognizes them as dates. (#40173)
  • When a currency is added or removed on a form, the field label keeps its original text instead of losing words that are part of the label. This avoids labels being shortened after currency changes. (#40191)
  • Adds a search icon to the search bar and keeps it visible when the search is empty and while results are shown. The icon stays beside the field as more results appear below it. (#40203)
  • The search bar hides its footer when no search results are found. (#40207)
  • Search results with a filter now show the "More" button, and clicking it adds more results to the existing list instead of replacing the results already shown. (#40225)
  • Loads the Chromium tools only when they are needed for setup or download, instead of on every start, which lowers memory use in background tasks. (#40231)
  • Raises the limit for an automated memory check to account for the slightly higher memory use seen with Python 3.14.6. (#40236)
  • Dragging cards on wider Kanban boards now scrolls the board automatically when you reach the screen edge, so you can move cards across the board without manually scrolling. (#40226)
  • The Number Card now skips the usual sort when it shows a summary number. On PostgreSQL, this avoids an error that can stop the card from loading. (#40214)
  • Updates Notification preview methods to accept document names that are numbers as well as text. This lets previews display for records with number-only names. (#40068)
  • The workspace sidebar now shows up to three items in each module instead of ranking them by how many records they contain. It looks up record counts one table at a time and keeps each result separately, so the app does less work when those counts are needed. (#40115)
  • Date-based document numbers now use the date stored in the document name when a document is deleted on a later day. This lets the numbering counter move back to the freed number instead of skipping ahead. (#40223)
  • When you save an Email Account with incoming mail enabled, it now shows a sign-in or connection error if the mail server rejects the details or cannot be reached, instead of a raw error message. (#40212)
  • Buttons that only show an icon are square and use less space around the icon, and the "Menu" button hides its tooltip when you click it. Sidebar menu items are slightly shorter and use a lighter gray text color. (#40215)
  • The Data Import form now shows the number of import logs for users who can view the import, without needing separate access to Data Import Log. (#40196)
  • Updates Turkmenistan’s currency code and symbol to TMT and corrects the subunit name to Tenge. (#40184)

Performance Improvements

  • Uses a lighter method to load the related document when checking permissions for File attachments, reducing the work done during those checks. (#40126)

Authors: @iamkhanraheel, @nikkothari22, @KerollesFathy, @barredterra, @kaulith, @SandraFrappe, @ShrihariMahabal, @iamejaaz, @nextchamp-saqib, @nishkagosalia, @ankush, @AarDG10
Reviewers: @resuls, @sumitjain236, @barredterra, @sokumon, @iamejaaz, @safwansamsudeen, @AarDG10, @ankush, @cogk

AI content

For these release notes, we used an LLM (OpenAI gpt-5.4-mini) to review and summarise the code changes, along with the associated issue and PR descriptions. It may contain typical errors and inaccuracies. You can read the prompt here.

Changes with the following labels were excluded:

  • skip-release-notes

Changes with the following types were excluded:

  • chore
  • docs
  • refactor
  • build
  • style
  • test
  • ci