Features
- Adds Holiday List Assignment to the Leave section of the Employee Connections tab, so HR users can check the assigned holiday list without leaving the employee record. (#4938)
- Adds anonymous tracking for HR features and early setup steps on new sites if enabled in System Settings. It also records daily attendance summaries and HR page visits, without employee details. (#4941)
- Replaces the "Create Interview" button on Job Applicant with "Schedule Interview", which opens a dialog for Interview Type, Scheduled On, From Time, To Time, and Interviewers. The interview is created directly from the dialog, and interviewers are filled from the selected interview type when available. (#4947)
- The Approver field in the Department form’s Leave Approvers, Expense Approvers, and Shift Request Approver tables now lists only System Users. (#4972)
Bug Fixes
- When push notifications are not configured, the app now skips push notification setup and avoids the related error message. (#4922)
- Updates leave date checks in Leave Allocation, Leave Application, Leave Ledger Entry, and Leave Period to treat From Date and To Date as field names. This avoids MariaDB 12.3 errors when leave dates are checked. (#4920)
- Cancelled Shift Assignment records are marked as Inactive. The Roster view creates a new Shift Assignment for the next date range instead of changing the cancelled one. (#4925)
- Half-yearly earned leave schedules in Leave Policy Assignment now use the employee's Joining Date instead of the calendar year. This adjusts the leave dates and amounts for assignments that use Joining Date and avoids extra leave entries. (#4927)
- Overtime Slips created from Payroll Entry now use an employee’s Relieving Date when it is earlier than the payroll entry’s End Date. This lets overtime for employees who leave partway through the month be submitted with payroll. (#4933)
- The image build now passes the list of apps as a secret file, so the published images include the apps selected for that build. (#4936)
- Makes Payable Account required in Expense Claim when the claim is not marked as paid, so the form asks for it before the claim is submitted. (#4940)
- The check-in button stays unavailable while the last check-in loads, so it does not default to
INbefore the current status is shown. (#4954) - Payroll formulas no longer accept
lambdaexpressions. (#4957) - Disabled users no longer appear in the approver list for Leave Application, Expense Claim, and Shift Request, whether they are assigned directly or through a department. (#4962)
- The Employee timeline now excludes cancelled Attendance records, so they no longer affect the timeline count. (#4973)
- The "Vehicle Expenses" report now uses only submitted Vehicle Log records when totaling service expenses. Cancelled logs no longer add to the reported amount. (#4976)
- Skips cancelled Leave Allocation records during the expiration process, leaving them unchanged instead of marking them as expired again. (#4975)
Performance Improvements
- The "Employee Hours Utilization Based on Timesheet" report now looks up each employee’s name and department in a single step instead of two separate lookups. This can make it quicker to generate for reports with many employees. (#4911)
Authors: @nareshkannasln, @pratheep-bit, @tank-bohr, @Dr-Blank, @deepeshgarg007, @iamkhanraheel, @ankush, @DanielRadlAMR, @akhtarmohsin 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:
Changes with the following types were excluded:
Reviewers: @asmitahase, @deepeshgarg007, @iamkhanraheel
AI content