Releases: frappe/hrms
v16.9.0
Features
- Adds ready-made app files to GitHub Releases, so installs and updates can use them instead of building them from scratch. (#4629)
- Adds a "Forgot Password?" button on the login page so users can reset their password, and a change password option on the profile page. (#4642)
Bug Fixes
- Loan repayments created from Salary Slip now use the slip's End Date instead of today's date, so loan instalments due in that pay period are included in the repayment. (#4639)
- The Employee Incentive form no longer limits the Salary Component field by Company. This avoids the error that can appear when selecting a salary component. (#4659)
- The Goal tree view now shows only goals you have permission to see, matching the records available in the list view. Date range filters also apply correctly when you browse goals in this view. (#4668)
- Salary Slip now uses the Exempted From Income Tax setting for deductions added through Additional Salary. Exempt deductions lower the taxable amount when the slip is submitted through Payroll Entry. (#4671)
- The roster view now checks permissions before showing Leave Application and Shift Assignment records. This keeps roster details limited to items the user can access. (#4666)
- Updating a Salary Component now clears the cached Salary Structure, so recent formula and condition changes are used without waiting for a manual refresh. (#4675)
Other Changes
- Lets you leave Reason for adjustment blank when creating a Leave Adjustment from Leave Allocation. (#4636)
New Contributors
- @sahil170401 made their first contribution in #4659
Authors: @deepeshgarg007, @elshafei-developer, @sahil170401, @Hemil-Sangani, @iamkhanraheel, @krishna-254, @rmehta, @Nihantra-Patel
Reviewers: @deepeshgarg007, @asmitahase
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
- test
- ci
- docs
- style
- build
- refactor
v15.61.0
Features
- Adds a "Forgot Password?" button on the login page so users can reset their password, and a change password option on the profile page. (#4641)
Bug Fixes
- The Employee Incentive form no longer limits the Salary Component field by Company. This avoids the error that can appear when selecting a salary component. (#4664)
- Adds a check so Expense Claim only shows advances for Employee records the user can view. (#4652)
- The roster view now checks permissions before showing Leave Application and Shift Assignment records. This keeps roster details limited to items the user can access. (#4665)
- Updating a Salary Component now clears the cached Salary Structure, so recent formula and condition changes are used without waiting for a manual refresh. (#4674)
- The Goal tree view now shows only goals you have permission to see, matching the records available in the list view. Date range filters also apply correctly when you browse goals in this view. (#4667)
Authors: @sahil170401, @Hemil-Sangani, @iamkhanraheel, @krishna-254, @deepeshgarg007
Reviewers: @asmitahase, @deepeshgarg007
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
- test
- ci
- docs
- style
- build
- refactor
Assets: version-16
Merge pull request #4682 from asmitahase/employers-contribution feat: employer contribution type in salary component
v16.8.0
Features
- The Job Application web form now includes a Resume Attachment field so applicants can upload a resume file with their application. (#4584)
- Adds permission checks for shift changes so only users with access can make them. Roster queries now reject unsupported employee and shift filters. (#4583)
- Adds a CTC field to Salary Structure Assignment and a "View Breakup" button on submitted Salary Structure Assignment documents. The button opens the "Employee CTC Break-up" report, which uses the CTC stored on the assignment to show the salary breakdown. (#4545)
- The Job Requisition form now asks for confirmation before saving a new entry that matches an existing one, instead of stopping the save. This lets users continue when another requisition is intentional. (#4595)
Bug Fixes
- Updates Attendance Request so it can still be submitted for the other half of the day when half-day leave is already approved for that day. It also changes the other half of the existing Attendance from Absent to Present. (#4585)
- Fixes Expense Claim so claims with an advance stay "Unpaid" when the advance covers only part of the claim amount. (#4591)
- Only users with permission can view Interview Feedback. Accessing add-on details now requires sign-in. (#4600)
- Adds employee photos to the "Employee CTC Break Up" report, alongside each employee’s name and designation. (#4606)
- Adds Project and Task permissions to the HR User and HR Manager roles. This lets Employee Onboarding and Employee Separation create and delete their related Project and Task records without needing the Projects User role. (#4610)
- Attendance requests for past dates now fill in the assigned Shift even if the related Shift Assignment is inactive. (#4616)
- Adds a one-day buffer before Shift Assignment records are marked inactive, so assignments that end today stay active until the following day. (#4619)
- Adds checks when showing or saving employee information, leave requests, holiday lists, expense approvals, activity timelines, and file uploads. Salary Slip creation and preview also follow the same access rules. (#4623)
- Allows Salary Slip loan repayments to be submitted without a linked employee when employee-based accounting is off. (#4631)
Authors: @Nihantra-Patel, @asmitahase, @deepeshgarg007, @iamkhanraheel, @krishna-254
Reviewers: @ruchamahabal, @asmitahase, @deepeshgarg007
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:
- style
- docs
- refactor
- test
- build
- ci
- chore
v15.60.4
Bug Fixes
- Adds the missing Do Not Include in Accounts and Exempted From Income Tax fields to Salary Slip, so these salary component settings are carried over when a slip is created. (#4567)
- When a Leave Allocation expires, its New Leaves Allocated and Total Leaves Allocated values reset to 0, and the form refreshes so the updated values appear immediately. The New Leaves Allocated field is hidden for earned leave allocations. (#4559)
- Fixes Expense Claim so claims with an advance stay "Unpaid" when the advance covers only part of the claim amount. (#4590)
- Adds a one-day buffer before Shift Assignment records are marked inactive, so assignments that end today stay active until the following day. (#4618)
- Attendance requests for past dates now fill in the assigned Shift even if the related Shift Assignment is inactive. (#4620)
Authors: @deepeshgarg007, @iamkhanraheel, @krishna-254
Reviewers: @ruchamahabal, @deepeshgarg007
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:
- style
- docs
- refactor
- test
- build
- ci
- chore
Assets: version-16-hotfix
Merge pull request #4626 from frappe/l10n_develop fix: sync translations from crowdin
Assets: develop
Merge pull request #4627 from rmehta/feat/build-and-upload-assets feat: build and upload assets to GitHub Releases
v16.7.1
Bug Fixes
- Hides the Naming Series field in Employee unless "Naming Series" is selected in HR Settings, preventing confusion from an unused field. (#4528)
- Clicking the "Frappe HR" logo in the Roster NavBar now opens the HR setup page instead of the missing People page, eliminating the "Page people not found" error. (#4538)
Other Changes
- Allows HR Managers to cancel Payroll Entry records without permission errors, automatically canceling the linked Journal Entry and Payment Ledger Entry in the background. (#4547)
- The "Employee Leave Balance" report now includes approved leave adjustments in its totals, so balances reflect all changes. (#4553)
Authors: @krishna-254, @iamkhanraheel, @AbdullahAnsari-03
Reviewers: @asmitahase, @ruchamahabal, @deepeshgarg007
AI content
For these release notes, we used an LLM (OpenAI o3) 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
- ci
- style
- refactor
- build
- test
v15.60.3
Bug Fixes
- Hides the Naming Series field in Employee unless "Naming Series" is selected in HR Settings, preventing confusion from an unused field. (#4552)
Other Changes
- Allows HR Managers to cancel Payroll Entry records without permission errors, automatically canceling the linked Journal Entry and Payment Ledger Entry in the background. (#4546)
Authors: @iamkhanraheel, @krishna-254
Reviewers: @asmitahase, @ruchamahabal, @deepeshgarg007
AI content
For these release notes, we used an LLM (OpenAI o3) 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
- test
- build
- style
- ci
- refactor
- docs
v16.7.0
Features
- Automatically fills Shift in Attendance and Attendance Request when you select an employee and date, using the employee’s assigned or default shift. (#4496)
Bug Fixes
- The shift assignment dialog now resets all fields when you close it, preventing leftover data from reappearing. It also loads matching employee options right away based on the current entry. (#4505)
- Adds internal code improvements for Training Result, Employee Onboarding, and Exit Interview records; no visible user-facing changes. (#4506)
- Calculates the waiting period for Leave Application using calendar days instead of working days, so holidays now count toward the delay. Updates the Allow Leave Application After field label in Leave Type to match this calendar-day rule. (#4503)
- Adds internal safeguards that prevent wrong data types from causing errors across recruitment features like Job Applicant, Interview, and Job Offer. (#4507)
- Updates internal code of Appraisal to add detailed type information; this does not change any visible behaviour. (#4509)
- Updates background processes for Employee and Employee Payment Entry to standardize internal code typing; no screens or workflows change for users. (#4511)
- Refactors internal payroll functions; all payroll features continue to work as before. (#4513)
- Fixes incorrect holiday counting in Leave Application, so holidays no longer reduce your leave balance. Streamlines leave allocation and policy assignment, reducing submission errors. (#4512)
- Adds a configuration flag that blocks whitelisted server methods lacking type hints. (#4514)
- Updates "Monthly Attendance Sheet" report to read each employee’s holidays from their Holiday List Assignments, so Weekly Offs and Holidays now display correctly even when the employee’s Holiday List field is blank. (#4524)
Authors: @deepeshgarg007, @asmitahase, @iamkhanraheel, @krishna-254
Reviewers: @deepeshgarg007, @asmitahase, @ruchamahabal
AI content
For these release notes, we used an LLM (OpenAI o3) 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:
- refactor
- ci
- chore
- build
- test
- style
- docs