ruthra kumar
9a7e796fd2
Merge pull request #57161 from frappe/version-16-hotfix
...
chore: release v16
2026-07-15 06:17:14 +05:30
Mihir Kandoi
b1ca9c26cb
Merge pull request #57136 from frappe/mergify/bp/version-16-hotfix/pr-57129
...
fix: prevent duplicate material request items in purchase order (backport #57129 )
2026-07-14 16:43:09 +05:30
Mihir Kandoi
4d931a7108
test: remove test
...
(cherry picked from commit b2ec906ff3 )
2026-07-14 11:01:57 +00:00
SandraFrappe
4d951c1cf8
fix: prevent duplicate material request items in purchase order
...
(cherry picked from commit 2d6f89a7f5 )
2026-07-14 11:01:57 +00:00
Mihir Kandoi
3a38316c26
Merge pull request #57126 from aerele/fix/job-card-work-order-transferred-qty-v16
...
fix(manufacturing): preserve job card transferred quantity
2026-07-14 13:40:29 +05:30
Sudharsanan11
fd6c9a71cd
test(manufacturing): cover transferred quantity across job cards
2026-07-14 13:23:49 +05:30
Sudharsanan11
d7e9321746
fix(manufacturing): preserve job card transferred quantity
2026-07-14 13:23:28 +05:30
mergify[bot]
e8a532587d
fix(accounts): added permission checks on get_account_balances_coa (backport #57107 ) ( #57122 )
...
Co-authored-by: Diptanil Saha <diptanil@frappe.io >
2026-07-14 13:07:12 +05:30
Mihir Kandoi
8d7fe755e3
Merge pull request #57118 from frappe/mergify/bp/version-16-hotfix/pr-57116
...
fix(stock): fix sqlparse token limit in get_bundle_wise_serial_nos (backport #57116 )
2026-07-14 12:33:43 +05:30
Khushi Rawat
2947f030e8
Merge pull request #57119 from frappe/mergify/bp/version-16-hotfix/pr-57111
...
chore: remove dead assets dashboard_fixtures with broken imports (backport #57111 )
2026-07-14 12:14:47 +05:30
Afsal Syed
cec1e87c90
test(stock): add unit test for get_bundle_wise_serial_nos query
...
(cherry picked from commit e748bf512b )
2026-07-14 12:13:42 +05:30
khushi8112
345c508be7
chore: remove dead assets dashboard_fixtures with broken imports ( #57079 )
...
erpnext.accounts.dashboard_fixtures and erpnext.buying.dashboard_fixtures
were removed in 2020 when dashboards were exported to JSON fixtures.
The assets module's dashboard_fixtures.py was left behind unreferenced;
its dashboard, charts and number cards already exist as exported JSON.
(cherry picked from commit 14a15cc6f9 )
2026-07-14 06:23:40 +00:00
Afsal Syed
5a99dd6016
fix(stock): fix sqlparse token limit in get_bundle_wise_serial_nos
...
(cherry picked from commit 4544a6c935 )
2026-07-14 06:00:14 +00:00
Mihir Kandoi
3b7467daab
Merge pull request #57113 from PranavDarade/fix/transfer-reservation-stock-uom
...
fix(stock): set stock_uom on transferred Stock Reservation Entries
2026-07-14 10:14:59 +05:30
Khushi Rawat
db737da22e
Merge pull request #57077 from frappe/mergify/bp/version-16-hotfix/pr-55276
...
fix(asset): allow asset repair creation for fully depreciated assets (backport #55276 )
2026-07-14 00:24:20 +05:30
Khushi Rawat
138a44e450
Merge pull request #56966 from frappe/mergify/bp/version-16-hotfix/pr-56964
...
fix: match depreciation schedule rows at currency precision to avoid duplicate JEs (backport #56964 )
2026-07-14 00:09:32 +05:30
Diptanil Saha
40c85a0087
fix(tnc): get_terms_and_conditions render_template with safe_exec (backport #56944 ) ( #56977 )
2026-07-13 23:22:55 +05:30
Mihir Kandoi
4f59e57151
Merge pull request #57105 from frappe/mergify/bp/version-16-hotfix/pr-57091
...
fix(stock): show qty (company) and qty (warehouse) in sales transactions (backport #57091 )
2026-07-13 21:27:54 +05:30
Mihir Kandoi
0447a18217
Merge pull request #57103 from frappe/mergify/bp/version-16-hotfix/pr-57089
...
fix: allow barcode scan to add and increment items in pick list (backport #57089 )
2026-07-13 21:27:40 +05:30
PranavDarade
5991ecfa3d
fix(stock): set stock_uom on transferred Stock Reservation Entries
...
StockReservation.transfer_reservation_entries_to() created the transferred SREs without copying stock_uom, in both the entries_to_reserve dict and the extra-items fallback. get_items_to_reserve() already selects the item's stock_uom, so entry.stock_uom is used.
On sites with a global default stock_uom (e.g. "Nos"), frappe's _set_defaults() backfilled the blank field, so the transfer silently stored the wrong UOM for any item whose stock UOM is not the default. On sites without that default the SRE's validate_mandatory() raised "Stock UOM is required", aborting Work Order submission for the Subcontracting Inward Order / Production Plan flows.
2026-07-13 21:21:03 +05:30
Sudharsanan11
77cca4464d
test(stock): assert qty (company) and qty (warehouse) on item details
...
covers sales order, quotation, sales invoice, delivery note and
purchase order, asserting actual_qty from the row warehouse and
company_total_stock across all warehouses of the company.
(cherry picked from commit 4e5e1f6596 )
2026-07-13 15:34:10 +00:00
Sudharsanan11
0d9ace7ab8
fix(stock): show qty (company) and qty (warehouse) in sales transactions
...
company was passed to get_bin_details only for purchase order, so
company_total_stock was never returned for sales order, quotation,
sales invoice and delivery note and the qty (company) column always
read zero. pass ctx.company for every doctype, which also drops the
dependency on doc being supplied.
on the client, set_actual_qty copied only actual_qty out of the
response, so qty (company) never refreshed on a warehouse change. use
frm.call with child so every bin field is applied, pass
include_child_warehouses to match the server, and include quotation.
(cherry picked from commit ab30bab6cb )
2026-07-13 15:34:09 +00:00
pandiyan
00a646ac25
fix: allow barcode scan to add and increment items in pick list
...
- allow new rows on scan when pick manually is enabled, since only
then are scanned rows not subject to being overridden by
set_item_locations on save
- stop capping picked qty at the default demand qty (1) for rows
added by the scanner itself, so repeat scans of the same barcode
keep incrementing the row instead of failing with "maximum
quantity scanned"
- ignore barcode uom when matching an existing row if new rows
aren't allowed, since there's no alternate-uom row to fall back to
(cherry picked from commit 3ece4a615d )
2026-07-13 15:33:11 +00:00
ruthra kumar
aa1d50a914
Merge pull request #57100 from frappe/mergify/bp/version-16-hotfix/pr-56706
...
refactor: rename synced to snapshot report (backport #56706 )
2026-07-13 20:02:49 +05:30
ruthra kumar
c03d115999
refactor: rename feature toggle in report master
...
(cherry picked from commit 981e90e4da )
2026-07-13 13:17:01 +00:00
ruthra kumar
97a7a2d6bc
refactor: rename execute_synced_report to execute_snapshot_report
...
Match the framework rename of the standard report entry point in the
trial balance, P&L, balance sheet, and general ledger reports.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
(cherry picked from commit ba7b6a47c5 )
2026-07-13 13:17:01 +00:00
ruthra kumar
d784b9a7be
Merge pull request #57098 from frappe/mergify/bp/version-16-hotfix/pr-56304
...
feat: faster (synced) financial statements using duckdb (backport #56304 )
2026-07-13 18:08:15 +05:30
ruthra kumar
88b7a38be4
refactor: synced reports should be enabled on sites based on requirements
...
(cherry picked from commit 963bbc8729 )
2026-07-13 12:16:28 +00:00
ruthra kumar
21ddb00e20
feat(profit-and-loss): implement execute_synced_report with full parity to normal report
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
(cherry picked from commit 6a93baacf0 )
2026-07-13 12:16:28 +00:00
ruthra kumar
636bcbedc0
feat(balance-sheet): implement execute_synced_report with full parity to normal report
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
(cherry picked from commit bb19540816 )
2026-07-13 12:16:27 +00:00
ruthra kumar
19ec095ff8
feat(general-ledger): implement execute_synced_report with full parity to normal report
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
(cherry picked from commit 6b4895bcc9 )
2026-07-13 12:16:27 +00:00
ruthra kumar
2f6ef7b2ec
refactor: DB agnostic method names
...
(cherry picked from commit f40cd41801 )
2026-07-13 12:16:26 +00:00
ruthra kumar
d41b9f11ff
refactor: maintain sync dependency in report master
...
(cherry picked from commit 5c536b8ad1 )
2026-07-13 12:16:25 +00:00
ruthra kumar
98a65f7529
refactor(trial-balance): execute_duckdb only reads GL Entry from duckdb
...
Replaces the previous over-engineered stub with 7 short functions.
Account data, Account Closing Balance, and all metadata come from
frappe.db as normal; only tabGL Entry is read from the duckdb_conn.
Reuses get_opening_balance() for Account Closing Balance unchanged,
reuses all downstream compute helpers (calculate_values, prepare_data,
etc.) unchanged.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
(cherry picked from commit 55862f98f4 )
2026-07-13 12:16:24 +00:00
ruthra kumar
228418b05f
feat(trial-balance): implement execute_duckdb with full parity to normal report
...
Replaces the placeholder stub with 8 focused functions that mirror the
normal execute() flow using parameterized DuckDB SQL queries: account
fetch, period GL entries, opening balances (with Period Closing Voucher
path), and all filters (cost center, project, finance book, accounting
dimensions). Reuses existing pure-Python processing functions unchanged.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
(cherry picked from commit b1c8e2cb5c )
2026-07-13 12:16:24 +00:00
ruthra kumar
08e267271e
refactor: reports on duckdb
...
(cherry picked from commit adb768505a )
2026-07-13 12:16:23 +00:00
mergify[bot]
bf1b7f2bea
feat: weekly auto-repost of incorrect stock valuation entries (backport #56637 ) ( #56700 )
...
* feat: weekly auto-repost of incorrect stock valuation entries (#56637 )
(cherry picked from commit adae0bd732 )
# Conflicts:
# erpnext/stock/report/stock_and_account_value_comparison/stock_and_account_value_comparison.py
* chore: fix conflicts
Removed merge conflict markers and cleaned up code.
---------
Co-authored-by: rohitwaghchaure <rohitw1991@gmail.com >
2026-07-13 10:11:12 +00:00
Frappe PR Bot
9d5c7605b8
chore(release): Bumped to Version 16.27.0
...
# [16.27.0](https://github.com/frappe/erpnext/compare/v16.26.2...v16.27.0 ) (2026-07-13)
### Bug Fixes
* **`frappe_crm_api`:** handle failure for `after_app_install` and `after_app_uninstall` ([eac3afc ](eac3afcd88 ))
* **accounts:** clear clearance date when amending reconciled voucher ([6f28135 ](6f281356a6 )), closes [#54909 ](https://github.com/frappe/erpnext/issues/54909 )
* **accounts:** retain invoice table on opening invoice creation error (backport [#56353 ](https://github.com/frappe/erpnext/issues/56353 )) ([#57058 ](https://github.com/frappe/erpnext/issues/57058 )) ([4136ca5 ](4136ca55a7 ))
* add page numbers to print format footer ([0371e8e ](0371e8eaf0 ))
* added permission checks on various whitelisted functions (backport [#56745 ](https://github.com/frappe/erpnext/issues/56745 )) ([#56946 ](https://github.com/frappe/erpnext/issues/56946 )) ([7ce1289 ](7ce1289c10 ))
* address review comments ([056195c ](056195ce07 ))
* auto fetch serial no from previous operation output (backport to v16) ([#56861 ](https://github.com/frappe/erpnext/issues/56861 )) ([17f2de4 ](17f2de42f3 ))
* **banking:** allow negative balance in bank statement import (backport [#56959 ](https://github.com/frappe/erpnext/issues/56959 )) ([#57054 ](https://github.com/frappe/erpnext/issues/57054 )) ([835e32c ](835e32cec7 ))
* **banking:** handle blank password protected PDFs and negative amounts in CR/DR columns (backport [#56690 ](https://github.com/frappe/erpnext/issues/56690 )) ([#56694 ](https://github.com/frappe/erpnext/issues/56694 )) ([19c318d ](19c318df68 ))
* **banking:** use custom renderer for translated strings and parser for rules (backport [#56643 ](https://github.com/frappe/erpnext/issues/56643 )) ([#56647 ](https://github.com/frappe/erpnext/issues/56647 )) ([2cb577b ](2cb577b912 ))
* block serialized to non-serialized item change when SABB exists (backport [#56773 ](https://github.com/frappe/erpnext/issues/56773 )) ([#56775 ](https://github.com/frappe/erpnext/issues/56775 )) ([19d03fe ](19d03fee46 ))
* clear stray permission message when item dashboard has no warehouse access ([a39753e ](a39753ee08 ))
* **company:** ignore user permissions for link fields having link to `Account` and `Cost Center` (backport [#56748 ](https://github.com/frappe/erpnext/issues/56748 )) ([#56795 ](https://github.com/frappe/erpnext/issues/56795 )) ([003b655 ](003b6554c4 ))
* correct filter handling in Sales Person-wise Transaction Summary + tests (backport [#56783 ](https://github.com/frappe/erpnext/issues/56783 )) ([#56908 ](https://github.com/frappe/erpnext/issues/56908 )) ([24f0989 ](24f0989ac1 ))
* **crm_settings:** skip allowed users check when frappe crm is installed locally ([dfe4d5a ](dfe4d5ab73 ))
* display outstanding amount using company default currency (backport [#56785 ](https://github.com/frappe/erpnext/issues/56785 )) ([#57009 ](https://github.com/frappe/erpnext/issues/57009 )) ([bdba4c8 ](bdba4c8091 ))
* don't attempt to create SABB for non-serialized / non-batch items (backport [#56627 ](https://github.com/frappe/erpnext/issues/56627 )) ([#56803 ](https://github.com/frappe/erpnext/issues/56803 )) ([8c56a5a ](8c56a5ac0c ))
* don't treat batch slot at FIFO queue head as qty slot ([20f6dd0 ](20f6dd0224 ))
* enforce read permission on ledger preview endpoints ([#57039 ](https://github.com/frappe/erpnext/issues/57039 )) ([5642359 ](5642359c10 ))
* fetch payment entry reference amounts from invoice (backport [#56928 ](https://github.com/frappe/erpnext/issues/56928 )) ([#57042 ](https://github.com/frappe/erpnext/issues/57042 )) ([67c85ef ](67c85ef0af ))
* FIFO queue checks and incorrect entries filter in stock ledger reports ([3571512 ](3571512101 )), closes [#43619 ](https://github.com/frappe/erpnext/issues/43619 )
* **financial_statement:** render columnar financial statements instea… (backport [#56921 ](https://github.com/frappe/erpnext/issues/56921 )) ([#57053 ](https://github.com/frappe/erpnext/issues/57053 )) ([e6a6c13 ](e6a6c13355 ))
* for purchases do voucher based reposting (backport [#56601 ](https://github.com/frappe/erpnext/issues/56601 )) ([#56608 ](https://github.com/frappe/erpnext/issues/56608 )) ([e1e6176 ](e1e6176ddc ))
* guard against missing DocType in onboarding steps patch ([#56804 ](https://github.com/frappe/erpnext/issues/56804 )) ([f72289e ](f72289e27c ))
* **item-attribute:** clear attribute values when marking numeric ([374b340 ](374b340e73 ))
* **item:** error on uncommitted input and escape values in variant dialog ([04c834d ](04c834d6a9 ))
* **item:** rework multiple variant dialog for large numeric ranges ([025d0cd ](025d0cd7f3 ))
* make represents company field in purchase invoice ignore user permissions ([4aed77d ](4aed77df0c ))
* make trend report based-on and group-by column labels translatable ([b8199d8 ](b8199d88b6 ))
* map stock_qty in apply_price_list_on_item (backport [#56869 ](https://github.com/frappe/erpnext/issues/56869 )) ([#57052 ](https://github.com/frappe/erpnext/issues/57052 )) ([240fb2c ](240fb2c4b8 ))
* partial delivery note against pick list (backport [#56985 ](https://github.com/frappe/erpnext/issues/56985 )) ([#57006 ](https://github.com/frappe/erpnext/issues/57006 )) ([20255a8 ](20255a8a7f ))
* **patch:** moved create_company_custom_fields from `pre_model_sync` to `post_model_sync` (backport [#56962 ](https://github.com/frappe/erpnext/issues/56962 )) ([#56965 ](https://github.com/frappe/erpnext/issues/56965 )) ([14efd14 ](14efd14384 ))
* **payment reconciliation:** honour user permissions on accounting di… ([#56560 ](https://github.com/frappe/erpnext/issues/56560 )) ([8eb92b8 ](8eb92b8b18 ))
* precision issue causing reconciliation error ([#54043 ](https://github.com/frappe/erpnext/issues/54043 )) ([20df15b ](20df15b3ac ))
* prevent repeatable read related concurrency errors ([019b02a ](019b02adcd ))
* race condition and repeatable read in process pcv ([6d9f5fa ](6d9f5fac76 ))
* recompute transferred qty before deciding work order status ([bc952f4 ](bc952f40d9 ))
* remove company default on cost center in stock entry detail ([a1fe6ce ](a1fe6cee5d ))
* remove incorrect Payable account_type from Customer Deposits in Philippines CoA (backport [#57018 ](https://github.com/frappe/erpnext/issues/57018 )) ([#57061 ](https://github.com/frappe/erpnext/issues/57061 )) ([edfbc71 ](edfbc71135 ))
* rename variant item_code/item_name when attribute abbreviation changes ([97cd1e7 ](97cd1e7144 ))
* render letter head footer in print formats ([fa4d32d ](fa4d32dcdb ))
* replay immutable SLE qty for serial/batch bundle valuation (backport [#56814 ](https://github.com/frappe/erpnext/issues/56814 )) ([#56835 ](https://github.com/frappe/erpnext/issues/56835 )) ([2264e25 ](2264e25cc6 ))
* resolve conflicts ([3aad7fe ](3aad7fee24 ))
* restore Save button on reverse journal entry (backport [#56770 ](https://github.com/frappe/erpnext/issues/56770 )) ([#56772 ](https://github.com/frappe/erpnext/issues/56772 )) ([4573cd1 ](4573cd15a9 ))
* **selling:** update sales order per billed on credit note submission ([224cf19 ](224cf19f33 ))
* set conversion_rate on quotation created from customer ([26905bc ](26905bc142 ))
* show only template items in Variant Of filter ([bebe011 ](bebe011636 ))
* skip item prices tab render for users without item price read access ([c964811 ](c964811293 ))
* skip stock reservation for opted-out production plans ([17598e2 ](17598e2626 )), closes [#56798 ](https://github.com/frappe/erpnext/issues/56798 )
* **stock:** backfill transferred qty for existing pick lists ([903d78c ](903d78cc43 ))
* **stock:** link job card in stock entry created from pick list (backport [#57031 ](https://github.com/frappe/erpnext/issues/57031 )) ([755b9cc ](755b9ccbc3 ))
* **stock:** pick list serial batch posting date ([#57015 ](https://github.com/frappe/erpnext/issues/57015 )) ([7e46be2 ](7e46be2a33 )), closes [#56951 ](https://github.com/frappe/erpnext/issues/56951 )
* **stock:** propagate project from job card to stock entry ([51d2077 ](51d2077eed ))
* **stock:** support quality inspection for stock entry by purpose (backport [#56446 ](https://github.com/frappe/erpnext/issues/56446 )) ([40ca3b5 ](40ca3b5e5d ))
* update BOM operations when routing is changed ([b2e6a39 ](b2e6a39743 ))
* update events order by date asc (backport [#56963 ](https://github.com/frappe/erpnext/issues/56963 )) ([#57056 ](https://github.com/frappe/erpnext/issues/57056 )) ([e2fd061 ](e2fd061b3d ))
* update modified timestamp in item.json ([f602ee0 ](f602ee0e73 ))
* use live source warehouse valuation for internal transfer purchase receipts (backport [#56431 ](https://github.com/frappe/erpnext/issues/56431 )) ([#56677 ](https://github.com/frappe/erpnext/issues/56677 )) ([1da28f2 ](1da28f2278 ))
* validate planned end date is not before planned start date in work order ([745baad ](745baad0d1 ))
* validate reverse GL entries on current date under immutable ledger (backport [#56709 ](https://github.com/frappe/erpnext/issues/56709 )) ([#56752 ](https://github.com/frappe/erpnext/issues/56752 )) ([eea4756 ](eea4756ce9 ))
* validate template and its variant in the same Pricing Rule ([159a253 ](159a2538da ))
### Features
* capture user persona during setup (backport [#56705 ](https://github.com/frappe/erpnext/issues/56705 )) ([#56707 ](https://github.com/frappe/erpnext/issues/56707 )) ([d9aa449 ](d9aa4491f1 ))
* **crm_settings:** auto-update crm sync settings on frappe crm install and uninstall ([cb2a930 ](cb2a930a32 ))
* explain FIFO allocation of fixed Discount Amount on Sales Order ([#56436 ](https://github.com/frappe/erpnext/issues/56436 )) ([62fed1d ](62fed1d562 ))
* **manufacturing:** create material request for raw materials from work order ([#56980 ](https://github.com/frappe/erpnext/issues/56980 )) ([144f92d ](144f92d58e ))
* **sla:** filter service level agreement link by document type (backport [#56954 ](https://github.com/frappe/erpnext/issues/56954 )) ([#56956 ](https://github.com/frappe/erpnext/issues/56956 )) ([393b5d1 ](393b5d1f74 ))
* **stock:** support partial transfer from pick list ([af495ed ](af495ed253 ))
### Performance Improvements
* avoid per-row Warehouse doc fetches in auto reorder job ([39b5e12 ](39b5e12305 ))
* batch bin lookups in delivery note stock update ([697e2c0 ](697e2c0b66 ))
v16.27.0
2026-07-13 07:41:31 +00:00
ruthra kumar
6bd903e45a
Merge pull request #57085 from frappe/mergify/bp/version-16-hotfix/pr-56817
...
feat: restructure Philippines chart of accounts with amortization sup… (backport #56817 )
2026-07-13 13:08:42 +05:30
ruthra kumar
5281d538ce
Merge pull request #56817 from Soham-ambibuzz/philipinnes_localization_coa_v3
...
feat: restructure Philippines chart of accounts with amortization sup…
(cherry picked from commit 33abc53d7a )
2026-07-13 07:28:54 +00:00
ruthra kumar
5261566b41
Merge pull request #57081 from frappe/mergify/bp/version-16-hotfix/pr-56902
...
fix(budget-variance): correct month shift in comparison chart (backport #56902 )
2026-07-13 12:55:57 +05:30
ruthra kumar
5bbb71ef76
Merge pull request #57083 from frappe/mergify/bp/version-16-hotfix/pr-56628
...
fix(journal-entry): fetch outstanding on foreign currency (backport #56628 )
2026-07-13 12:50:49 +05:30
Ejaaz Khan
d453781374
Merge pull request #57080 from frappe/mergify/bp/version-16-hotfix/pr-57071
...
fix: guard company logo lookup in default letterheads (backport #57071 )
2026-07-13 12:40:06 +05:30
SowmyaArunachalam
ec782ee20d
fix(journal-entry): fetch outstanding on foreign currency
...
(cherry picked from commit 07f641c48c )
2026-07-13 07:07:59 +00:00
Mohd Haris
703e9a728c
fix(budget-variance): correct month shift in comparison chart
...
The Budget Variance Report chart plotted the actual expense one month
earlier than the table (e.g. July actual shown under June).
build_comparison_chart_data() collected budget columns using
fieldname.startswith("budget_"). The dimension column "budget_against"
also matches that prefix, so it was added as an extra leading entry to
budget_fields and labels, while actual_fields had no such leading entry.
This shifted every actual value one position ahead of its label.
Skip the "budget_against" dimension column so budget/actual values and
labels stay aligned per month.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
(cherry picked from commit 48418eadb0 )
2026-07-13 07:02:18 +00:00
Diptanil Saha
f94eee3197
Merge pull request #56931 from frappe/version-16-hotfix
...
chore: release v16
2026-07-13 12:09:52 +05:30
Ejaaz Khan
0d80fef3bf
fix: set explicit table and logo widths in grey letterhead
...
(cherry picked from commit e39ca72997 )
2026-07-13 06:29:01 +00:00
Ejaaz Khan
7b543142a2
fix: guard company logo lookup in default letterheads
...
(cherry picked from commit 23c09fe0f3 )
2026-07-13 06:29:01 +00:00
Mihir Kandoi
90768c42d8
Merge pull request #57075 from frappe/mergify/bp/version-16-hotfix/pr-57073
2026-07-13 10:46:36 +05:30
ruthra kumar
fd3bebee02
Merge pull request #57023 from frappe/mergify/bp/version-16-hotfix/pr-56801
...
refactor: reversing exchange rate revaluation journals (backport #56801 )
2026-07-13 10:13:57 +05:30