Frappe PR Bot
fd00cebbd2
chore(release): Bumped to Version 16.26.1
...
## [16.26.1](https://github.com/frappe/erpnext/compare/v16.26.0...v16.26.1 ) (2026-07-01)
### Bug Fixes
* **stock:** support quality inspection for stock entry by purpose (backport [#56446 ](https://github.com/frappe/erpnext/issues/56446 )) ([613b3c1 ](613b3c16c2 ))
v16.26.1
2026-07-01 07:42:04 +00:00
Mihir Kandoi
fe6c276e72
Merge pull request #56687 from frappe/mergify/bp/version-16/pr-56672
...
fix(stock): support quality inspection for stock entry by purpose (ba… (backport #56672 )
2026-07-01 13:10:18 +05:30
Sudharsanan11
613b3c16c2
fix(stock): support quality inspection for stock entry by purpose (backport #56446 )
...
(cherry picked from commit 40ca3b5e5d )
2026-07-01 07:28:45 +00:00
Frappe PR Bot
666becc670
chore(release): Bumped to Version 16.26.0
...
# [16.26.0](https://github.com/frappe/erpnext/compare/v16.25.0...v16.26.0 ) (2026-07-01)
### Bug Fixes
* add permission checks in whitelisted functions (backport [#53103 ](https://github.com/frappe/erpnext/issues/53103 )) ([#56669 ](https://github.com/frappe/erpnext/issues/56669 )) ([52ea964 ](52ea9641ce ))
* adjust outstanding amount calculation in purchase and sales registers ([1a2a9b6 ](1a2a9b6cfc ))
* allow rename for Quality Inspection Parameter ([410a772 ](410a772510 ))
* **asset:** conditionally show Is Fully Depreciated field ([0e730bf ](0e730bf1c7 ))
* carry item-level project to Purchase Receipt GL entries (backport [#56568 ](https://github.com/frappe/erpnext/issues/56568 )) ([#56619 ](https://github.com/frappe/erpnext/issues/56619 )) ([0829cb4 ](0829cb45a8 ))
* **controllers:** fix supplier-RFQ portal list query (wrong column + Postgres DISTINCT) ([3abadc7 ](3abadc7a5f ))
* **crm:** using `get_list` instead of `get_all` in `get_opportunities` (backport [#56463 ](https://github.com/frappe/erpnext/issues/56463 )) ([#56466 ](https://github.com/frappe/erpnext/issues/56466 )) ([30ba950 ](30ba950abd ))
* do not allow closing the accounting period for future dates (backport [#56551 ](https://github.com/frappe/erpnext/issues/56551 )) ([#56577 ](https://github.com/frappe/erpnext/issues/56577 )) ([df1b443 ](df1b4431b6 ))
* exclude virtual child doctypes from deletion in transaction deletion record ([8a66570 ](8a665709d2 ))
* gross profit calculation with rate adjustment entries ([9c5b063 ](9c5b063884 ))
* handle missing serial and batch bundle in print format ([c84d4a2 ](c84d4a282d ))
* ignored posting time 00:00:00 in RIV (backport [#56571 ](https://github.com/frappe/erpnext/issues/56571 )) ([#56573 ](https://github.com/frappe/erpnext/issues/56573 )) ([b4d83e5 ](b4d83e542a ))
* job card timer issue (backport [#56405 ](https://github.com/frappe/erpnext/issues/56405 )) ([#56406 ](https://github.com/frappe/erpnext/issues/56406 )) ([54c45d7 ](54c45d7b22 ))
* **lead:** added missing read permission check on `get_lead_details` (backport [#56272 ](https://github.com/frappe/erpnext/issues/56272 )) ([#56274 ](https://github.com/frappe/erpnext/issues/56274 )) ([bd54c7f ](bd54c7fea8 ))
* **letter-head:** guard company lookups when doc has no company field ([89059a9 ](89059a990f ))
* link portal address rows to web form ([3a480c0 ](3a480c08b1 ))
* manual backport of [#55896 ](https://github.com/frappe/erpnext/issues/55896 ) ([490e125 ](490e125267 ))
* party aliases should be no copy ([0b42241 ](0b42241682 ))
* precision issue causing COGS in inter transfer PR (backport [#56420 ](https://github.com/frappe/erpnext/issues/56420 )) ([#56425 ](https://github.com/frappe/erpnext/issues/56425 )) ([e3958ad ](e3958ad7bb ))
* remove dead bundle helper call from purchase receipt print format ([2eaa635 ](2eaa635ab6 ))
* remove frappe.utils from jinja context in process statement of accounts ([37ec2d0 ](37ec2d0edd ))
* rewrite item rate calculation (backport [#56315 ](https://github.com/frappe/erpnext/issues/56315 )) ([ef3d444 ](ef3d444a60 ))
* set mr status to received when per_received is 100 even if per_ordered < 100 ([4181246 ](41812462b4 ))
* show contextual balance label on party dashboard for net balances ([a886d0b ](a886d0b445 ))
* skip qty over-allowance check for non-stock items only ([bc313dc ](bc313dc09d ))
* **stock:** value batch/serial return from ledger when original receipt has no bundle (backport [#56631 ](https://github.com/frappe/erpnext/issues/56631 )) ([#56646 ](https://github.com/frappe/erpnext/issues/56646 )) ([2c18c16 ](2c18c16be6 ))
* sync Stock Reconciliation difference amount with GL after reposting (backport [#56574 ](https://github.com/frappe/erpnext/issues/56574 )) ([#56585 ](https://github.com/frappe/erpnext/issues/56585 )) ([e834098 ](e834098c28 ))
* update qty in future SLEs when cancelling documents ([#56638 ](https://github.com/frappe/erpnext/issues/56638 )) ([01374db ](01374db8da ))
* update_qty_in_future_sle skips SLEs with same posting datetime ([#56612 ](https://github.com/frappe/erpnext/issues/56612 )) ([5aa62d1 ](5aa62d1cda ))
* Use correct doctype name for PCV perm-check (backport [#56606 ](https://github.com/frappe/erpnext/issues/56606 )) ([#56611 ](https://github.com/frappe/erpnext/issues/56611 )) ([762ce5c ](762ce5c684 ))
* use correct variable to fetch valuation method ([d2c8df9 ](d2c8df9451 ))
### Features
* **accounts:** add configurable job timeout for Process Period Closing Voucher ([d389014 ](d389014e57 ))
v16.26.0
2026-07-01 03:34:53 +00:00
Diptanil Saha
628b932d55
Merge pull request #56652 from frappe/version-16-hotfix
...
chore: release v16
2026-07-01 09:03:17 +05:30
Diptanil Saha
b5c09fa993
Merge pull request #56680 from frappe/mergify/bp/version-16-hotfix/pr-56678
...
fix(gross_profit): correct GP calculation for rate adjustment debit notes (backport #56678 )
2026-07-01 08:42:13 +05:30
diptanilsaha
66f99668a9
test(gross_profit): added test cases for rate adjustment entry
...
(cherry picked from commit 17ef5d6034 )
2026-07-01 03:02:44 +00:00
diptanilsaha
9c5b063884
fix: gross profit calculation with rate adjustment entries
...
(cherry picked from commit b9f330a158 )
2026-07-01 03:02:44 +00:00
mergify[bot]
52ea9641ce
fix: add permission checks in whitelisted functions (backport #53103 ) ( #56669 )
...
* fix: add permission checks in whitelisted functions (#53103 )
(cherry picked from commit a6e78c2eea )
# Conflicts:
# erpnext/stock/report/stock_qty_vs_batch_qty/stock_qty_vs_batch_qty.py
* chore: resolve conflict
---------
Co-authored-by: Priyal Rawal <135015851+Priyal208@users.noreply.github.com >
Co-authored-by: Diptanil Saha <diptanil@frappe.io >
2026-06-30 16:36:13 +00:00
Diptanil Saha
7396fca4be
Merge branch 'version-16' into version-16-hotfix
2026-06-30 22:02:57 +05:30
Mihir Kandoi
38994ec915
Merge pull request #56664 from frappe/mergify/bp/version-16-hotfix/pr-56662
...
fix: use correct variable to fetch valuation method (backport #56662 )
2026-06-30 20:45:25 +05:30
Diptanil Saha
a1412a61c9
refactor: port bulk_transaction_log existence check to the query builder ( #56659 )
...
Co-authored-by: Mihir Kandoi <kandoimihir@gmail.com >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-30 20:44:11 +05:30
ruthra kumar
62703de452
Merge pull request #56658 from frappe/mergify/bp/version-16-hotfix/pr-56655
...
ci: warmup test data along with DB (backport #56655 )
2026-06-30 20:37:34 +05:30
Mihir Kandoi
d2c8df9451
fix: use correct variable to fetch valuation method
...
(cherry picked from commit 1492c9fbc3 )
2026-06-30 15:04:46 +00:00
ruthra kumar
05aa68b53b
ci: warmup test data along with DB
...
(cherry picked from commit dcdbf9df17 )
2026-06-30 12:31:03 +00:00
Khushi Rawat
169a4c82a4
Merge pull request #56649 from frappe/mergify/bp/version-16-hotfix/pr-56569
...
fix(asset): conditionally show Is Fully Depreciated field (backport #56569 )
2026-06-30 15:55:20 +05:30
Mohd Haris
0e730bf1c7
fix(asset): conditionally show Is Fully Depreciated field
...
The "Is Fully Depreciated" field was hidden on the Asset form (hidden: 1),
so it could never be set for manually entered existing assets.
Make it visible based on context:
- Existing Asset with Calculate Depreciation off -> visible and editable
- Calculate Depreciation on -> visible but read-only and forced unchecked
(it is only meaningful for manually entered assets)
The unchecked value is enforced in the form script (immediate feedback on
toggle and on load) and in server-side validate() so it can never be saved
as checked while depreciation is being calculated.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
(cherry picked from commit a7c1ebacbe )
2026-06-30 10:05:12 +00:00
mergify[bot]
2c18c16be6
fix(stock): value batch/serial return from ledger when original receipt has no bundle (backport #56631 ) ( #56646 )
...
fix(stock): value batch/serial return from ledger when original receipt has no bundle (#56631 )
* fix(stock): value batch/serial return from ledger when original receipt has no bundle
* test(stock): add test to validate the valuation of serial/batch for return when original receipt has no bundle
(cherry picked from commit 6184c057db )
# Conflicts:
# erpnext/stock/doctype/serial_and_batch_bundle/test_serial_and_batch_bundle.py
Co-authored-by: Sudharsanan Ashok <135326972+Sudharsanan11@users.noreply.github.com >
2026-06-30 15:34:51 +05:30
rohitwaghchaure
01374db8da
fix: update qty in future SLEs when cancelling documents ( #56638 )
2026-06-30 14:27:46 +05:30
Mihir Kandoi
5d8f653476
Merge pull request #56604 from frappe/mergify/bp/version-16-hotfix/pr-56231
...
fix(controllers): fix supplier-RFQ portal list query (wrong column + Postgres DISTINCT) (backport #56231 )
2026-06-30 12:03:21 +05:30
Mihir Kandoi
55716a509f
Merge pull request #56636 from frappe/mergify/bp/version-16-hotfix/pr-56621
...
fix: set mr status to received when per_received is 100 even if per_o… (backport #56621 )
2026-06-30 12:01:53 +05:30
MochaMind
c782658056
chore: sync translations to version-16-hotfix ( #56617 )
2026-06-30 11:24:54 +05:30
pandiyan
41812462b4
fix: set mr status to received when per_received is 100 even if per_ordered < 100
...
(cherry picked from commit a3c5ef6aa3 )
2026-06-30 05:41:09 +00:00
mergify[bot]
0829cb45a8
fix: carry item-level project to Purchase Receipt GL entries (backport #56568 ) ( #56619 )
...
fix: carry item-level project to Purchase Receipt GL entries (#56568 )
Purchase Receipt stock and asset GL lines used the item row's cost center
but always fell back to the document-level project, unlike Purchase Invoice
which uses the item-level project. add_gl_entry accepted a project argument
but never wrote it to the GL dict, so the inward, Stock Received But Not
Billed, landed cost, divisional loss, sub-contracting and exchange rate
lines dropped the row's project.
Write project into the GL dict and pass project=item.project on the entries
that were missing it, so project behaves like cost center and matches
Purchase Invoice.
Ticket: 72523
(cherry picked from commit 6f97c7199c )
Co-authored-by: Jatin3128 <140256508+Jatin3128@users.noreply.github.com >
2026-06-29 23:30:48 +05:30
mergify[bot]
762ce5c684
fix: Use correct doctype name for PCV perm-check (backport #56606 ) ( #56611 )
...
fix: Use correct doctype name for PCV perm-check (#56606 )
closes https://github.com/frappe/erpnext/issues/56593
(cherry picked from commit 747374e767 )
Co-authored-by: Ankush Menat <ankush@frappe.io >
2026-06-29 19:04:47 +05:30
rohitwaghchaure
5aa62d1cda
fix: update_qty_in_future_sle skips SLEs with same posting datetime ( #56612 )
2026-06-29 15:38:35 +05:30
Mihir Kandoi
3abadc7a5f
fix(controllers): fix supplier-RFQ portal list query (wrong column + Postgres DISTINCT)
...
rfq_transaction_list had two defects introduced when it was converted to the query
builder:
1. `party.supplier == party[0]` compared supplier to a column literally named "0"
(a stray index on the DocType, not the intended `parties[0]` value). This renders
as `supplier = \`0\`` / `supplier = "0"` and errors on BOTH engines
(MariaDB: Unknown column '0'; Postgres: column "0" does not exist), so the
supplier portal RFQ list was completely broken.
2. SELECT DISTINCT ordered by `creation`, which is not in the select list. Postgres
rejects this ("for SELECT DISTINCT, ORDER BY expressions must appear in select list").
Compare against `parties[0]` and add `creation` to the select list.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
(cherry picked from commit a7d9078bf4 )
# Conflicts:
# erpnext/controllers/tests/test_website_list_for_contact.py
2026-06-29 08:24:18 +00:00
ruthra kumar
1a348d8e6e
Merge pull request #56598 from frappe/mergify/bp/version-16-hotfix/pr-54597
...
fix: adjust outstanding amount calculation in purchase and sales registers (backport #54597 )
2026-06-29 11:30:40 +05:30
ruthra kumar
1eed77e605
Merge pull request #56038 from frappe/mergify/bp/version-16-hotfix/pr-56034
...
refactor(test): remove custom utility for company creation (backport #56034 )
2026-06-29 11:19:49 +05:30
ruthra kumar
490e125267
fix: manual backport of #55896
2026-06-29 11:09:23 +05:30
Sowmiya P K
1a2a9b6cfc
fix: adjust outstanding amount calculation in purchase and sales registers
...
(cherry picked from commit 6115af720b )
# Conflicts:
# erpnext/accounts/report/purchase_register/purchase_register.py
2026-06-29 10:52:49 +05:30
ruthra kumar
93b28f3337
refactor(test): update assertion for new test records
...
(cherry picked from commit afeaba5142 )
2026-06-29 09:41:48 +05:30
ruthra kumar
1a9fcfb0cc
refactor(test): broken test case in accounts controller
...
(cherry picked from commit 59a69fc497 )
2026-06-29 09:41:48 +05:30
ruthra kumar
a8aa73baae
refactor(test): remove even more dead code
...
(cherry picked from commit 3d109571ee )
2026-06-29 09:41:48 +05:30
ruthra kumar
65202d2be1
refactor(tests): reuse persistent master data instead of creating company per test
...
Replace per-test company creation in setUp() with persistent master data
from BootStrapTestData. Add Test PCV Company to test_records.json so it
becomes a persistent fixture rather than a throwaway created per test run.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
(cherry picked from commit 6e62750c2f )
# Conflicts:
# erpnext/accounts/report/financial_ratios/test_financial_ratios.py
2026-06-29 09:41:47 +05:30
MochaMind
1cc2890f3e
chore: update POT file ( #56591 )
2026-06-28 21:26:46 +02:00
mergify[bot]
e834098c28
fix: sync Stock Reconciliation difference amount with GL after reposting (backport #56574 ) ( #56585 )
...
* fix: sync Stock Reconciliation difference amount with GL after reposting (#56574 )
* fix: sync Stock Reconciliation difference amount with GL after reposting
* fix: placement of recalculate differece amount function
(cherry picked from commit c7ef42ef98 )
# Conflicts:
# erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
# erpnext/stock/stock_ledger.py
* chore: fix conflicts
Removed unused import and fixed import order.
* chore: fix conflicts
Refactor update_rate_on_stock_reconciliation to use recalculation method for difference amount.
---------
Co-authored-by: rohitwaghchaure <rohitw1991@gmail.com >
2026-06-27 17:08:54 +05:30
Mihir Kandoi
655d6dac87
Merge pull request #56587 from frappe/mergify/bp/version-16-hotfix/pr-56586
...
fix: party aliases should be no copy (backport #56586 )
2026-06-27 16:44:33 +05:30
Shllokkk
36a9c7a0d3
Merge pull request #56386 from frappe/mergify/bp/version-16-hotfix/pr-56337
...
fix: show contextual balance label on party dashboard for net balances (backport #56337 )
2026-06-27 16:36:07 +05:30
Mihir Kandoi
b35c5c1568
chore: resolve conflicts
2026-06-27 16:34:53 +05:30
Mihir Kandoi
e64e9866fb
chore: fix conflicts
2026-06-27 16:34:20 +05:30
mergify[bot]
b292be34cb
chore(crm_settings): remove unused delete_custom_fields import (backport #56558 ) ( #56583 )
...
Co-authored-by: Diptanil Saha <diptanil@frappe.io >
2026-06-27 16:29:48 +05:30
Mihir Kandoi
0b42241682
fix: party aliases should be no copy
...
(cherry picked from commit 057af21cd8 )
# Conflicts:
# erpnext/buying/doctype/supplier/supplier.json
# erpnext/selling/doctype/customer/customer.json
2026-06-27 10:55:31 +00:00
mergify[bot]
df1b4431b6
fix: do not allow closing the accounting period for future dates (backport #56551 ) ( #56577 )
...
fix: do not allow closing the accounting period for future dates (#56551 )
(cherry picked from commit 5e60e4faa7 )
Co-authored-by: rohitwaghchaure <rohitw1991@gmail.com >
2026-06-27 12:04:11 +05:30
mergify[bot]
112b773193
chore: removing controllers from pre-commit eslint hooks exclude list (backport #56575 ) ( #56579 )
...
Co-authored-by: Diptanil Saha <diptanil@frappe.io >
2026-06-27 01:37:18 +05:30
mergify[bot]
b4d83e542a
fix: ignored posting time 00:00:00 in RIV (backport #56571 ) ( #56573 )
...
fix: ignored posting time 00:00:00 in RIV (#56571 )
(cherry picked from commit 31f89b72b4 )
Co-authored-by: rohitwaghchaure <rohitw1991@gmail.com >
2026-06-26 19:42:45 +05:30
mergify[bot]
9bc240c4f0
ci: bump pre-commit actions to v3.0.1 (backport #56562 ) ( #56567 )
...
Co-authored-by: Diptanil Saha <diptanil@frappe.io >
2026-06-26 17:06:08 +05:30
Mihir Kandoi
1b7486f61a
Merge pull request #56565 from frappe/mergify/bp/version-16-hotfix/pr-56559
...
fix: remove dead bundle helper call from purchase receipt print format (backport #56559 )
2026-06-26 16:54:11 +05:30
Shllokkk
2eaa635ab6
fix: remove dead bundle helper call from purchase receipt print format
...
(cherry picked from commit b9f5a77fa7 )
2026-06-26 11:07:51 +00:00
Mihir Kandoi
733a837c18
Merge pull request #56550 from frappe/mergify/bp/version-16-hotfix/pr-56127
...
fix: allow rename for Quality Inspection Parameter (backport #56127 )
2026-06-26 15:56:43 +05:30