Subscribe to Receive Email Notifications about Platform and Service Updates
# What's New in Lab On Demand
What's New in the other LODS platforms?
## **Released February 26, 2021** **Lab Series Save-as** The option to save a lab series as a new series has been added to Lab on Demand. After selecting the Save-as link from the lab series edit page, a dialog box will be shown allowing you to name the new series, choose a different organization, and deselect any lab profiles you would not like to carry over into the new series. **Restricted Editing Permissions Around Lab Profiles Published to The Template Gallery** Editing of Lab Profiles and dependencies will be restricted to those able to publish to the gallery when a lab profile is already published to the corresponding gallery (Public or Organization). A banner has also been placed at the top of any lab profile published to a gallery. Dependencies include: - VM profiles - Container Profiles - Cloud Templates - Access Control Policies - Instructions - Differencing Disks - Start States **Azure Cloud Slice** - Azure CSS labs now maintain their Access Control Policies when created via the Save menu within the lab client. - Added additional retries to Azure Management Group operations. - Azure hosted VMs running in Azure CSR labs now properly deallocate and resume when a lab is saved. - The lab instance details page now supports showing all subscriptions for multiple subscription CSS labs. **Code Labs** - Code lab custom tests can now be edited after creation. - Code labs now retain custom tests after the page has been refreshed. - Code labs custom tests now properly display returned results for multiple tests. - A default language for Code labs can now be chosen from the Code lab creation menu. - Code labs can now be immediately started after creation, without adding a default test or language. **Launch on Datacenter** Hyper-V and vSphere lab profiles can now be launched against a chosen datacenter. To view the Launch on Datacenter option in the lab profile, lab developers will need organization management and storage management permissions. The organization they manage will all need to be configured so that storage is available across multiple datacenters. **LOD Improvements and Fixes** - Updated VM Gateway Client Scripts. - Updated translations for Japanese, Simplified Chinese, Korean, French, and Spanish. - When searching for Lab Instance Errors from a selected Cloud Subscription Pool, search results are now returned properly. - Fixed a bug preventing an admin from launching a second instance of participant lab belonging to a shared lab class in Lab on Demand. - Fixed a bug preventing multi-subscription labs from importing with the correct number of subscriptions. - Fixed a bug preventing vSphere labs from saving or resuming after having been moved between lab hosts. - Fixed a bug preventing an instructor from launching into a shared environment lab when initially launched in conjunction with a participant lab. ## **Released February 12, 2021** **Central Authentication** Lab on Demand implemented enhanced account security for user accounts that sign in with a username/password. You can learn more about these security measures [here](https://www.learnondemandsystems.com/enhanced-account-security-faq/). Local users will be prompted to reset their LOD password upon login at https://labondemand.com. Users logging in through API or Corporate Azure AD will not be prompted to reset their password. **Multiple Cloud Slice Subscriptions** Lab on Demand now supports multiple Azure subscriptions in Cloud Slice Subscription labs. **AWS Services** AWS Cloudshell Service now supported. **LOD Improvements and Fixes** - Lab authors can now disable individual scripts within automated activities. - Code labs now allow tests and test inputs to be created without first adding a code language. - IDLx activities can now be hidden from the scoring output of a lab instance. - The "go to page" feature of outcomes now correctly sends users to the top of the target page. - The search field is no longer obscured while searching within the Cloud Resource Template editor. - Full screen view is no longer obscured within the Cloud Resource Template editor. - Added a Launch on Datacenter option to launch on-prem virtualization labs on a target datacenter. - Added a rescoreAll parameter to the ScoreActivities API call. Triggering scoring of a lab with the rescoreAll=1 parameter rescores all lab activities, overwriting all previous results. - The number of ports utilized by a container lab is now shown in the basic information tab of the lab profile. - An Email Confirmation has been added when creating an account. - vLan ID can now be specified per network on vSphere fabric lab profiles. - Fixed a bug resulting in broken links when on a Lab on Demand class. - Fixed a bug resulting in an incompatibility between Wait for Heartbeat option on VM and Deploy in Background option on resource group in cloud tab of a lab profile. - Fixed a bug where cloud security review would persist when updating the parent of a child lab profile - Fixed a bug preventing child labs from inheriting resources when updating to a different parent profile. ## **Released January 30, 2021** **Code Labs** Code Labs can help you provide a comprehensive development environment for learners to grow their coding skills. Each lab will open to a browser based code editor where students can test their coding skills against challenges defined by lab authors. When the student is ready, they may run the code to return a pass/fail for each challenge. Code labs will be released with support for the following languages: - C - C# - Go - Java - PHP - Python - R **New Note Fields** Notes may now be left on the following entities from the details page. A notes dialog will also prompt when updating an existing entity. - Organizations. - Cloud Credentials Pools. - Cloud Subscription Pools. **LOD Improvements and Fixes** - Support for AWS EventBridge and Backup added. - LTI 1.3 integration now supports multi-domain instances of Canvas LMS. - Virtual Machines can now be located and added to lab profiles by Virtual Machine Profile ID. - Updated compatibility between the transfer lab instances feature and the multiple active instances per user feature. - Cloud Security Reviews may now simultaneously be requested for both parent and children lab profiles by selecting the Include Children checkbox. - Updated the error message received when lab launches for an organization exceed the organization wide limit. - ID is now available as an output option when searching for lab series. - Type text will now function correctly for Enhanced Session Mode VMs without clipboard redirection enabled. - Removed the Show Navigation Bar option from the Advanced lab settings. - Fixed a scrolling issue when lab developers that occurred when arranging activities. - Fixed a bug preventing the Show Detailed Results toggle from displaying on newly created scored labs. - Fixed a bug preventing lab developers from saving changes to their account information. - Fixed a bug that prevented saved labs from resuming. - Fixed a scrolling issue when lab developers were rearranging activities. - The Move Up/Move Down buttons are now populated when adding new scripts to an activity. ## **Released January 16, 2021** **Activity Based Assessment Outcomes** Outcomes offer adaptive learning experiences based on the result of an automated activity or question. This allows lab authors to provide additional guidance if a student were to answer a question incorrectly, or move the student forward at an expedited pace if the student answers correctly. An outcome consist of an event, condition, action, and target. - Event: When a question is Answered or Evaluated, or when a script is Evaluated. - Conditions: - Correct - Incorrect - Correct or Incorrect - Answer = (Question only) - Score Value = - Score Value > - Score Value >= - Score Value < - Score Value <= - Actions: Can set either a variable or progress the student to a different page within the lab. - Target: The variable to set or page number the student will be forwarded to. **AWS Service** - Cloud Formation Deployments will now reflect of the name of the Cloud Formation Template, allowing for custom naming. Special characters will be removed and spaces replaced with short dashes. - AWS *Retry Cleanup* will now use the same logic to renew the account as when a lab is torn down. - There is now an AWS Bulkhead Status display at the top of the AWS host page. This shows current operations impacting the AWS host. - Fixed a naming conflict when using two AWS cloud formation templates in the same stack **Automated Activity Output** - Automated Activities now have the option to disable output to the lab user. This feature will default to showing output to the user, but can be disabled, so that the user only sees the Correct/Incorrect Answer Feedback. - When a script fails due to a scripting error or platform error, we will now note it on the lab instance details page. It is also available under ActivityResults > ScriptResults in the lab Details API call. **LOD Improvements and Fixes** - Cloud resource groups will be checked by default when creating a lab profile using inheritance. - When creating a lab profile from the template gallery, the org selection will now default to the first org managed by the lab developer. - Updated the error message for labs left in a starting state for more than thirty minutes. - Added a feature that allows admins to edit the number of days a lab may be saved for individual lab instances. - The automatically prompt user to extend time feature now honors an organizations "Maximum Lab Extension Hours" value. - URL encoding in IDLx will no longer under certain circumstances double encode image titles and links. - Fixed a bug that prevented subsequent labs from launching against an AWS account after a nearly blank lab is torn down. - Assigning a background cloud deployment now persists when adding a resource template simultaneously. - Fixed a bug that prevented API Consumers with LTI 1.3 integration from correctly provisioning a JWK based on the Client ID. - Incoming LTI 1.3 tokens will now be recorded to the lab instance details page for better visibility. ## **Released December 4, 2020** **External Instruction Service** - Optimizations have been made to support upcoming changes in ADO and GitHub, to change the primary branch name from Master to Main. - Optimizations have been made to remove invalid webhooks in ADO repositories, when syncing external instructions with a lab profile. - Optimizations have been made when syncing a lab profile with an ADO repository and the repository belongs to an ADO project that has been synced with other lab profiles. **LOD API now supports a new parameter in the Launch call; maxSaveDays** - This parameter allows an organization to set the number of days a student may save their lab, subject to the contracted configuration on the API consumer. **ABA Display and Output Options** - Basic Markdown can now be used in Correct Answer Feedback and Text fields of Activity Based Assessments. Emojis, Images , Bold, Italic, Strikethrough, Bullets, Numbers, and Headers are all supported. Characters may be escaped as needed using ``` \``` just prior to the character. - When ABA feedback or output from an activity is returned, the output will be displayed under the evaluation button when On-Demand evaluation is enabled. - When enabled, the evaluation button for Task Lists can be configured to display over or under the lists of tasks in the lab instructions. - Removed incorrect invalidation message when configuring an ABA Task List. - Task list sort order is now properly reflected in the lab profile edit instructions preview pane. **AWS Improvements** - AWS output tokens are now properly shown on first display in Hyper-V and vSphere lab profiles. - Improved logic when tearing down multiple AWS Cloudslice lab instances. **LOD Improvements and Fixes** - Lab Series can now be scheduled for disablement at a specified time and date. The labs will no longer be available to launch after the series is disabled. - Fixed a typo on the pre-instance dashboard when clearing instances. - Lab profile details page hardened against application error when lab series is null. - Terms and Conditions are now linked in the footer of Lab on Demand. - Fixed a bug resulting in users exceeding the maximum number of retakes allowed in a lab series. ## **Released November 20, 2020** **AWS v2 Lab Host** - AWS lab fabric support has been updated with changes that will improve stability, efficiency and scalability. **Access Control Policy Search Filter Added** - A new filter has been added to Access Control Policies (ACP) search, to filter results based on the JSON content. This will provide the ability to quickly locate ACPs in Lab on Demand that use specific resources. **Detailed Scoring Results** - When a lab uses Activity Based Assessments (ABA) that are scored, it is now possible to show detailed score results to the lab user when the lab is scored. This option is configured in the Activity editor within the lab profile. **Activity Based Assessment Script Order** - It is now possible to change the order of scripts when an Activity Based Assessment (ABA) has multiple scripts. Changing the order of the scripts in the UI also changes the order that the scripts will be executed. **Shared Lab Improvements** - When a Shared Environment lab is cancelled, a warning is now displayed to notify the user that all participant labs will be cancelled. - When setting a lab to be a Shared Class Environment, the setting to save/cancel labs when the Last Activity threshold is exceeded, is now unchecked. This will prevent participant labs from being cancelled when the Shared Environment is cancelled due to inactivity. **LOD Improvements and Fixes** - Added a new IDLx replacement token that shows the region where a cloud resource group is deployed. - Activity Task Lists now list results in lab instance details page. - Fixed a bug that prevented the Override Client Landing Page from displaying when a cloud platform or virtualization platform was not configured on the lab profile. - Fixed a bug that prevented a scored lab created via the save as function from properly inheriting scoring information. - Fixed a bug causing errors when viewing, modifying, or exporting lab manuals after exporting and importing an AWS lab series. - Fixed a bug that prevented the Enable Navigation Warning setting from working in some lab configurations. ## **Released November 6, 2020** **Support Chat** - Lab on Demand now has a support chat option on the Admin site, as well as in the lab client. Users can initiate a chat session with our Support Team. This feature is enabled by default for all organizations, but it can be disabled if needed from the organization profile. Chat transcripts are stored in a support ticket, and a copy is emailed to the user. **Lab on Demand legacy Flash and Silverlight Machine Remote Controllers Removed** Lab on Demand legacy Flash and Silverlight machine remote controllers have been removed. - Any students still using Flash or Silverlight machine remote controller are encouraged to migrate to the HTML5 machine remote controller. Connectivity requirements for the HTML5 controller are available in our [Connectivity Requirements documentation](https://docs.learnondemandsystems.com/tms/connectivity-requires.md). **Disk Inspection Permission Adjusted** The permissions required to inspect disks in Lab on Demand have been adjusted. - Inspection of a disk on a datacenter is now based on viewing rights on the datacenter. - Inspection of a disk on a file share is now based on viewing rights on the file share. - Inspection of a disk on a lab host is now based on viewing rights on the lab host. **API Consumer Configuration** - A new API Consumer configuration option has been added on API Consumer profiles for exams. **LOD Improvements and Fixes** - Mouse cursors in Hyper-V based labs will now dynamically change when resizing windows, while hovering over a text field, and selecting anchor points. - More flexible API configurations by allowing presets to be adjusted. - Virtual machines can now be renamed when saving a new lab profile from a running lab instance. - Improved Task Tracking behavior when using in conjunction with Includes. - Updated verification message when deleting cloud subscriptions pools. - Fixed a bug that improperly appended title information to container labs. - Fixed a bug preventing ABA scripts from appearing in lab profiles created from the template gallery. ## **Released October 16, 2020** **Cloud Watchdog** The Cloud Health Monitor Service has been improved and given a new name. The service is now called Cloud Watchdog. It now performs better and more efficiently than the Cloud Health Monitor Service. The service works in multiple stages: - Stage 1 - Find service: Finds issues and logs them. - Stage 2 - Remediation: Resolve issues found in stage 1, delete resources that failed to tear down if needed. - Stage 3 - Report: Report issues in Health Check emails if necessary, and update cloud subscription pool Health Check UI - Features include: - Health Checks now apply to CSS labs, the same way they applied to CSR. - Health Checks have two functions; checks for orphaned resources are a frequent rate, and checks for subscription configuration issues such as invalid credentials or expiration, at a longer interval. - Health Check intervals have been updated to check every hour/day/week. - If an issue is detected, the subscription owner listed on the subscription pool will receive an email with a list of the issues found, as well as a link to the associated pool. **Life Cycle Action Inheritance** Life Cycle Actions (LCA) can now be inherited on child lab profiles. Child lab profiles can also use different LCAs than the parent lab profile, by disabling LCA inheritance on the child lab profile. Child lab profiles have a checkbox on the LCA tab to enable inheritance on the LCAs from the parent lab profile. **Multiple API Keys for API Consumers** - API consumers now support creating, disabling, expiring, and revoking API keys. - Manual key rotation available, add a new key and mark the old one to expire after a set period of time. - Keys can be named to describe intended purpose. - Keys can be copied to clipboard with the click of a button without exposing the key. **LOD Improvements and Fixes** - New lab profile search filter "Allow Multiple Active Instances per User" allows you to filter on if a user can launch more than one instance of a lab. - Clients and internal staff will now see the price of labs and series after acquiring the Price viewing (by organization) permission. - The Launch API call email parameter now how a 256 character limit (previously 50). - The "Let's open a lab window" page won't be available after the lab has been completed, cancelled, or timed out. - When choosing a particular cloud subscription to launch a cloud lab, only subscriptions in the pool configured on the lab profile will be shown. - Updates to virtual machines, including differencing disks, will be blocked when a snapshot is detected on the VM due to incompatibility. If needed, the snapshots may be removed to restore differencing functionality. ## **Released October 2, 2020** **Enhanced Lab Saving** - As part of the New Lab Developer Experience, a new save dialog window has been introduced into the Lab on Demand Lab Client. Lab Developers will be able to update and create new lab profiles by selecting _Save_ from the hamburger menu. - Update the number of processors and RAM on virtual machines right from the lab instance, no need to relaunch. - Improved workflow when capturing differencing disks and committing container changes. - Easily create new lab profiles by specifying the RAM, Processor count, Number, Name, Description, Organization, Expected and Maximum Duration. - Dynamically create new lab series or select existing ones for assignment when saving a new lab profile. - Save current lab instance with no more clicks than before. **Cloud Subscription Name Replacement Token** - A new lab token has been added for Azure CSS labs to show the cloud subscription name. This can be used in lab instructions, Activity Based Assessments or Life Cycle Actions. **LOD Improvements and Fixes** - Updated translation on the _Next_ and _Previous_ buttons when using German in the lab-client. - Fixed a bug that caused the number of credential pools to be inaccurate on lab profile details pages. - Fixed a bug that prevented some fields from being displayed during a lab profile import. - Fixed a bug that allowed configuring multiple virtualization platforms in a lab profile while editing or creating a lab profile. - Fixed a bug that prevented adding a second script in an automated activity. ## **Released September 3, 2020** **Lab Profile Save As** - When using _Save As_ on a lab profile, to create a new lab profile or a child lab profile, there are now options to change the organization and lab series in the prompt. This only affects the new lab profile and does not change the parent lab profile's lab series or organization. - When a new lab profile is created using _Save As_, if the user performing the task does not have permissions to interact with different network types, the networks on the lab profile will be downgraded to a private network and a note will be left on the lab profile to specify which networks were downgraded. Users must have permissions for Public IP networks, as well as Web Access (NAT) networks in order to clone them into a new lab profile. **Instructions Modified By** - When a lab profile's instructions are edited, a timestamp is added to the lab profile at the bottom of the page for Instructions Modified. This notes the date/time, as well as who modified the instructions last. **Inline Virtual Machine and Container Terminals** - It is now possible to display a Virtual Machine or Container Terminal inline with the lab instructions. This allows the lab to launch in a single window, showing the VMs and terminals only where the lab author specifies in the lab instructions. You can enable inline VMs/terminals by marking them as hidden from the student on the lab profile virtual machines tab, and then inserting them into lab instructions using @lab tokens. **LOD Improvements and Fixes** - Updated VM OS identifier list to include _Red Hat Enterprise Linux 8 (64 bit)_ and _Windows Server 2016 or later (64 bit)_. - Updated translation when using German in the lab-client. - When searching Lab Series Assignment, more refined Max RAM and Total Ram output options based on lab completion status are displayed. Only labs marked Complete will impact these values. - When saving a lab profile that previously required a security review, but no longer needs one, we will no longer leave a security review invalidation note on the lab. - The VM import options will no longer appear on the Lab Profile Details page for users without Lab host viewing permissions. - Fixed a bug preventing the creation of AWS pools in select configurations. - Fixed a bug that prevented Evaluations from displaying on scored labs. - Fixed a bug that prevented ABA groups from displaying in a standalone lab manual. - Fixed a bug that prevented _Blocks page navigation_ until evaluated from working properly in automated activities. ## **Released September 3, 2020** **Activity Based Assessments(ABA) Activity Groups** ABA Activity Groups allow question and automated activities to be grouped together so that they may be managed as one unit. Some of the benefits of this approach include: - Activities can easily be sorted into groups and the order chosen by the lab author. A group is then inserted into the instructions using one @lab replacement token. - Drop a group into your instructions and allow the platform to handle displaying individual activities. As new activities are added to the group, there is no need to update the IDLx markdown. - Activities can be randomized when displayed to a student with the click of a button. - The number of activities to display from each group can be specified by the lab author. This allows the author to create a pool of activities to draw from, further randomizing the assessment between students. Scoring will be normalized to a value specified in the group when this option is enabled. - A new option to consolidate evaluation buttons has been added. Instead of displaying an individual "Check" or "Evaluate" button for every single activity within a group, a single button that will perform on-demand evaluation for the entire group may be displayed. - Additionally, the answers to multiple choice questions can be displayed in a random order in both activity groups and standalone activities. **Un-assign Cloud Credentials** - A new button is now shown in the lab client next to the cloud credentials to un-assign the credential from the user it was assigned to when the lab launched. This button is only visible to users with permissions to edit the cloud credential pool. When the credential is unassigned, it is immediately available to subsequent lab launches for labs that use the credential pool. **LTI 1.3 Improvements** - Select LTI 1.3 claims are now available as replacement tokens in labs. The list of available claims and tokens include (case sensitive): - context_id = @lab.Variable(LtiContextId) - context_label = @lab.Variable(LtiContextLabel) - context_title = @lab.Variable(LtiContextTitle) - roles = @lab.Variable(LtiRoles) - Fixed a bug resulting in an invalid launch when a global custom claim is provided in the Canvas developer key. - Upgraded to Httpclientfactory library when launching labs and accessing deep links. **LOD Improvements and Fixes** - Whitespace is trimmed when configuring credentials for Cloud Subscriptions and Cloud Subscription Pools. - Cloud fabric VMs will automatically target a resource group when added to a lab profile. - Storage fields removed from subscription page when not applicable. - Removed erroneous label on "Choose File" dialog when adding resources. - Removed external class link from class monitoring page when accessed through the API. - Fixed a bug that caused a cloud subscription to display on a lab profile details page after the cloud platform was set to none. - Fixed a bug preventing a cloud lab from launching after adding a non-cloud lab parent and inheriting environment. - Fixed a bug where the target of an automated activity was lost upon export/import of a lab profile. - Fixed a bug that would cause images to disappear in a lab that had been exported/imported. ## **Released August 22, 2020** **Multi-Instance Labs** Labs can now be configured to allow users to launch and access multiple instances of the same lab profile at any given time. Upon launching the same lab twice using a specially configured API consumer, users will be presented with the option to open an existing lab instance or create a new lab instance. From this screen, they will also be able to save and cancel previous instances of this lab. **Azure Virtualization** Several optimizations and improvements have been made for Azure virtual machines (VM). - Azure hosted VM labs show a connection quality (latency) indicator in the lab client. - Shadow monitoring is available for Azure hosted VMs. **Lab Profile Scheduled Disablement** Lab profiles now have an option on the Advanced tab to schedule a date and time for the lab profile to be disabled. Once it is disabled, it cannot be launched until the lab is manually enabled. **External Instruction Source** External instruction source has been updated with performance enhancements for the following scenarios - When a repository is synced with multiple lab profiles. - When multiple commits are made to the content file in the external repository rapidly. - When a repository is very large and synced with multiple lab profiles and the repository is updated rapidly. **LOD Improvements and Fixes** - When launching a lab using the Launch API call, MaxActiveLabs and MaxSavedLabs parameters will default to the maximum allowed by the API consumer when the values specified are greater than is allowed. (Out of range values were previously ignored) - Get/Update Lab instructions API calls will now work with child organizations of the organization listed on the API consumer. - Updated Lab Manual link on the instance details page. - VM profiles can now properly be sorted by number of vCPU (output option) - ABA on demand feedback styling has been updated when displaying correct or incorrect answers. - The lab client no longer produces an erroneous error on the first attempt to save a lab. - Short answer exact match questions will now ignore leading and trailing spaces when scoring the given answer. - When a lab is disabled, it no longer displays in the Deep link modal dialog. - Fixed a bug that occurred when saving non-cloud labs from saving when edited by a user without cloud permissions. ## **Released August 7, 2020** **External Instruction Source** - When an error occurs between the lab profile and the external instruction source, the error message is now displayed on the lab profile details page. A note will be displayed at the top of the page to indicate that there is an error. - External instruction source configuration messaging has been updated to not mention any specific external instruction sources. - When configuring a lab to use external instructions, a warning will now be displayed if the repository exceeds the maximum repo size limit (500mb) or if the repo is getting close to the limit. **Search Filters and Output Options** - Search filters have been added for _Was Launched_ and _Was Not Launched_ to the following search pages: - Find Cloud Credential Pools - Find Subscription Pools - Find Organizations - Find Lab Series - Find Lab Profiles - A new output option has been added to the Find Lab Profiles search page. - number (#) networks is now available as a filter and output option. - A new output option has been added to the Find Organizations search page. - _Parent_ is now available as an output option. **Additional API Options** - We have two new API commands. A parameter of id can be used to specify the lab profile. - _GetLabInstructions_: returns the IDL-MD instructions of a lab profile as a string. - _GetLabInstructionsPackage_: allows you to download the IDL-MD instructions of a lab as a binary file. - We have added two parameters to the Catalog API Call. - _LabSeriesID_: will limit results to the Lab Series specified. - _organizationID_: will limit results to the Organization specified The Organization ID is the integer at the end of URL when visiting the organization page in LOD. For example, https://labondemand.com/Organization/3 , the organization ID would be 3. **Cloud Slice Geolocation** - Cloud Slice labs can now be geolocated to launch in the cloud region that is physically closest to the lab user. - In addition to IPv4 geolocation services, LOD can now process IPv6 IP addresses during the lab launch process. **Upgraded Instructor Monitoring for Hyper-V Labs** - The instructor monitoring experience has been upgraded with the following features: - Better screen refresh rates provide a smoother view of what is happening in the lab. - Works with Enhanced Session Mode. - Allows instructors to see the mouse cursor of the student. - When taking control, students and instructors will see each other’s initials next to their respective cursors in real time. **LOD Improvements and Fixes** - The _My Labs_ link in LOD has been replaced with _Dashboard_. When logging into Lab on Demand, lab developers will be directed to Dashboard instead of the Admin page. - Cloud Resource Templates no longer display the description in the Resources tab of the lab client for Cloud Slice labs. - The sort order of resources configured on the Advanced tab of a lab profile are now reflected in the lab client. Subsequent changes to the sort order are reflected in the lab after the lab has been reloaded. - Updated vSphere Activity Based Assessment logic to be more resilient when scoring. - LTI 1.3 can now provide a status of complete/incomplete for labs that do not have any scoring. - Updated localization on virtualization set up screen to localize all text displayed. - Class monitor pages now default the layout to display lab instances in small tiles, instead of a list view. - Updated logic when detecting windows for cloud slice split view results in greater accuracy when determining whether an interstitial page should be shown. - Added the ability to remove an expiration date on a cloud subscription in a Subscription Pool. - Fixed a bug that caused an application error when a lab tag is deleted while a lab profile that uses the lab tag is being saved. - Fixed an issue that caused an application error when viewing a lab instance details page, from a lab profile where the cloud tab was edited while there were active lab instances. - Fixed an issue that prevented saving some child labs that use a CSS subscription pool. - Fixed a bug that hid the _Allow Setting Expiration Time_ drop-down menu when creating new lab profiles. - Fixed a bug that prevented lab developers from adding VM profiles to a lab profile when the number of vCPUs did not exceed the limit. - Fixed a bug that resulted in some extraneous text displayed next to the Force Check In link in the instruction editor.