Release notes 2020
Version 3.20.2
December 27th, 2020Changes
- Added an option to visual settings in the timetable screen to display the periods in the top to bottom direction
- Added an option to split selected lessons in a lesson list. Splitting creates two lessons for each selected lesson with the sum of their durations equal to the original lesson's duration. Splitting a lesson of duration 1 has the same effect as cloning.
- Added an option to timetable spreadsheet export to generate files containing separate sheets per teacher or class group
Fixed issues
- Cannot delete an organisation during import
- Lesson tiles sometimes appear mangled with multiple multi-period option blocks in several consecutive tiles
Version 3.20.1
December 21th, 2020Fixed issues
- Cannot initialize the computation module with organisation data larger than WebAssembly stack size
- Cannot update data from XML with option blocks the codes of which have changed
Version 3.20.0
December 18th, 2020New features
- Skolaris en espaňol! The Spanish version of the UI is now available.
- Added a Kick algorithm. It identifies the lessons causing infeasibilities to be forcefully rescheduled before the next tabu search iteration, thus improving the probability of finding a feasible solution.
- Reworked the Option block creation:
- Added a button to create bands for a single subject easily
- Fixed the issue whereby the creation of a block with many options overflowed the screen horizontally
- Added the possibility to create lessons and assign teachers automatically in one step with the block creation. This speeds up the creation process immensely.
- Replaced the input fields for individual teaching group codes with a customizable template to generate all the codes from
Other changes
- Changed the penalty calcuation for subgroup constraints to reduce the effect of a class group with more subgroups having a higher importance than a class group with fewer subgroups. Such constraints are now penalized by a certain fraction of their configured penalties.
- Added static timetable analysis check for not enough periods in a day for subgroup or teacher to fit in the necessary lessons
- Added a bulk manipulation of lesson durations
- The lesson duration used when creating a new lesson is now remembered for the next lesson creation
- Removed the spinner from class group and teacher screens that appeared when loading time exceeded a certain threshold. It proved to be more of a disruption than help.
Fixed issues
- Tabu search tabu mechanism sometimes doesn't correctly identify the immovable lessons in the computation module
Version 3.19.1
November 24th, 2020Fixed issues
- The timetable screen manipulates removed lessons of a deleted class group if the timetable screen had been opened and closed before deleting the class group
- The timetable creation wizard sometimes shows incorrect fitness when starting optimisation after completing the data analysis
- Cannot exit the timetable wizard after navigating back from its last stage
- The division and subgroup deletion dialogs show raw HTML in Czech localization
Version 3.19.0
November 20th, 2020New features
- Added undo/redo for timetable filter in the timetable screen. This allows users to quickly go back to their previous filter after checking a constraint break from the fitness breakdown, for example.
- Added batch assignment of configuration sets for teachers and class groups. The action is accessible in their respective lists after selecting one or more objects. This greatly simplifies tasks such as assigning specific configuration to all part-time teachers at once.
- Added visual settings for screens of all objects with timeslot availabilities. This improves consistency with the timetable and term screens which allow controlling the visualisation of gaps between periods.
Other changes
Class groups, divisions, subgroups
- Changed the way the total number of periods is displayed in tables: When subgroups in the same division have an uneven number of periods, the minimum number with a '+' symbol is now shown instead of the question mark.
- Added option to remove relevant teaching groups when deleting class groups, divisions and subgroups
- Added traversal controls to the division screen
- Added option to reveal the default ("whole") division and subgroup in the class group screen. These are system objects representing the whole class group internally. They cannot be manipulated, but sometimes it is useful to observe them.
Timetable screen
- Added optional e-mail notification about finished optimisation. Previously this was only available when running the wizard.
- Improved responsiveness of the filter panel for small screens
- Improved visualisation of the selected week for multi-week scenarios
Miscellaneous
- Added Settings tab to the lesson set screen where all optimisation settings (previously located in the Timetable tab) are available
- Changed the wording "timetable week" to "cycle" in the English localisation, as this seems to be the preferred nomenclature
- Updated sub-account registration e-mail
- Added Mozilla Firefox to the list of recommended browsers
Fixed issues
Timetable screen
- A feasible solution found by the algorithm is sometimes not loaded into the UI
- Cannot view current constraint configuration while optimisation is running
- Javascript error sometimes occurs when displaying snapshots with stale fitness (after changing constraint configuration)
- Stale snapshots sometimes reside in the list after completing the wizard
Cover
- It is possible to create two calendar weeks with the same start date
- The time zone is incorrect in daily and summary reports
Miscellaneous
- Number of lessons shown in the divisions table is incorrect if multiple subgroups from one division participate in the same course
- Cannot delete a person associated with a user or teacher
- Responses to additional data requests sometimes contain objects not accessible for reading by the logged in user
Version 3.18.4
October 14th, 2020Changes
- Added full support for Mozilla Firefox
- Added export of timetables to Bromcom MIS
- Added batch locking and unlocking of visible lessons to the timetable menu
- Changed ordering of class groups in PDF export to reflect year groups
- The curriculum builder can now be closed even with empty year groups
- Renamed the 'Export' action to 'Download XML' for organisations, terms and timetables
Fixed issues
- Timetable filter retains value even if the selected entity is deleted
- Automatic lesson linking sometimes excludes suitable candidates that are members of compatible lesson groups
- ASc import fails when a generated teaching group name is too long
- Arbor import fails for academic units that are taught two subjects with different names but the same id
Version 3.18.3
August 20th, 2020Changes
- Swapped Data and Configuration sections in the main navigation, so that the more frequently used section is above the other one
- Added access to the curriculum builder to the dashboard for organisations without courses
- Added Teacher assignment to the Organisation section of the main navigation. The assignment screen now displays existing assignments. These cannot be changed as the tool is primarily aimed at new courses with no teachers, as created by the curriculum builder.
- Added 'Learn more' buttons to the curriculum builder and teacher assignment action panels
Fixed issues
- Sorting of class groups on the dashboard is sometimes incorrect for Edookit organisations
- Sorting of class groups, teachers and subjects on the dashboard doesn't respect the sorting rules of the selected language
Version 3.18.2
August 12th, 2020Changes
- Improved the auto-linking of lessons
- Enhanced the capability of the computation module to move groups of lessons around simultaneously
Fixed issues
- Import from Cloud School MIS crashes when it encounters unscheduled existing events
- Some steps modifying the timetable are tested repeatedly during the optimisation, slowing down the process
Version 3.18.1
August 4th, 2020Changes
- Improved optimisations based on similarity of subgroups in the computation module for better performance
Fixed issues
- Multi-course subject lesson spread not working for auto-linked lessons with distinct subjects
- The Subgroup: Campus transits per week constraint is mistakenly tagged as a teacher constraint
- URL of the list of lesson sets contains an upper-case letter
Version 3.18.0
August 1st, 2020New features
- Added import from school management information system Cloud School by Advanced Learning
- Added full support for Microsoft Edge browser
- Added limited support for the automatic timetable optimisation on devices and browsers not supporting multi-threaded WebAssembly modules. This includes mobile phones, tablets and Mozilla Firefox on desktop and laptop computers.
Other changes
- Revised and improved the rules for the auto lesson linking optimisation. This is potentially a breaking change. If you find the Automatic lesson linking constraint broken in your existing timetables, please open one of the affected subgroups and disable the "Allow combining lessons" switch. For timetables that are allowed to change, simply rerunning the optimisation will fix the problem.
- Improved computation performance for class groups with only lessons the duration of which is a multiple of two
- Static analysis warning about invalid lessons for a lesson set clustering is no longer triggered if the lessons in the course have different teachers. Neither is it critical if there are more lessons than days and the distribution is required on the course.
- Changed calculation of penalties for the Minimum free days and Cluster busy times constraints to better reflect the magnitude of the transgressions and thus help with their elimination
Fixed issues
- The ➕ buttons appear in the dashboard even though the user doesn't have the access rights to create new objects
- Current solution can be overwritten with an empty solution when constraint settings are changed in the timetable view and the fitness of the current solution is worse than the fitness of an empty solution (i.e. extremely bad)
- Error message appears when deleting a subgroup after deleting all teaching groups in which the subgroup was included, if the subgroup screen had previously been opened
- Lesson tile teacher information doesn't update after changing the lesson's teacher using the popup editor in the timetable view
Version 3.17.2
July 21st, 2020Fixed issues
- Cannot open an existing timetable after changing a cycle of a non-regular lesson that had been scheduled into week 2 or later
Version 3.17.1
July 13th, 2020Fixed issues
- Lesson placement doesn't work for subjects involved in option blocks
Version 3.17.0
July 8th, 2020New features
- Added import from school management information systems Arbor and Bromcom. This release mainly helps UK schools bring their data to Skolaris quickly and effortlessly. A completed timetable is then just a few steps away.
Fixed issues
- Database error appears intermittently when deleting users or organisations
Version 3.16.8
June 28th, 2020Changes
- Added static timetable analysis warning about option blocks with no available timeslots
- Improved performance of the optimisation for organisations with a single campus by up to 20 per cent
- Improved server security with a better configuration of HTTP headers
Version 3.16.7
June 23rd, 2020Changes
- Added a message to the dashboard to help users continue after finishing the Course teacher assignment
- Added Clone action for class groups in the main list. This has the same effect as creating a new class group and selecting an existing one as a template.
- Class group divisions involved in option blocks are no longer cloned when cloning the class group
Fixed issues
- Cannot change a code of a subgroup that is not included in any teaching groups
- Cannot clone a class group with divisions and subgroups whose names do not include the name of the class group
Version 3.16.6
June 17th, 2020Changes
- Curriculum builder now creates extra periods for the academic term to allow adding option blocks later without changing the class group and teacher configurations
Fixed issues
- Plain number inputs are displayed instead of sliders when configuring class groups and teachers immediately after finishing the Curriculum builder
Version 3.16.5
June 11th, 2020Fixed issues
- Dynamic timetable analysis fails if teacher time field limits are used
- Constraints related to time fields are missing Czech localisation
Version 3.16.4
June 9th, 2020Fixed issues
- Read-only timetable view is broken
- Lesson sets missing from the batch actions menu in the list of all lessons
- Cannot create more than one lesson set directly from a lesson list without page reload
- Lesson set name doesn't show after creation in the lesson list
- Tooltip for Add button in access rights editor causes horizontal scrollbar to appear and flicker
Version 3.16.3
June 7th, 2020Fixed issues
- Unsaved changes to the timetable can be lost after editing an entity configuration in the TT view
- A lesson can be placed at an invalid position in the timetable when cancelling unsaved changes if its duration has previously been edited (increased) in the TT view
Version 3.16.2
June 5th, 2020Fixed issues
- Cannot activate or deactivate an entity (class group, teacher, ...) from the list
- Raw database error displayed when deleting a used room configuration
Version 3.16.1
June 3rd, 2020Changes
- Leaving the Import screen always navigates to the dashboard. This prevents accidentally navigating back to an object that was deleted or overwritten during the import.
Fixed issues
- Curriculum builder doesn't allow adding an entity with the same code as a previously deleted one
- Configuration set attached to an organisation visible to a user with a read access to the organisation, despite explicitly denying read access to such a user
- Room preference constraint break sometimes reported even though all room preference constraints are turned off
- Computation module sometimes crashes when entity configuration set contains values incompatible with the actual days and periods
Version 3.16.0
May 29th, 2020New features
- Added new constraints related to time fields both for teachers and class groups. These constraints can be used to model scenarios such as "one free morning is required for a teacher, but we don't care which", "not more than X total lessons are allowed in all afternoons throughout the week for a class group", or "it is ideal for teachers to have zero gaps in their schedule, one per day is acceptable, two are forbidden", etc..
See the time field limits page for details.Time field limits extend the current functionality which handles a subset of similar scenarios using existing constraints such as Minimum free days, Maximum gaps per day etc. These constraints continue to work and are sufficient for most schools most of the time.
- Penalties for gap-related constraints are now quadratic. This means that a break of size two is four-times as bad as a break of size one. This should better reflect the timetablers' mental model and their subjective assessment of the timetable.
For example, consider the longest acceptable gap for teachers without penalty is a gap of one period. Where previously a gap of three periods would produce the same penalty as two gaps of two periods, it now produces a penalty twice as large, thus steering the optimisation towards preferring the latter case.
Other changes
- Added a new constraint Subgroup: Maximum transits between campuses per week. The motivation and behaviour is the same as for the previously added teacher version of this constraint.
- Course: Daily booking constraint penalty is now quadratic (see above), regardless of the course optimisation settings, if not disabled. For the users this means better distribution without changing the configuration.
- The best (possibly infeasible) timetable is now available as a snapshot after finishing the timetable creation wizard ("TT wizard"), because it might be considerably better than the presented result. Please see the Results section in the wizard documentation for details.
- Simplified the constraint settings used in the TT wizard. Also added proper documentation.
- Added a button allowing to fix the warning about bad subgroup size directly from the TT wizard's data checking stage
- Cleaned up the screen for the last step of the TT wizard (i.e. timetable search) and extended the documentation
- Timetable snapshots panel is now automatically opened after finishing the optimisation in the timetable screen, when it may contain interesting results other than the presented one
- Help texts for advanced features throughout the system now appear as pop-up dialogs when a feature is first used, together with a link to a more thorough explanation here in the documentation. This is consistent with the pattern that first appeared in the curriculum builder.
- Simplified the option block creation screen and added extensive help
- Expanded and unified the class group and teacher configuration screens. Also added values to the labels for all the sliders.
- Room name is now required when creating a room in an organisation imported from Edookit. This prevents errors when the data is exported back.
- Improved UI loading time
Fixed issues
- Teacher lunch break constraints sometimes incorrectly calculated
- Subgroup lunch break constraints sometimes incorrectly calculated for class groups with many divisions
- Automatic multi-course subject spreading sometimes not determined correctly for class groups with many divisions
- Allowing room multi-booking sometimes slows down the optimisation
- Config set selectors overflowing off-screen to the right if the set name is too long
- A message about data modified by another user appears intermittently even when there's no other user working on the same data. This could happen usually when timetable updates were saved quickly in succession.
- Inconsistent font size for object codes inside the coloured icons when used as list items, such as in the curriculum builder
- Culprit description missing from constraint break list in the fitness breakdown dialog
- Lessons shared between multiple class groups are deleted when one of the participating class group is deleted from the list
- Lesson set screen title doesn't include the object code
- Skolaris is sometimes auto-translated for Czech users in Google Chrome which can lead to incredible mess on the screen and completely incomprehensible texts.
Version 3.15.2
May 3rd, 2020Changes
- Improved performance of the computation module by up to 20 % depending on school size
- Static analysis of subgroup and teacher min and max periods limits now marks problems as critical when the constraints that cannot be satisfied are configured as hard
- Added a message about the free trial limitation to the PDF export dialog
Fixed issues
- Timetable fitness assessment sometimes incorrect for class groups with incomplete option blocks
- Disabling automatic multi-course subject spreading for a subgroup sometimes doesn't work
Version 3.15.1
April 19th, 2020Changes
- Improved performance of the computation module
Version 3.15.0
April 14th, 2020New features
- Added new constraint Teacher: Maximum transits between campuses per week. This addresses a common problem: Previously Skolaris had no means to distinguish between the quality of the timetable where a single teacher had five transits per week (one each day), and the timetable where five teachers each had one transit per week, which is usually the preferred scenario.
- Added visualisation of days with transit(s) between campuses in the timetable screen. Previously it had been difficult to identify days on which transits occurred only during long-enough breaks between periods (as opposed to during periods). All days when transit(s) occur are now clearly marked with the bus icon, same as the periods used for transit. See day three in the screenshot.
Other changes
- Changed the constraint penalties for maximum transits between campuses per day to be calculated as quadratic. This means for a break of magnitude two the penalty is four times as much as for a break of magnitude one.
Thus a class group with two transits per day is now twice as bad as two class groups with one transit per day, whereas previously these two situations incurred the same penalty. The same applies to teachers. - Added visual settings to the term screen. It is now possible to toggle the visualization of the gaps between periods, just like in the timetable screen.
- Extended information for campus transit constraint breaks in the fitness breakdown
- Flattened Term navigation by removing the 'More' button. Lessons and time fields are now always visible.
- Improved curriculum builder help
Fixed issues
- Subgroup names not showing when hovering over subgroup icon in lesson tile in timetable view
- Can't edit organisation access rights
- Footer buttons overlap dropdown menus
- Screen broken after clicking 'Back' in browser after opening 'Create new' dialog in lists of objects
Version 3.14.2
April 7th, 2020Changes
- Added warning (exclamation mark) to the Workload column in the list of teachers when the workload is over 100 %, meaning a timetable for the teacher cannot be assembled
- Active term and organisation are now marked in their respective lists
- Moved bulk of timetable help to the documentation Wiki from the help dialog
Fixed issues
- Javascript error in Curriculum builder when used to create more than one organisation without page reload
- Opened popup dialog (e.g. with class group configuration set) stays open after leaving term screen.
- After deleting a term, a term with the same name cannot be recreated
Version 3.14.1
April 3rd, 2020Changes
- Deleting a class group deletes all related lessons. Previously all lessons stayed intact, because they're internally related to teaching groups, rather than class groups.
- When cloning a class group, existing teaching groups and courses are reused if possible. This happens for example when a class group of the same name as the new one had existed and then was removed.
Fixed issues
- Changing filter in timetable view is slow
- Code uniqueness not checked in UI when creating a new entity
- Teaching group contents not updated in the master list after a teaching group has been changed
- Action buttons in some timetable warning cards do not work
Version 3.14.0
April 1st, 2020New features
- Added Curriculum builder and Teacher course assignment tools. These are invoked automatically when a new organisation is created and are aimed at helping new users set up their basic school data such as year groups, class groups, subjects, courses and teachers quickly.
- Added People section, which can be found in the Data navigation group. This mainly allows Skolaris to send e-mails to users or teachers in specific situations. For example, a user whose username is not a valid e-mail address can now reset a forgotten password after associating the account with a person record. People can be associated with users or teachers via a dropdown in their respective properties.
- Added drag & drop support for mobile devices. That means users can now manually adjust timetables on tablets and mobile phones, as well as use the new curriculum builder and teacher assignment tools to the full extent.
Other changes
- Improved speed of rendering all lists (tables)
- Improved appearance of the Reset password e-mail
Fixed issues
- When timetable optimisation is finished, incorrect result is sometimes reported when constraints had changed
- 'Learn more' link in term screen doesn't work
- Inaccessible configuration set not displayed properly in year group optimisation settings
- Tooltips not visible when adding teachers for a newly created lesson
- Javascript error sometimes appears when leaving the Cover assignment screen
- Navigation panel flickers in and out after logging in
- Badge award dialog sometimes appears without any badge when creating a timetable
Version 3.13.0
March 6th, 2020New features
- Added a new constraint Subgroup: Multi-course subject spreading. It is responsible for scheduling lessons of subjects taught in multiple courses to distinct days. Typically those would be subjects taught to both the whole class group and the subgroup in separate courses.
If such functionality is undesirable for a subgroup, it can be turned off in its Optimisation settings panel. By default it is on.
The same effect could up to now be achieved by creating lesson sets for spreading for each subgroup-subject combination, which could lead to the user having to create dozens of lesson sets. - Added static analysis warnings related to lesson set spreading. Users will now be warned in the timetable creation wizard when:
- Unsuitable lessons are selected for spreading, such as lessons belonging to the same course, when course distribution is turned on at the same time.
Other changes
- Added constraint configuration info to lesson sets list
- Subgroup late start will no longer reported unless the subgroup is available at an earlier period with strict constraint checking mode turned off.
- Added lesson count to the course screen top bar
Fixed issues
- Low-level error appears when loading application after login expiration
- Course distribution incorrectly calculated if the teacher is not available on all days
Version 3.12.0
February 17th, 2020New features
- Added a new constraint checking mode. For the last two years the constraints have always been checked strictly, without considering the fact that sometimes there are multiple constraints with different weights competing against each other and some always remain unsatisfied (broken).
This has mostly been annoying for the users in case of room preferences - a subject might require a specific room and a class group might have a general room preference. In a feasible timetable the class group preference would never be satisfied and would always be reported as broken (which is mathematically correct).
However, from the user's perspective the assignment of the subject's required room to the lesson should incur no penalty, because no other assignment is better. That's how the new relaxed checking mode behaves. A broken room preference is only reported when a better assignment is possible.
The relaxation is by no means limited to room preferences. It also identifies available days for courses and adjusts distribution calculation accordingly, for example.
We will continue extending the relaxed checking for cases when the mathematical penalty is in discord with the intuitively expected penalty, while keeping the strict mode available as well. This way we believe we can continue improving the correlation between the objectively calculated fitness and the subjective quality of the timetables.Strict mode off:
- Added static analysis warnings related to lesson set linking and clustering. Buttons are provided so that the users can fix the problems without leaving the timetable wizard screen. Users will now be warned in the timetable creation wizard when:
- Unsuitable lessons are selected for clustering, such as lessons belonging to the same course
- Unsuitable lessons are selected for linking, such as lessons that share a teaching group
Other changes
- Because Mozilla Firefox no longer supports multi-threaded processing, only fitness assessment (and not automatic optimisation) is available in that browser until further notice.
- Improved scaling of the course distribution constraint calculation. Also globally reduced the setting weight for all courses to limit its impact on the overall fitness of existing timetables.
- Added Courses tab to the subgroup screen
- Setting minimum and maximum of 1 by default when creating a new course day spread
- Reduced the default space between periods in the timetable when period break visualisation is turned on
- Limited timetable export for printing to one class group for trial users
Fixed issues
- Raw database error appears when, after creating a new lesson, the same timetable screen is entered, left and reentered again
- Error occurs when reopening the master lessons list after deleting a lesson set
- Cannot create new objects such as lessons on small displays
- Constraint, class group and teacher configuration sets can be edited while the optimisation is running
- Lesson set column sometimes shows incorrect values in master lessons list after creating a new set from that list
- Course screen top bar distorted on small displays
- Additional information missing from lesson set room preference constraint breaks
Version 3.11.0
February 12th, 2020New features
- Added static analysis warnings related to course distribution and spread. Users will now be warned in timetable creation wizard when:
- Spread definition collides with the distribution
- Spread requires more lessons than are available to be satisfied
- The course with a spread contains non-weekly lessons, which might lead to unexpected behaviour
- Spread definition completely determines the position of all lessons in the course, rendering the distribution redundant
- There are conflicts between the spread definition and the availability of lesson resources
Other changes
- Added a different mode to the course screen for simpler editing of a its spread and optimisation settings. This mode is activated when the course is opened in a popup from a warning card presented by the timetable static analysis.
- Added an option to create a new constraint config set from the timetable screen, similar to what has already been possible from the optimisation settings panels for class groups and teachers
- Reduced experience points for some of the awarded badges
Fixed issues
- Week number incorrect in lesson tile after editing the lesson's cycle from the timetable screen
- Warning about incorrect sum of subgroup sizes sometimes doesn't show in class groups list
Version 3.10.2
February 2nd, 2020Fixed issues
- Cannot open cover and public timetable filters
- Cannot open lesson cover assignment
- Cover status icon not changed after lesson is covered or cover is removed
- Name column in the list of available teachers for a lesson requiring cover is too narrow on small displays
Version 3.10.1
January 17th, 2020Changes
- Simplified timetable filter panel and improved its responsiveness
Fixed issues
- Class group and teacher configuration options don't show correctly in the Term configuration wizard
Version 3.10.0
January 11th, 2020New features
- Added an option to visualize time between periods in the timetable screen. This is essential for users who need to see the lunch break and recess during the timetabling process:
On: Off:
- Added fitness assessment module for browsers that do not support the timetable optimisation. This allows users to view timetable health and fitness on mobile devices and in Microsoft Edge.
Other changes
- Added warning banner for completely unavailable period in term screen with a button to fix the problem
- Improved performance and reduced memory usage of the computation module
Timetable filter panel
- Added button for configuring class groups and teachers when a class group or teacher filter is applied
- Moved the timetable overview interaction toggle button to the visual settings panel
- Improved layout on small screens
Fixed issues
- Error appears in Javascript console when leaving the class group config set screen
- Timetable week filter value not remembered in the browser
- Period times missing input boxes in term screen