EthosCE Release 2026.10

EthosCE Release Notes

October 2026


EthosCE Version 7.109

Release Date:

Test Sites: October 8, 2026 

Production Sites: October 14, 2026  

This month's release includes product enhancements, essential bug fixes, updates, and more. Included in this   

release:  

  • CORE-5589: Add Answer Sheet link to the quiz Question Results page.  
  • CORE-5566: Add CSS classes to Zoom course object fields so they can be styled or hidden with Global CSS.  
  • CORE-5574: Update uc_stripe to 7.x-3.3.  
  • CORE-5565: Require a valid OAuth signature on LTI grade submissions.  
  • CORE-5568: Fix newly imported questions not showing in Questions by Quiz screen.  
  • CORE-5574: Prevent duplicate Stripe charges and allow retrying after a declined card.  
  • CORE-5598: Keep WYSIWYG formatting in profile field help text.  
  • CORE-5599: Fix financial chart categories after an entry's type changes, and totals when there is no income.  
  • CORE-5607: Update PARS JSON host URL. (Released as hotfix 7.109.1.)  

Additions  

  • CORE-5589: Add Answer Sheet link to the quiz Question Results page. After completing a quiz, learners now see a link to the Answer Sheet directly on the Question Results page. Previously, learners had to navigate elsewhere in the course to find the Answer Sheet, which interrupted the natural post-quiz review flow. The link follows your existing quiz settings, so it only appears where the learner is already permitted to view the Answer Sheet. Reminder for staff: the correct/incorrect column on the Answer Sheet is an existing option controlled by the "Whether correct" checkbox under the "After the quiz" section of the quiz settings.  

Fixes  

  • CORE-5565: Require a valid OAuth signature on LTI grade submissions. The endpoint that receives grades from LTI tools (such as Synap and Warpwire) now verifies the tool's OAuth signature before accepting a score. Previously, the endpoint accepted unsigned requests, which meant a forged score could mark a course object complete and, on sites with auto-claim enabled, trigger credit awards and external reporting. Unsigned or invalid requests are now rejected and logged. Properly configured LTI tools continue to work without any changes on your end.  
  • CORE-5568: Fix newly imported questions not showing in Questions by Quiz screen. After importing quiz questions by CSV, some questions appeared in Manage Content but were missing from the Questions by Quiz list, while other questions appeared twice on later pages. The list now shows every imported question exactly once, so staff can add all of their imported questions to a quiz without searching for them by title.  
  • CORE-5574: Prevent duplicate Stripe charges and allow retrying after a declined card. The Stripe checkout now protects against duplicate charges when a learner double-clicks Submit Order, and it correctly allows a learner to try again after a declined card. Previously, a declined card could block every later attempt on the same order, including attempts with a valid card, until the cart changed or 24 hours passed. Each new payment attempt now goes through cleanly, and detailed error information is logged for staff troubleshooting.  
  • CORE-5598: Keep WYSIWYG formatting in profile field help text. Formatting applied in the WYSIWYG editor to the description of profile fields inside a field collection (for example, the "Board or license ID" field within "Board certification and licenses") now renders correctly on the user profile. Previously, the formatting saved but was ignored on the live profile page, so the help text always displayed at the default size and style.
  • CORE-5599: Fix financial chart categories after an entry's type changes, and totals when there is no income. On the course Financial tab, switching an entry from Income to Expense (or the reverse) now clears the old category so the Report Summary chart labels match the entries table. The chart also calculates Total Expenses and Net Revenue correctly when a course has only expense entries. Previously, the old category persisted on the chart and expense-only courses showed the same value for both totals. Staff who added a $0.00 placeholder income entry as a workaround can remove it.  
  • CORE-5607: Update PARS JSON host URL. Sites using the modernized ACCME PARS JSON connection could not authenticate with ACCME's production service because the connection pointed at the wrong host, which caused PARS data to fail to save on course save. The production host is now correct, and sites migrating from the legacy XML (SOAP) connection to the JSON API can report activities successfully. This was released as hotfix 7.109.1.  

Changes  

  • CORE-5566: Add CSS classes to Zoom course object fields so they can be styled or hidden with Global CSS. Each field on the Zoom course object "Join Training" page (topic, description, session time, duration, join link, and help text) is now wrapped in an element with its own predictable CSS class. This gives staff the ability to style or hide individual fields through Global CSS. For example, sites whose learners have been confused by the session time displaying without a time zone can now hide that value with a single CSS rule.  
  • CORE-5574: Update uc_stripe to 7.x-3.3. The Stripe payment module has been updated to the latest contributed release, which includes the duplicate-charge and retry improvements described under Fixes along with upstream maintenance updates.

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article