project: Moodle
summary: Review third party libraries for new versions (4.2 release)
description: There are a number of third-party libraries distributed with Moodle. Before the major release, the available versions of these libraries should be reviewed. Check the list at which should be up to date with lib/thirdpartylibs.xml and other thirdpartylibs.xml files distributed around Moodle. Add any newly incorporated libraries into the list Check the available versions of each library If there is a significant new version and updating is recommended, the new version should be integrated by creating a sub-task to this issue and processing it through integration independently. If there is a readme_moodle.txt file with the plugin, this describes the customisations made for Moodle. Check when doing your review. Libraries review here:

1.summary: Switch from Box/Spout to OpenSpout/OpenSpout
description: The Box/Spout library has been deprecated and forked to OpenSpout| which is actively maintained. We should switch to OpenSpout during the 4.2 cycle.
2.summary: Upgrade HTML Purifier to 4.16.0
description: HTML Purifier (/lib/htmlpurifier/) 4.13.0 --> 4.16.0 : This also normalizes the line endings for HTMLPurifier in a separate commit. Prior to this change, all the line endings in the imported HTMLPurifier library were using CRLF (\r\n aka Windows style), but the HTMLPurifier source and also the downloadable artefacts use LF (\n aka Linux style) as line endings. This has been the case since 510d190382003985eafd6f4407190d43509016a5| when with the commit "_ import HTML Purifier 4.5.0_" all line endings were changed from LF to CRLF. There was no comment in the commit on why this change was done. As the original source uses LF, this commit partly reverts 510d190382003985eafd6f4407190d43509016a5 and goes back to LF as line endings. This also makes updating the library in the future less of a pita. Besides some tinymce library plugins and random atto yui files all moodle source uses LF as line endings, so I think that also justifies the change.
3.summary: Upgrade Bennu to 0.2
description: Bennu (lib/bennu/) 0.1 --> 0.2 :
4.summary: Upgrade Horde to latest version
description: Follow instructions in
5.summary: Upgrade p-editor-php-library and p-php-library to moodle-1.23
description: p-editor-php-library (joubel/editor) moodle-1.22.4 --> moodle-1.23 : p-php-library (joubel/editor) moodle-1.22.4 --> moodle-1.23 :
6.summary: Upgrade OpenSpout to 4.13.0
description: OpenSpout 3.x to 4.0 :
7.summary: Upgrade PHPMailer to 6.7.1
description: PHPMailer lib/phpmailer/ 6.6.5 --> 6.7.1
8.summary: Upgrade ADODB to 5.22.4
description: AdoDB (/lib/adodb/) 5.22.2 --> 5.22.4:
9.summary: Upgrade MatthiasMullie\Minify to 1.3.70
description: MatthiasMullie\Minify lib/minify/matthiasmullie-minify/ 1.3.69 --> 1.3.70
10.summary: Upgrade Simplepie to 1.8.0
description: SimplePie lib/simplepie/ 1.6.0 --> 1.8.0
11.summary: Upgrade TCPDF to 6.6.2
description: TCPDF lib/tcpdf/ 6.5.0 --> 6.6.2
12.summary: Upgrade jQuery to 3.6.4
description: jQuery lib/jquery/ 3.6.1 --> 3.6.4 -jQuery UI lib/jquery/ui 1.13.0 --> 1.13.2- jQuery UI is updated to 1.13.2 in
13.summary: Upgrade loglevel.js to the latest version
description: loglevel.js lib/amd/src/loglevel.js 1.8.0 --> 1.8.1
14.summary: Upgrade PHP-JWT to 6.4.0
description: PHP-JWT lib/php-jwt/ 6.3.0 --> 6.4.0
15.summary: Upgrade Rangy to 1.3.1
description: Rangy lib/editor/atto/yui/src/rangy/js/. 1.3.0 --> 1.3.1
16.summary: Upgrade Tiny to 6.3.2
description: Tiny lib/editor/tiny/ 6.2.0 --> 6.3.2 . Summary of changes . 6.3.0 Source: No impacting Improvements, Additions, Changes or Bug fixes. One security issue is included but it is not believed to affect our usage of TinyMCE. . 6.3.2 Source: No impacting Improvements, Additions, Changes or Bug fixes.
17.summary: Upgrade JSBeautify to 1.14.7
description: jsbeautify lib/editor/atto/plugins/html/yui/src/beautify/ 1.14.6 --> 1.14.7
18.summary: Upgrade PHPSpreadSheet to 1.28.0
description: PhpSpreadsheet lib/phpspreadsheet/ 1.25.2 --> 1.28.0
19.summary: Upgrade ZipStream to 2.4.0
description: ZipStream lib/zipstream 2.2.0 --> 3.0.0
20.summary: Upgrade php-enum to 1.8.4
description: php-enum lib/php-enum 1.8.3 --> 1.8.4
21.summary: Upgrade axe-core to 4.6.3
description: axe-core behat/axe 4.5.1 --> 4.6.3
22.summary: Upgrade lti1p3 to patched v5.2.6
description: lti1p3 lib/lti1p3 5.2.1 --> 5.2.6
23.summary: Upgrade lunr.js to 2.3.9
description: lunr.js amd/src/lunr.js 2.3.8 --> 2.3.9
24.summary: Upgrade regenerator-runtime to the latest version
description: regenerator-runtime polyfills 0.13.7 --> 0.14.1
25.summary: Upgrade Font Awesome to 6.3.0
description: Font Awesome lib/fonts/ 4.7.0 --> 6.3.0 Upgrade the Font Awesome third-party library from 4.7 to the latest from the Font Awesome Free. Interesting links:
26.summary: Upgrade Bootstrap to latest stable version
description: We are currently using Bootstrap 4.6.0 We should update to 4.6.2 which will allow us to switch scss compliation to scss on CLI, which is possible on both x86 and arm chipsets.
27.summary: Upgrade Codemirror to 5.65.12
description: codemirror lib/editor/atto/plugins/html/yui/src/codemirror/ 5.65.9 --> 5.65.12
28.summary: Upgrade GeoIP2 PHP API to the latest version
description: GeoIP2 PHP API lib/maxmind/GeoIp2/ 2.11.0 --> 2.13.0
29.summary: Upgrade EvalMath to 1.0.1
description: EvalMath (/lib/evalmath/) 1.0.0 --> 1.0.1 :
30.summary: Upgrade Chart.js to the latest version
description: Chart.js lib/amd/src/chartjs-lazy.js 3.8.0 --> 4.2.1
31.summary: Upgrade yuilib to the latest version
description: YUI yuilib 3.17.2 --> 3.18.1

