From a2626ed55f437f69b99a29cfb0b9ead219f59458 Mon Sep 17 00:00:00 2001 From: Frappe PR Bot Date: Tue, 7 Apr 2026 18:01:31 +0000 Subject: [PATCH] chore(release): Bumped to Version 15.104.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit # [15.104.0](https://github.com/frappe/erpnext/compare/v15.103.1...v15.104.0) (2026-04-07) ### Bug Fixes * add support to fetch items based on manufacture stock entry; fix how it's done from work order ([e9ce0a4](https://github.com/frappe/erpnext/commit/e9ce0a41e6ac9a8739b0f93d390473f798b1f3d2)) * add v15 compatibility for scrap item ([652bd39](https://github.com/frappe/erpnext/commit/652bd396d4cbe0e96e2bc47de4e641d51965575f)) * auto-set source_stock_entry ([b87b445](https://github.com/frappe/erpnext/commit/b87b445802ec96f1848013c0b28d524306bd8bcd)) * avg stock entries for disassembly from WO ([44d4079](https://github.com/frappe/erpnext/commit/44d40795df70cead2956ffc70de298e335ada2fd)) * correct warehouse preference for disassemble ([b8ddc2f](https://github.com/frappe/erpnext/commit/b8ddc2f2b9c9910f1c65be5b1bef0d29a806a3e4)) * create source_stock_entry to refer to original manufacturing entry ([55ee1dc](https://github.com/frappe/erpnext/commit/55ee1dcd04309c40091a492e0e6f6b7dbecd0d7e)) * custom button to disassemble manufactured stock entry with work order ([835ae27](https://github.com/frappe/erpnext/commit/835ae27b38d21abf468562abdd7d5988e5595597)) * disassembly prompt with source stock entry field ([44f2e94](https://github.com/frappe/erpnext/commit/44f2e9480d8ef49a0b12562268e9111040e4ea91)) * do not repost GL if no change in valuation ([0063201](https://github.com/frappe/erpnext/commit/0063201818a8085665f4c1e58b08790ec20e217e)) * do not show inv dimension unnecessarily in stock entry (backport [#53946](https://github.com/frappe/erpnext/issues/53946)) ([#53950](https://github.com/frappe/erpnext/issues/53950)) ([e159c79](https://github.com/frappe/erpnext/commit/e159c797667d679aa5fb20ce6abdca23f4a07d21)) * ensure compatibility with v15 ([8b42fcf](https://github.com/frappe/erpnext/commit/8b42fcf274bd56a65f2e59cda69c1a3c06ca7c93)) * GL entries for different exchange rate in the purchase invoice ([def62cf](https://github.com/frappe/erpnext/commit/def62cf3fe0c30a406b93382312b9270e643c9b5)) * handle disassembly for secondary / scrap items ([229dc23](https://github.com/frappe/erpnext/commit/229dc23f974d7c7bf95d837aad16ba1301f82780)) * include rejected qty in tax (purchase receipt) (backport [#53624](https://github.com/frappe/erpnext/issues/53624)) ([#53971](https://github.com/frappe/erpnext/issues/53971)) ([3fbfad1](https://github.com/frappe/erpnext/commit/3fbfad1b9b4fb00de1cf5b2c4fa238ab356aa9a0)) * manufacture entry with group_by support ([841b507](https://github.com/frappe/erpnext/commit/841b507502c63ff10c7baf55627f5bcbca89e3d9)) * **manufacturing:** handle null cur_dialog in BOM work order dialog (backport [#54011](https://github.com/frappe/erpnext/issues/54011)) ([#54014](https://github.com/frappe/erpnext/issues/54014)) ([cb0a548](https://github.com/frappe/erpnext/commit/cb0a548a95c87d55d8fd9eef3eab7d10ad8b67f1)) * not able to set operation in work order ([62d5870](https://github.com/frappe/erpnext/commit/62d58702a03f016893a9e7537425ce37a9cb729e)) * prevent selection of group type customer group in customer master ([7a227e0](https://github.com/frappe/erpnext/commit/7a227e048ee15f450cbf0b000d5226194144b1a9)) * process loss with bom path disassembly ([eee6d7e](https://github.com/frappe/erpnext/commit/eee6d7e56684182f4aab51d787541d1650a9938e)) * **promotional_scheme:** toggle enable state between Buying and Selli… (backport [#54110](https://github.com/frappe/erpnext/issues/54110)) ([#54111](https://github.com/frappe/erpnext/issues/54111)) ([5b7e6eb](https://github.com/frappe/erpnext/commit/5b7e6eb83178effd5d253a7f132c64c7641eb406)) * remove reference in serial/batch when document is cancelled (backport [#53979](https://github.com/frappe/erpnext/issues/53979)) ([#53988](https://github.com/frappe/erpnext/issues/53988)) ([e33abee](https://github.com/frappe/erpnext/commit/e33abeef7f7a42e185d6818974906f6c4370e91a)) * remove unnecessary param, and use value from self ([0b0dccd](https://github.com/frappe/erpnext/commit/0b0dccd294aa1595d72774b9b9241e6931e42b4a)) * resolve user permission error on status change by updating user … (backport [#54033](https://github.com/frappe/erpnext/issues/54033)) ([#54059](https://github.com/frappe/erpnext/issues/54059)) ([14085de](https://github.com/frappe/erpnext/commit/14085de332abb9628cb3224bd8f46f9314e11bd2)) * set bom details on disassembly; abs batch qty ([84d5b52](https://github.com/frappe/erpnext/commit/84d5b524832b6dd31e1f1f190d5dd6f9a3b8a05e)) * set serial and batch from source stock entry - on disassemble ([df049cd](https://github.com/frappe/erpnext/commit/df049cd27705ef0805c8df92d79de01829fc439b)) * set_query for source stock entry ([849b2e6](https://github.com/frappe/erpnext/commit/849b2e6ebf977204643109e83e60a8ee68bbc557)) * show current stock qty in Stock Entry PDF (backport [#53761](https://github.com/frappe/erpnext/issues/53761)) ([#54031](https://github.com/frappe/erpnext/issues/54031)) ([af0116c](https://github.com/frappe/erpnext/commit/af0116cdc57359c17be8baf6ab6fc8bf91dfa9ee)) * skip discount amount validation when not saving ([13eab9f](https://github.com/frappe/erpnext/commit/13eab9f993c7037ab235d76838bb415cda7fa7ef)) * **stock:** update stock queue in SABE for return entries ([05d6cf5](https://github.com/frappe/erpnext/commit/05d6cf5c9a4f0b3de830709b3dfc87038f846ae7)) * support creating disassembly (without link of WO) ([ef15c05](https://github.com/frappe/erpnext/commit/ef15c0581dc75ebdbd7b1ed19eaf2729e57997c6)) * sync paid and received amount (backport [#53039](https://github.com/frappe/erpnext/issues/53039)) ([#54107](https://github.com/frappe/erpnext/issues/54107)) ([0505684](https://github.com/frappe/erpnext/commit/0505684d229d8e47371d6a49aeb46178459838ed)) * **test:** do not use is_group enabled customer group in test ([97684d3](https://github.com/frappe/erpnext/commit/97684d3daed4da01de7dc24f8fcef6ae426d3af4)) * **test:** pin posting date in test_depreciation_on_cancel_invoice ([7f72189](https://github.com/frappe/erpnext/commit/7f721896657f2706ab445b4d68f1b033eaef2280)) * **test:** use non-group customer group in test setup ([ea3fcc2](https://github.com/frappe/erpnext/commit/ea3fcc214b83c97d6b1faed48e76a9c7ed42c270)) * transactions where update stock is 0 should not create SLEs (backport [#54035](https://github.com/frappe/erpnext/issues/54035)) ([#54076](https://github.com/frappe/erpnext/issues/54076)) ([bcf59e7](https://github.com/frappe/erpnext/commit/bcf59e71717455842a7124044175191f8da3f8c2)) * update min date based on transaction_date (backport [#53803](https://github.com/frappe/erpnext/issues/53803)) ([#54024](https://github.com/frappe/erpnext/issues/54024)) ([a71d32e](https://github.com/frappe/erpnext/commit/a71d32e668efdac630c1a5faa4a3596e2a957fbb)) * use get_value ([8f01d12](https://github.com/frappe/erpnext/commit/8f01d12b5eb4207d7838ce9ee027de06a6fbf311)) * **ux:** refresh grid to correctly persist the state of fields ([3c327d5](https://github.com/frappe/erpnext/commit/3c327d5225849b84db403a7901fe3e0fd48eceb6)) * validate qty that can be disassembled from source stock entry. ([583c7b9](https://github.com/frappe/erpnext/commit/583c7b9819597df4695ff07f3b1dc97c32c9feb9)) * validate work order consistency in stock entry ([d690a0c](https://github.com/frappe/erpnext/commit/d690a0c6bd3124ed65e1049f84fe96c3401a6fe5)) * validation test for customer group ([7794f30](https://github.com/frappe/erpnext/commit/7794f3033ed524f2e6334f4fc2f110091622b362)) * **warehouse_capacity_dashboard:** removed `escape` from template (backport [#53907](https://github.com/frappe/erpnext/issues/53907)) ([#53908](https://github.com/frappe/erpnext/issues/53908)) ([efdb004](https://github.com/frappe/erpnext/commit/efdb004f0bcce1612c158a3376d806596a303707)) ### Features * Allow Editing of Items and Quantities in Work Order ([1d36cb5](https://github.com/frappe/erpnext/commit/1d36cb55cdc8ce9f59a82a89b84f44c7d3c0f0c0)) * croatian_address_template (backport [#53888](https://github.com/frappe/erpnext/issues/53888)) ([#54057](https://github.com/frappe/erpnext/issues/54057)) ([ee81268](https://github.com/frappe/erpnext/commit/ee812687e6f8c1d57e3c1d4c542e22de898d3343)) * **timesheet:** allow partial billing and handled return ([21805bd](https://github.com/frappe/erpnext/commit/21805bde1fad3c244165fccd57bf306571149773)) ### Reverts * botched backport ([#53967](https://github.com/frappe/erpnext/issues/53967)) ([22774fd](https://github.com/frappe/erpnext/commit/22774fdf877db3eccf15d9783f4054373ba04ced)), closes [#53776](https://github.com/frappe/erpnext/issues/53776) [#53766](https://github.com/frappe/erpnext/issues/53766) [#53767](https://github.com/frappe/erpnext/issues/53767) --- erpnext/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/erpnext/__init__.py b/erpnext/__init__.py index 2d5c9840d9d..87f8a2b40b4 100644 --- a/erpnext/__init__.py +++ b/erpnext/__init__.py @@ -4,7 +4,7 @@ import inspect import frappe from frappe.utils.user import is_website_user -__version__ = "15.103.1" +__version__ = "15.104.0" def get_default_company(user=None):