Releases: learningequality/kolibri
v0.17.0
What's Changed
High level overview
Release 0.17.0 introduces updates to our quizzes to provide coaches with more flexibility in customizing quizzes. With 0.17.0, Kolibri is now available in Punjabi.
Added
New Feature: Updates to quiz workflow with new sections and question replacement functionality
Updates to our quizzes provide coaches more flexibility in creating quizzes by swapping out questions or removing questions to create the quiz they want. Coaches choose resources from which questions are selected. They can then review individual questions, and replace or remove individual questions, customising the quiz to learner needs. Coaches can also divide the quiz into sections of up to 25 questions each, allowing for longer quizzes.
Noteworthy technical updates include updating to a third version of our Exam model data schema, the addtion of a new draft exam model to allow editing of quizzes before they are made active/syncable, introducing a new accordion component, and changing the quiz creation routing structure to use nested routes and a side-panel style UX.
List of supporting PRs
- Restore exam/utils.spec.js to previous version; tests pass by @nucleogenesis in #11155
- Enhanced Quizzes: Initial frontend state management API by @nucleogenesis in #11088
- adds the new Quiz Creation Component by @AllanOXDi in #11077
- Enhanced Quiz Management: Side panel and routing foundations by @nucleogenesis in #11132
- Build flexible and accessible accordion component by @AllanOXDi in #11087
- Update Exam model with V3 question_sources, update relevant JS utils by @nucleogenesis in #11025
- Quiz creation DEBUG data improvements by @nucleogenesis in #11662
- Quiz rebase regression fixes by @nucleogenesis in #11661
- Quiz foundations & data connection by @nucleogenesis in #11277
- Section settings side panel by @AllanOXDi in #11314
- Feature quiz section tabs with overflow by @nucleogenesis in #11382
- Finishing up the Quiz Root Page by @nucleogenesis in #11434
- [Accordion] Add "collapse all"/ "expand all" logic into AccordionContainer by @AlexVelezLl in #11565
- Migrate quizForge object references to composition API standard by @ozer550 in #11562
- Remove stray references to quizForge by @marcellamaki in #11633
- Fix title validation error bug in quizSection by @ozer550 in #11642
- Coach Quiz Exercise Resources by @nucleogenesis in #11682
- Question sources by @AllanOXDi in #11658
- Update ExamSerializers according to v3 model by @ozer550 in #11674
- useFetchTree specs by @nucleogenesis in #11766
- Synchronise user selections with Quiz Creation State by @ozer550 in #11783
- EQM clean up resouce selection by @AllanOXDi in #11764
- Conditionalizes the loading action for quiz routes by @akolson in #11822
- Quiz creation bookmark selection by @ozer550 in #11835
- Questions randomly selected from resource pool by @nucleogenesis in #11823
- number of resources updates on selection by @AllanOXDi in #11825
- Resource selection UX- Improvement by @AllanOXDi in #11815
- Quiz Creation Select Resources - Keyword search by @AlexVelezLl in #11887
- Quiz creation resource selection: Topic selection & "Select all" by @nucleogenesis in #11864
- Fix: Side panel closing confirmation & logic in child component by @nucleogenesis in #11862
- Quiz creation: Question replacement & a bevy of misc fixes and polish by @nucleogenesis in #11937
- Move handleReplacement logic from ReplaceQuestions.vue to useQuizCreation.js by @KshitijThareja in #12099
- Use router.replace for redirect. by @rtibbles in #12067
- Quiz editing capability for not yet activated quizzes by @rtibbles in #12232
- Move NotEnoughResourcesModal to CreateQuizSection by @LianaHarris360 in #12249
- Remove empty sections from quizzes on publish by @rtibbles in #12252
- Revert change that prevented search redirect in all cases. by @rtibbles in #12236
- Updates to sections in ExamPage by @nucleogenesis in #12182
- EQM: On first save, update the quiz's ID when redirecting by @nucleogenesis in #12283
- Use && instead of & for logical AND. by @rtibbles in #12254
- Update to allow and implement randomization of sections. by @rtibbles in #12278
- EQM Fix: Use can actually select topics by @nucleogenesis in #12265
- EQM: Validation improvements by @nucleogenesis in #12281
- Fix single quiz selection flow by @rtibbles in #12274
- Improve messaging around question replacement requirements by @AllanOXDi in #12122
- Exams: Create them, take them, view reports by @nucleogenesis in #12111
- Add "Update resources" option to Options dropdown by @AllanOXDi in #12137
- Quiz creation: Snackbar improvements by @AlexVelezLl in #12080
- Revert ExamPage BottomAppBar to previous version (0.16.x) by @nucleogenesis in #12169
- Fixes issue where activeTabId is not set when viewing quiz reports for a group by @nathanaelg16 in #12179
- fixes user selection getting lost on closing the sidepanel by @AllanOXDi in #12160
- Fixes progress indication bug by @nathanaelg16 in #12185
- EQM Lesson regression fixes by @nucleogenesis in #12354
- EQM: Side panel back / close icon UX improvements by @nucleogenesis in #12311
- Link to new quiz creation properly. by @rtibbles in #12352
- Display question titles with displayQuestionTitle by @LianaHarris360 in #12369
- EQM: Bookmarks not linking anywhere in resource selection by @nucleogenesis in #12360
- Prevents errors on section deletion by @rtibbles in #12363
- EQM: Difficult questions reports fix by @nucleogenesis in #12372
- Fix mis-match condition in replacement question array by @marcellamaki in #12353
- Wrap section deletion modal in focus trap by @LianaHarris360 in #12373
- Use useNow composable in ElapsedTime component by @AlexVelezLl in #12377
- Load channel content on remove filter by @AlexVelezLl in #12379
- Fix question listing and navigation in quiz reports by @rtibbles in #12359
- Allow quiz level learners see fixed order to be edited after a quiz is opened. by @rtibbles in #12307
- make sure the question count v-model uses .number by @marcellamaki in #12407
- Update folder selection logic to handle deep folders. by @rtibbles in #12381
- Add in submit quiz button for non-large screen sizes. by @rtibbles in #12412
- Exam models date_created updates by @nucleogenesis in #12413
- EQM: Sections for quiz detail page by @nucleogenesis in #12384
- EQM: What happens when I refresh? b...
v0.17.0-rc3
What's Changed
- Fix error that occurs if facilityDatasetExtraFields is null. by @rtibbles in #12534
- fix handleConfirmDelete issues in SectionEditor by @nucleogenesis in #12536
Full Changelog: v0.17.0-rc2...v0.17.0-rc3
v0.17.0-rc2
What's Changed
Full Changelog: v0.17.0-rc1...v0.17.0-rc2
v0.17.0-rc1
What's Changed
- Update link to privacy policy by @marcellamaki in #12511
v0.17.0-rc0
What's Changed
- Pytest upgrade 3.7.1 -> 6.2.5 by @thesujai in #11759
- Handle edge cases for resource selection in quizzes by @rtibbles in #12444
- Update release flow for BCK prerelease and final release by @rtibbles in #12453
- Fix exam report question selection display by @rtibbles in #12467
- Fix RTL Styles by @AlexVelezLl in #12470
- Fix KSelect overflow in exam page by @AlexVelezLl in #12484
- stop infinite reloads by @jredrejo in #12488
- Bug fixes discovered while investigating issues in change facility workflow by @rtibbles in #12491
- Cherry-pick #12485 by @rtibbles in #12492
- Fix language switcher errors by @AlexVelezLl in #12448
- Fix pex filenames by @rtibbles in #12451
- Update android installer action to latest released version. by @rtibbles in #12495
- Limit max questions per section to 25. by @rtibbles in #12487
- Restore preseeded database behaviour by @rtibbles in #12494
- Nav alignment by @marcellamaki in #12496
- Python 3.12 support by @rtibbles in #12468
- set_as_super_user is a function param by @jredrejo in #12493
- Allow management of learner sync on remote content enabled devices. by @rtibbles in #12498
- Adjust CSS for button layout in EQM by @marcellamaki in #12465
- Translation import from crowdin 29-july-2024 by @marcellamaki in #12497
- Add more error handling for facility user merging and facility deletion by @rtibbles in #12500
Full Changelog: v0.17.0-beta3...v0.17.0-rc0
v0.17.0-beta3
What's Changed
Full Changelog: v0.17.0-beta2...v0.17.0-beta3
v0.17.0-beta2
What's Changed
What's Changed
- Refactored HomePage route handler to fetch initClassInfo and getFacil… by @shubh1007 in #12358
- Bump stylelint-config-recommended-scss from 14.0.0 to 14.1.0 by @dependabot in #12435
- Bump esquery from 1.5.0 to 1.6.0 by @dependabot in #12434
- Fix coreStrings import in AttemptLogList by @AlexVelezLl in #12429
- Properly redirect on authentication failure by @rtibbles in #12414
New Contributors
- @shubh1007 made their first contribution in #12358
Full Changelog: v0.17.0-beta1...v0.17.0-beta2
v0.17.0-beta1
What's Changed
- Coach questions preview: Fix background and selection colors + resolve linter errors by @MisRob in #12427
- Fix ordering of quizzes on plan page. by @rtibbles in #12426
- EQM: Fix unlinted files by @nucleogenesis in #12428
- Hide Difficult questions tab if the quiz is still a draft by @AlexVelezLl in #12437
- Fix quiz preview by @AlexVelezLl in #12436
- Ensure skip to main content logic is working by @marcellamaki in #12439
Full Changelog: v0.17.0-beta0...v0.17.0-beta1
v0.17.0-beta0
What's Changed
This is an unstable release for the new Enhanced Quiz Management feature, the flagship feature of 0.17. The new workflow will allow coaches to add sections to quizzes, enabling quizzes/assessments longer than 50 questions. Coaches will also be able to replace questions within a quiz, a long requested feature.
Feature and bugs PR list
- Fix single quiz selection flow by @rtibbles in #12274
- trying to fix integrity errors before migrating tables by @jredrejo in #12279
- Replace
TextTruncatorCss
withKTextTruncator
by @jasonmokk in #12215 - Add notification for downloaded content completion by @LianaHarris360 in #12295
- Bump ws from 8.16.0 to 8.17.1 by @dependabot in #12313
- Bump kolibri-design-system from 4.3.0 to 4.3.1 by @dependabot in #12316
- Bump espree from 10.0.1 to 10.1.0 by @dependabot in #12314
- Bump launch-editor-middleware from 2.6.1 to 2.7.0 by @dependabot in #12315
- Update LOD description in FullOrLearnOnlyDeviceForm component by @LianaHarris360 in #12285
- Move jump to question string into enhanced quiz management strings. by @rtibbles in #12323
- Additional strings by @marcellamaki in #12336
- Upgrade perseus to npm published version. by @rtibbles in #9759
- Allow quiz level learners see fixed order to be edited after a quiz is opened. by @rtibbles in #12307
- First pass string updates following UX writing and ditto review by @marcellamaki in #12312
- Linting updates by @rtibbles in #9698
- Bump webpack from 5.92.0 to 5.92.1 by @dependabot in #12339
- Bump kolibri-constants from 0.2.5 to 0.2.6 by @dependabot in #12344
- Bump typescript from 5.4.5 to 5.5.2 by @dependabot in #12343
- Bump launch-editor-middleware from 2.7.0 to 2.8.0 by @dependabot in #12342
- Bump @phosphor-icons/core from 2.0.8 to 2.1.1 by @dependabot in #12340
- Correct strings that were manually edited on Crowdin by @radinamatic in #12347
- Remove browser search cancel button by @AlexVelezLl in #12329
- Added neeeded values for BaseValuesViewset by @jredrejo in #12346
- Fix pdf css import by @AlexVelezLl in #12348
- Fix hitherto unnoticed regression in channel upgrade by @rtibbles in #12251
- EQM Lesson regression fixes by @nucleogenesis in #12354
- Bump postcss-html from 1.5.0 to 1.7.0 by @dependabot in #12365
- Bump @rushstack/eslint-patch from 1.10.2 to 1.10.3 by @dependabot in #12367
- EQM: Side panel back / close icon UX improvements by @nucleogenesis in #12311
- Link to new quiz creation properly. by @rtibbles in #12352
- Display question titles with displayQuestionTitle by @LianaHarris360 in #12369
- EQM: Bookmarks not linking anywhere in resource selection by @nucleogenesis in #12360
- Prevents errors on section deletion by @rtibbles in #12363
- EQM: Difficult questions reports fix by @nucleogenesis in #12372
- Fix mis-match condition in replacement question array by @marcellamaki in #12353
- Wrap section deletion modal in focus trap by @LianaHarris360 in #12373
- Use useNow composable in ElapsedTime component by @AlexVelezLl in #12377
- Load channel content on remove filter by @AlexVelezLl in #12379
- Fix question listing and navigation in quiz reports by @rtibbles in #12359
- Don't put csrf protection on endpoint that we use to set csrf cookie. by @rtibbles in #12371
- Reduce the size of the wheel file by @rtibbles in #12361
- EQM: Post-bash quickfixes by @nucleogenesis in #12293
- Update automatic download setting default to False if running in a remote content context. by @rtibbles in #12395
- EQM: Side panel bottom nav by @nucleogenesis in #12391
- Card fixes by @marcellamaki in #12374
- Revert "Merge pull request #11980 from learningequality/dependabot/np… by @nucleogenesis in #12385
- Add string prompt to log in with existing username or create an account by @LianaHarris360 in #12310
- Fix white space on top of tabs dividing line by @AlexVelezLl in #12380
- EQM: Only show save success message when saving by @nucleogenesis in #12389
- Perseus final fixes by @rtibbles in #12362
- make sure the question count v-model uses .number by @marcellamaki in #12407
- Bump dayjs from 1.11.10 to 1.11.11 by @dependabot in #12404
- Bump typescript from 5.5.2 to 5.5.3 by @dependabot in #12400
- Bump katex from 0.16.10 to 0.16.11 by @dependabot in #12402
- Bump eslint-plugin-vue from 9.26.0 to 9.27.0 by @dependabot in #12401
- Bump webpack-merge from 5.10.0 to 6.0.1 by @dependabot in #12399
- Update folder selection logic to handle deep folders. by @rtibbles in #12381
- Add in submit quiz button for non-large screen sizes. by @rtibbles in #12412
- Exam models date_created updates by @nucleogenesis in #12413
- EQM: Sections for quiz detail page by @nucleogenesis in #12384
- EQM: What happens when I refresh? by @nucleogenesis in #12393
- Upgrade morango. by @rtibbles in #12408
- Upgrade the mac app. by @rtibbles in #12416
- Count descendants not ancestors by @rtibbles in #12394
- What a drag by @marcellamaki in #12396
New Contributors
- @jasonmokk made their first contribution in #12215
Full Changelog: v0.17.0-alpha0...v0.17.0-beta0
v0.17.0-alpha0
What's Changed
This is an unstable release for the new Enhanced Quiz Management feature, the flagship feature of 0.17. The new workflow will allow coaches to add sections to quizzes, enabling quizzes/assessments longer than 50 questions. Coaches will also be able to replace questions within a quiz, a long requested feature.
Feature and bugs PR list
- Composable translators by @rtibbles in #10960
- Cascade merge 0.16.x into develop by @rtibbles in #11056
- Update Exam model with V3 question_sources, update relevant JS utils by @nucleogenesis in #11025
- Gherkin corrections and cleanup by @pcenov in #10966
- adds the new Quiz Creation Component by @AllanOXDi in #11077
- Catch and redirect 401 errors when browsing remotely by @vkWeb in #11119
- Cascade merge 0.16 into develop by @rtibbles in #11135
- Restore exam/utils.spec.js to previous version; tests pass by @nucleogenesis in #11155
- Enhanced Quizzes: Initial frontend state management API by @nucleogenesis in #11088
- Maintain the zoom settings for the PDF viewer by @nikkuAg in #11165
- Hide the table when data is loading by @muditchoudhary in #11238
- Enhanced Quiz Management: Side panel and routing foundations by @nucleogenesis in #11132
- Build flexible and accessible accordion component by @AllanOXDi in #11087
- Add enhanced quiz management strings - first draft for dev work by @marcellamaki in #11189
- added functionality to create new facility on existing kolibri by @Jaspreet-singh-1032 in #11197
- Fix broken build on develop by @rtibbles in #11297
- 0.16 into develop by @rtibbles in #11300
- Changed KContentRenderer to ContentRenderer. by @ShivangRawat30 in #11289
- added test cases for create new facility feature by @Jaspreet-singh-1032 in #11303
- Adds connection error exception to handle redis connection failure by @akolson in #11296
- Quiz foundations & data connection by @nucleogenesis in #11277
- Merge release-v0.16.x into develop by @rtibbles in #11371
- AnMi: Replaced KResponsiveWindow mixin by useKResponsiveWindow compos… by @andreamisuraca in #11346
- Replace KResponseWiindow with useKResponseWindow in Epub Viewer plugin by @thesujai in #11369
- updated use of entry_points according to importlib version >3.6.0 by @im-NL in #11417
- Replaced KResponsiveWindow to useKResponsiveWindow by @ShivangRawat30 in #11414
- Section settings side panel by @AllanOXDi in #11314
- Feature quiz section tabs with overflow by @nucleogenesis in #11382
- 0.16 into develop by @rtibbles in #11460
- Replace KResponseWindow with useKResponseWindow in Device plugin by @thesujai in #11349
- replaced responsiveWindow with useKResponsiveWindow by @ShivangRawat30 in #11355
- Replaced KResponsiveWindow mixin by useKResponsiveWindow composable - Core #11335 by @a6ar55 in #11427
- Replace KResponseWindow with useKResponseWindow in User Profile plugin by @thesujai in #11358
- Replace KResponseWindow with useKResponseWindow in Learn plugin by @thesujai in #11366
- Replace KResponsiveWindow mixin by useKResponsiveWindow composable by @KshitijThareja in #11474
- Fix topic header tests by @nucleogenesis in #11535
- changed KResponsiveWindow to useKResponsiveWindow in Pdf Viewer plugin by @ShivangRawat30 in #11529
- Tweniee/Isssue:#11361 Updated Document for PR release by @Tweniee in #11512
- Ensure Enter key works as continue button click on Setup Wizard by @AlexVelezLl in #11537
- Issue 10255 improve coach tabs accessibility by @muditchoudhary in #11501
- Finishing up the Quiz Root Page by @nucleogenesis in #11434
- [Accordion] Add "collapse all"/ "expand all" logic into AccordionContainer by @AlexVelezLl in #11565
- Notify our slack on contributors' issue comments by @vkWeb in #11564
- Improved router handlers architecture in Coach - part 1 by @ShivangRawat30 in #11570
- Use the official GH action for Slack by @vkWeb in #11623
- Migrate quizForge object references to composition API standard by @ozer550 in #11562
- 0.16.x into develop by @marcellamaki in #11627
- fix the poistion of the sidepanelmodal by @iskipu in #11607
- Remove stray references to quizForge by @marcellamaki in #11633
- Fix title validation error bug in quizSection by @ozer550 in #11642
- 0.16 into develop by @rtibbles in #11650
- 0.16 into develop by @rtibbles in #11652
- Remove Python 2.7 support by @rtibbles in #11654
- Quiz creation DEBUG data improvements by @nucleogenesis in #11662
- Quiz rebase regression fixes by @nucleogenesis in #11661
- Create and use a standard utility library for handling zip files in the frontend by @rtibbles in #11539
- Question sources by @AllanOXDi in #11658
- Release v0.16.x into develop by @rtibbles in #11699
- Update ExamSerializers according to v3 model by @ozer550 in #11674
- 0.16.x into develop by @rtibbles in #11712
- Remove Python 2.7 deprecation warning. by @rtibbles in #11713
- Consolidate browser compatibility data, drop IE11 support by @rtibbles in #11685
- Replaced isEmbeddedWebView with isAppContext by @AllanOXDi in #11715
- Update condition to display new label for content imports by @LianaHarris360 in #11695
- Coach Quiz Exercise Resources by @nucleogenesis in #11682
- 0.16 into develop by @rtibbles in #11745
- Realtime percentage of tasks in the tab title by @GarvitSinghal47 in #11696
- useFetchTree specs by @nucleogenesis in #11766
- 0.16 into develop by @rtibbles in #11796
- Authors are pilots of kolibri by @vkWeb in #11805
- Use consistent KDS imports across the whole Kolibri by @PR4NJ41 in #11742
- Synchronise user selections with Quiz Creation State by @ozer550 in #11783
- EQM clean up resouce selection by @AllanOXDi in #11764
- Conditionalizes the loading action for quiz routes by @akolson in #11822
- Quiz creation bookmark selection by @ozer550 in #11835
- Questions randomly selected from resource pool by @nucleogenesis in #11823
- number of resources updates on selection by @AllanOXDi in #11825
- Resource selection UX- Improvement by @AllanOXDi in #11815
- Standardize ContentCardList Component and Introduce ViewMoreButtonStates by @GarvitSinghal47 in https://github.com/learningeq...