Skip to content

v6.0.1 - "Cornelian"

Compare
Choose a tag to compare
@zachberry zachberry released this 17 Oct 20:08
· 2981 commits to master since this release
v6.0.1
6d0bd96

We're excited to present to you release 6.0.1! I'd like everyone to say hello to our newest student developer Anthony Rodriguez - his contributions have landed in this release!

The big stuff you'll wanna know

For authors & instructors:

  • This release has a number of updates to Math Equations. First, we've added a live preview when editing Math Equations in the Visual Editor and you can now change the size of your equations in the Visual Editor as well. We've also done a few tweaks to the rendering of Math Equations - labels sit below the equation and very long equations no longer run off the page. Finally katex, the library we're using to render math, has been updated from 0.9.0 to 0.11.1 which includes some bug fixes and additions (see what's new).
  • The Draft Manager now allows you to switch between JSON to XML and back again. You can find that option is in the new toolbar at the top of the page.
  • Viewing a module as an Instructor or Administrator once again shows the module in Preview Mode (reverting to the behavior in 3.3.0). This makes it easier to preview your modules and reduces issues when testing assessments.
  • By default users with the ContentDeveloper role now have the same permissions as those with the Instructor or Administrator roles.

For data nerds:

  • The nav:toggle event is no longer sent to the server. Instead either a nav:close or nav:open event is sent.

For students:

  • We're continuing to work on making Obojobo much better on mobile devices. In addition to several small tweaks we also now hide the navigation sidebar by default.

For developers:

  • New links have been added to /dev to quickly create LTI launches as a student.
  • We've updated several node packages. Among those, React was updated from 16.8.6 to 16.10.1 and Underscore was updated from 1.5.1 to 1.9.1.

For administrators:

  • This release has migrations.
  • The node version requirement has been updated from 10.4.1 to 12.11.1 and the yarn version requirement has been updated from 1.0 to 1.15.2.
  • You may need to update your nginx / Apache / server config based on changes on #942
  • New configuration environment variable OBO_LTI_USERNAME_PARAM allows you to choose the LTI launch param to use as a username in Obojobo. If not set the current default of lis_person_sourcedid will be used.
  • A new "demo mode" (disabled by default) has been added which allows the periodic purging of data such as events. This can be useful to demo Obojobo in cases where keeping some data (such as events and attempt scores) is not desired. Two additional environment variables have been added with this change:
    • OBO_DEMO_PURGE_MODE: Choose between deleting historical logs and everything. This can either be none, DANGER-delete-HISTORY-data or DANGER-delete-ALL-data.
    • OBO_DEMO_PURGE_DAYS_AGO: Specifies how many days to keep old data if purge is enabled.

REST API Changes:

  • (No major updates this release)

Complete Issues List

Here are all the completed issues for this release:

Features & Enhancements:

  • #922 - Draft Manager now has a toolbar which, among other things, allows you to switch a document from JSON to XML (and visa versa).
  • #924 - You can now edit the size attribute for MathEquations in the Visual Editor and a live preview of the rendered LaTeX has been added to the equation edit dialog.
  • #937 - Insert item toolbar in the Visual Editor is no longer cut off by the bottom of the page
  • #938 - Instructor launches again always use preview mode, restoring the 3.3.0 behavior. This prevents instructors seeing LTI errors when submitting assessment attempts.
  • #943 - Adds ContentDeveloper to the same default permissions that Instructor and Administrators have.
  • #959 - Scrollbars no longer show up on questions during their flip animation.
  • #976 - Adds a "demo mode" which can be configured to purge data (such as events) on a scheduled basis.
  • #977 - The katex library used to render latex math has been updated from 0.9.0 to 0.11.1 (Refer to the katex change log).
  • #984 and Additional - Multiple improvements to make the user experience much better on mobile. Navigation now automatically hides on small screen sizes. Changes the display of MathEquation labels to sit underneath the equation. Adds horizontal scrolling to MathEquations so that long equations no longer run off the page.

Bug Fixes

  • #935 - Fix regression bug causing the Draft Manager to break when attempting to render drafts without titles
  • #962 - Fix bug causing multiple blank YouTube chunks created in the visual editor to incorrectly reference the same video

Project & Developer Updates

  • #933 - Add indices to visits table
  • #939 - Moves session clearing to the User model, adds clearSessionsForUserById method.
  • #940 - Refactored LTI code
  • #941 - Adds links to /dev to create LTI student launches
  • #942 - Changes header forwarding to use standard x-forwarded-host.
  • #944 - Adds $Canvas.masqueradingUser.id to LTI config.
  • #960 - Bump mixin-deep from 1.3.1 to 1.3.2
  • #963 - Refactor and cleanup for the code handling the creation of new nodes in the visual editor
  • #974 - Adds option in the LTI config to specify the property to use as the user name
  • #976 - Adds a server:lti:user_launch event when a user is found during an LTI launch. Adds the deep-freeze library. The global config option object is now frozen.
  • #977 - Node version requirement has been updated from 10.4.1 to 12.11.1 and the yarn version requirement has been updated from 1.0 to 1.15.2. React updated from 16.8.6 to 16.10.1. Underscore updated from 1.5.1 to 1.9.1. Updates several other package dependencies to newer versions, refer to the pull request for a complete list. pgSession now uses the app's postgress connection instead of creating it's own.
  • #984 and Additional - Adds Common.util.debounce. scss mq() mixin added. scss pad() mixin now supports a scale argument (pad(0.5) = half the padding). /lti/config.xml response content-type changed from text/xml to application/xml. req.getCurrentUser will now make sure req.currentUser is set in all situations. Scheduler addon added to Heroku one button install. nav:toggle no longer sent to the server. Additional code clean-up and enhancements.

Release Stats

  • Commits: 112
  • Developers: 4
  • Files Changed: 168
  • Lines Changed: 9718 (+5917, -3801)
  • Commit Dates: Jul 25, 2019 - Oct 14, 2019
Lines of Code (expand to view)
› cloc ./ --hide-rate --by-percent cmb --read-lang-def=my_definitions.txt
    1634 text files.
    1422 unique files.                                          
     244 files ignored.

github.com/AlDanial/cloc v 1.82
---------------------------------------------------------------------------------
Language                       files        blank %      comment %           code
---------------------------------------------------------------------------------
Jest Tests                       338          14.09           1.98          51813
Jest Test Snapshots              210           2.29           0.45          45454
JavaScript                       580          12.67           4.48          38751
JSON                              80           0.01           0.00          26679
Sass                              99          15.54           0.94           5231
XML                               31           2.36           5.25           1372
CSS                                7          26.99           0.29            760
EJS                               13           5.65           0.67            696
Markdown                           3          17.82           0.00            535
YAML                               3          18.53           6.95            193
SVG                               28           0.00           0.00            126
---------------------------------------------------------------------------------
SUM:                            1392           8.93           1.92         171610
---------------------------------------------------------------------------------

Thanks!

A big thanks to our contributors for this release (listed in alphabetical order):