Below is an instruction that describes a task, paired with an input that provides an epic with this format: 
"project": "Name of the project" 
"summary": "Summary of the epic user story" 
"description": "Description of the epic user story". Write a response that appropriately completes the request.### Instruction:
Break this epic user story into smaller tasks to help the developers understand the epic better, you can divide this epic into as much as you want depending on the complexity of the epic.
### Input:
project: Moodle
summary: Review third party libraries for new versions (4.2 release)
description: There are a number of third-party libraries distributed with Moodle. Before the major release, the available versions of these libraries should be reviewed. Check the list at which should be up to date with lib/thirdpartylibs.xml and other thirdpartylibs.xml files distributed around Moodle. Add any newly incorporated libraries into the list Check the available versions of each library If there is a significant new version and updating is recommended, the new version should be integrated by creating a sub-task to this issue and processing it through integration independently. If there is a readme_moodle.txt file with the plugin, this describes the customisations made for Moodle. Check when doing your review. Libraries review here:

### Response:
1.summary: Switch from Box/Spout to OpenSpout/OpenSpout
description: The Box/Spout library has been deprecated and forked to OpenSpout| which is actively maintained. We should switch to OpenSpout during the 4.2 cycle.
2.summary: Upgrade HTML Purifier to 4.16.0
description: HTML Purifier (/lib/htmlpurifier/) 4.13.0 --> 4.16.0 : This also normalizes the line endings for HTMLPurifier in a separate commit. Prior to this change, all the line endings in the imported HTMLPurifier library were using CRLF (\r\n aka Windows style), but the HTMLPurifier source and also the downloadable artefacts use LF (\n aka Linux style) as line endings. This has been the case since 510d190382003985eafd6f4407190d43509016a5| when with the commit "_ import HTML Purifier 4.5.0_" all line endings were changed from LF to CRLF. There was no comment in the commit on why this change was done. As the original source uses LF, this commit partly reverts 510d190382003985eafd6f4407190d43509016a5 and goes back to LF as line endings. This also makes updating the library in the future less of a pita. Besides some tinymce library plugins and random atto yui files all moodle source uses LF as line endings, so I think that also justifies the change.
3.summary: Upgrade Bennu to 0.2
description: Bennu (lib/bennu/) 0.1 --> 0.2 :
4.summary: Upgrade Horde to latest version
description: Follow instructions in
5.summary: Upgrade p-editor-php-library and p-php-library to moodle-1.23
description: p-editor-php-library (joubel/editor) moodle-1.22.4 --> moodle-1.23 : p-php-library (joubel/editor) moodle-1.22.4 --> moodle-1.23 :
6.summary: Upgrade OpenSpout to 4.13.0
description: OpenSpout 3.x to 4.0 :
7.summary: Upgrade PHPMailer to 6.7.1
description: PHPMailer lib/phpmailer/ 6.6.5 --> 6.7.1
8.summary: Upgrade ADODB to 5.22.4
description: AdoDB (/lib/adodb/) 5.22.2 --> 5.22.4:
9.summary: Upgrade MatthiasMullie\Minify to 1.3.70
description: MatthiasMullie\Minify lib/minify/matthiasmullie-minify/ 1.3.69 --> 1.3.70
10.summary: Upgrade Simplepie to 1.8.0
description: SimplePie lib/simplepie/ 1.6.0 --> 1.8.0
11.summary: Upgrade TCPDF to 6.6.2
description: TCPDF lib/tcpdf/ 6.5.0 --> 6.6.2
12.summary: Upgrade jQuery to 3.6.4
description: jQuery lib/jquery/ 3.6.1 --> 3.6.4 -jQuery UI lib/jquery/ui 1.13.0 --> 1.13.2- jQuery UI is updated to 1.13.2 in
13.summary: Upgrade loglevel.js to the latest version
description: loglevel.js lib/amd/src/loglevel.js 1.8.0 --> 1.8.1
14.summary: Upgrade PHP-JWT to 6.4.0
description: PHP-JWT lib/php-jwt/ 6.3.0 --> 6.4.0
15.summary: Upgrade Rangy to 1.3.1
description: Rangy lib/editor/atto/yui/src/rangy/js/. 1.3.0 --> 1.3.1
16.summary: Upgrade Tiny to 6.3.2
description: Tiny lib/editor/tiny/ 6.2.0 --> 6.3.2 . Summary of changes . 6.3.0 Source: No impacting Improvements, Additions, Changes or Bug fixes. One security issue is included but it is not believed to affect our usage of TinyMCE. . 6.3.2 Source: No impacting Improvements, Additions, Changes or Bug fixes.
17.summary: Upgrade JSBeautify to 1.14.7
description: jsbeautify lib/editor/atto/plugins/html/yui/src/beautify/ 1.14.6 --> 1.14.7
18.summary: Upgrade PHPSpreadSheet to 1.28.0
description: PhpSpreadsheet lib/phpspreadsheet/ 1.25.2 --> 1.28.0
19.summary: Upgrade ZipStream to 2.4.0
description: ZipStream lib/zipstream 2.2.0 --> 3.0.0
20.summary: Upgrade php-enum to 1.8.4
description: php-enum lib/php-enum 1.8.3 --> 1.8.4
21.summary: Upgrade axe-core to 4.6.3
description: axe-core behat/axe 4.5.1 --> 4.6.3
22.summary: Upgrade lti1p3 to patched v5.2.6
description: lti1p3 lib/lti1p3 5.2.1 --> 5.2.6
23.summary: Upgrade lunr.js to 2.3.9
description: lunr.js amd/src/lunr.js 2.3.8 --> 2.3.9
24.summary: Upgrade regenerator-runtime to the latest version
description: regenerator-runtime polyfills 0.13.7 --> 0.14.1
25.summary: Upgrade Font Awesome to 6.3.0
description: Font Awesome lib/fonts/ 4.7.0 --> 6.3.0 Upgrade the Font Awesome third-party library from 4.7 to the latest from the Font Awesome Free. Interesting links:
26.summary: Upgrade Bootstrap to latest stable version
description: We are currently using Bootstrap 4.6.0 We should update to 4.6.2 which will allow us to switch scss compliation to scss on CLI, which is possible on both x86 and arm chipsets.
27.summary: Upgrade Codemirror to 5.65.12
description: codemirror lib/editor/atto/plugins/html/yui/src/codemirror/ 5.65.9 --> 5.65.12
28.summary: Upgrade GeoIP2 PHP API to the latest version
description: GeoIP2 PHP API lib/maxmind/GeoIp2/ 2.11.0 --> 2.13.0
29.summary: Upgrade EvalMath to 1.0.1
description: EvalMath (/lib/evalmath/) 1.0.0 --> 1.0.1 :
30.summary: Upgrade Chart.js to the latest version
description: Chart.js lib/amd/src/chartjs-lazy.js 3.8.0 --> 4.2.1
31.summary: Upgrade yuilib to the latest version
description: YUI yuilib 3.17.2 --> 3.18.1
