Enhanced List View: scrollable, resizable columns, unlimited fields, etc
Scrollable child tables with sticky columns
Custom print formats for reports
Role-based field masking
Chrome-based PDF converter
We invite all community members to explore the beta, try the new features, and share your feedback.
If you find any bugs, please create an issue in the respective GitHub repository.
Your feedback helps us ship the most stable and refined release possible
Let’s make v16 the most stable and delightful release yet!
Looking forward to the new look and feel of V16. Especially interested in the new chrome based PDF generator, Print formats for reports and the performance improvements.
What does 2x speed really mean tho? I really only notice lag in reports, because Frappe Datatable is loading all the data all at once. So if it has 10k rows, it takes few minutes to generate the report. I wish there was a pagination for reports as well as there is for lists. Or at least server side caching. Its huge load for clients to generate after every filter update.
You’ll see on average a 2x speed up on most typical requests. It won’t address very specific things like a datatable architecture or some slowness attributable to a particular app’s design.
This was achieved by reducing overheads and speeding up all core utilities. E.g.
cache utils like site_cache (4x), redis_cache (30x)
large SQL result sets (5x)
date, data parsing utils now use C versions (2x-10x)
Server script overheads (10x)
Global search (O(n) → FTS)
get_lazy_doc in internal functions, to not load entire document but load child tables on demand.
background scheduler (2x)
Overall, there were ~200 PRs in Frappe + ERPNext + FC and nearly 100% of my time for ~4 months on this project . The number 2x is validated with several benchmarks and load tests. You can find the code here: GitHub - frappe/caffeine: Performance Engineering @ Frappe