Actions

Difference between revisions of "Developer Area/Plugins/Third party"

From Mahara Wiki

< Developer Area‎ | Plugins
(10 intermediate revisions by the same user not shown)
Line 10: Line 10:
 
For any confusion you can also check against https://www.iso.org
 
For any confusion you can also check against https://www.iso.org
  
====Legend====
+
== Third-party libraries (PHP and JS) ==
  
 +
===Legend===
 +
 +
*'''Mahara version''' = the <code>README.Mahara</code> file for the library | [https://nodejs.dev/learn/semantic-versioning-using-npm SemVer Info] - explaining the symbols in the Mahara version column
 +
*'''Latest version''' = the most recent available version
 +
*'''22.10''' = Will this need to be updated for this release? | 🚧: In progress/there is a working patch in Gerrit
 +
*'''Security''' = is there a new security patch available?
 +
*'''Upgrades/updates''' = what upgrades are available for this plugin?
 +
*'''Support''' = Is there a community supporting this library?
 +
**Active: There is ongoing work being put into the library
 +
**Inactive: Maintained but not actively making releases
 +
**Archived: Not being maintained
 +
**Deprecated (officially): All maintainers have left, and site may not exist in extreme cases.
 
*'''PHP8''' = is the latest version of this plugin compatible with PHP8?
 
*'''PHP8''' = is the latest version of this plugin compatible with PHP8?
*'''Upgrades''' = what upgrades are available for this plugin?
+
*'''README location''' = where it can be found in Mahara
*'''Support''' = notes on end of support | Active | Inactive | Deprecated (officially)
+
*'''License''' = software license for the library
*'''Security''' = is there a new security patch available?
+
*'''URL/Notes''' = extra information, e.g. resources, notes, and news
*'''22.04''' = Will this need to be updated for this version?
 
*[https://nodejs.dev/learn/semantic-versioning-using-npm SemVer Info] - explaining the symbols in the Mahara version column
 
*Inactive: Maintained but not actively making releases
 
*Deprecated: All maintainers have left and site may not exist in extreme cases.
 
*🚧: In progress/there is a working patch in Gerrit
 
  
 
{| class="wikitable sortable" style="vertical-align:middle;"
 
{| class="wikitable sortable" style="vertical-align:middle;"
Line 28: Line 35:
 
!'''Latest<br />version<br />'''
 
!'''Latest<br />version<br />'''
 
!'''22.10'''
 
!'''22.10'''
 +
!'''Security'''
 +
!'''Upgrades/Updates'''
 
!'''PHP8'''
 
!'''PHP8'''
!'''Upgrades/Updates'''
 
 
!'''Support'''
 
!'''Support'''
!'''Security'''
+
!'''README location<br />'''<code>(./htdocs/...)</code>
!'''Notes'''
 
!'''README.Mahara <br />(./htdocs/...)'''
 
!'''URL'''
 
 
!'''License'''
 
!'''License'''
 +
!'''URL/Notes'''
 
|-
 
|-
 
| style="font-weight:bold;" |ADODB
 
| style="font-weight:bold;" |ADODB
 
|5.22.0
 
|5.22.0
 
|5.22.3
 
|5.22.3
|🚧
+
|TBC
 +
|No
 +
| style="color:#333;" |Patch
 
|Yes 8.1
 
|Yes 8.1
| style="color:#333;" |Patch
 
-remove support for legacy SQL drivers
 
 
-PHP 8 support
 
 
|Active
 
|Active
|No
 
|News: https://twitter.com/ADOdb_announce first.<br />Wishlist: [https://bugs.launchpad.net/mahara/+bug/1945264 extract our $SESSION]<br />php 8.0 ready.
 
 
|.../lib/adodb/
 
|.../lib/adodb/
|  - [https://adodb.org/dokuwiki/doku.php Official site]<br />- [https://github.com/ADOdb/ADOdb GitHub]
 
 
|BSD 3-Clause<br />LGPL
 
|BSD 3-Clause<br />LGPL
 +
|[https://adodb.org/dokuwiki/doku.php Official site]<nowiki> | </nowiki>[https://github.com/ADOdb/ADOdb GitHub]<nowiki> |  </nowiki>[https://twitter.com/ADOdb_announce Twitter]<br />Wish-list: [https://bugs.launchpad.net/mahara/+bug/1945264 extract $SESSION]
 
|-
 
|-
 
| style="font-weight:bold;" |Bootstrap
 
| style="font-weight:bold;" |Bootstrap
 
|5.0.1
 
|5.0.1
 
|5.2.2
 
|5.2.2
|
+
|TBC
 +
|No
 +
|Minor
 
|n/a
 
|n/a
|Minor
+
|Active
|Active LTS
 
|No
 
|
 
 
|.../lib/bootstrap/assets/javascripts/<br />
 
|.../lib/bootstrap/assets/javascripts/<br />
| - [https://github.com/twbs/release GitHub releases]
+
|MIT
- [https://github.com/twbs/bootstrap GitHub project]
+
|[https://github.com/twbs/release Releases]<nowiki> | </nowiki>[https://github.com/twbs/bootstrap GitHub]
 
+
[https://getbootstrap.com/docs/versions/ bootstrap versions]
- [https://getbootstrap.com/docs/versions/ bootstrap versions]
 
|MIT License
 
 
|-
 
|-
| style="font-weight:bold;" |Bootstrap <br />Datetimepicker
+
| style="font-weight:bold;" |Date time
|=4.17.47
+
picker
 +
|4.17.47
 
|6.2.4
 
|6.2.4
|
+
|TBC
 +
|N/A
 +
|Major
 
|n/a
 
|n/a
|Major (beta)
 
 
|Active - 6
 
|Active - 6
 
Inactive - 4
 
Inactive - 4
|N/A
 
|Rewrite
 
 
|.../js/bootstrap-datetimepicker/
 
|.../js/bootstrap-datetimepicker/
|<nowiki>- </nowiki>[https://getdatepicker.com/ GitHub]<br />[https://getdatepicker.com/6/change-log.html https://getdatepicker.com/]
+
|MIT
|MIT License
+
|[https://github.com/Eonasdan/tempus-dominus GitHub]<nowiki> | </nowiki>[https://getdatepicker.com/6/change-log.html Get Date Picker]
 +
 
 +
Latest release: rewrite (beta)
 
|-
 
|-
 
| style="font-weight:bold;" |Chart.js
 
| style="font-weight:bold;" |Chart.js
 
|3.7.1
 
|3.7.1
 
|3.9.1
 
|3.9.1
|🚧
+
|TBC
 +
|No
 +
|Minor
 
|n/a
 
|n/a
|Minor
 
 
|Active
 
|Active
|No
 
|
 
 
|.../js/chartjs/
 
|.../js/chartjs/
| - http://www.chartjs.org
+
|MIT
- [https://github.com/chartjs/Chart.js GitHub]
+
|[http://www.chartjs.org Chart JS]<nowiki> | </nowiki>[https://github.com/chartjs/Chart.js GitHub]
|MIT License
 
 
|-
 
|-
| style="font-weight:bold;" |Clipboard js 🌸 Doris stopped here 🌸
+
| style="font-weight:bold;" |Clipboard js
|^2.0.8
 
 
|2.0.10
 
|2.0.10
|🚧
+
|May 2022
 +
|TBC
 +
|No
 +
|Minor
 
|n/a
 
|n/a
|Patch fix
 
 
|Active
 
|Active
|
 
|
 
 
|.../js/clipboard/
 
|.../js/clipboard/
|https://clipboardjs.com/
+
|MIT
[https://github.com/zenorocha/clipboard.js GitHub]
+
|[https://clipboardjs.com/ Clipboard JS]<nowiki> | </nowiki>[https://github.com/zenorocha/clipboard.js GitHub]<br />Latest release: the version number system isn't used.
|MIT License
 
 
|-
 
|-
| style="font-weight:bold;" |Cookie <br />consent
+
| style="font-weight:bold;" |Cookie consent
|=3.1.1
+
|3.1.1
 
|4.0
 
|4.0
|
+
|TBC
 +
|No
 +
|n/a
 
|n/a
 
|n/a
|None
+
|Inactive
|New updates are<br />proprietary.
+
 
|
 
|Site talks about versions 2021.6 and 2021.2.3 <br />which are not available on GitHub.<br />💡Check if we should keep using this - licences.
 
 
|.../js/cookieconsent/
 
|.../js/cookieconsent/
| - https://www.osano.com/cookieconsent<br />- https://github.com/osano/cookieconsent<br />
+
|MIT
|MIT License
+
|[https://www.osano.com/cookieconsent Download]<nowiki> | </nowiki>[https://github.com/osano/cookieconsent GitHub]
 +
 
 +
Open source version is not updated. 🚨
 
|-
 
|-
 
| style="font-weight:bold;" |CSS Tidy
 
| style="font-weight:bold;" |CSS Tidy
|~1.7.3
 
 
|2.0.1
 
|2.0.1
|🚧
+
|2.0.3
 +
|TBC
 +
|No
 +
|Patch
 
|Yes
 
|Yes
|2.0.1 released 22 Feb 2022<br />PHP8 compatible
+
|Active
|
 
|
 
|
 
 
|.../lib/csstidy/
 
|.../lib/csstidy/
|https://github.com/Cerdic/CSSTidy
 
 
|LGPL
 
|LGPL
 +
|[https://github.com/Cerdic/CSSTidy GitHub]
 
|-
 
|-
 
| style="font-weight:bold;" |Dragon-drop
 
| style="font-weight:bold;" |Dragon-drop
|^3.2.1
 
 
|3.2.1
 
|3.2.1
|
+
|[https://github.com/schne324/dragon-drop/releases/tag/v3.6.1 3.6.1]
 +
|TBC
 +
|No
 +
|Minor
 
|n/a
 
|n/a
|None<br />Pre-release minor <br />changelog not available.
+
|Inactive
|Active
+
 
|
+
2021
|3.6.1 in the making but in pre-release stages.
 
 
|..../js/dragondrop/
 
|..../js/dragondrop/
|https://github.com/schne324/dragon-drop
+
|MIT
|MIT License
+
|[https://github.com/schne324/dragon-drop GitHub]
 
|-
 
|-
 
| style="font-weight:bold;" |Datatables
 
| style="font-weight:bold;" |Datatables
|^1.10.20
 
 
|1.11.4
 
|1.11.4
|🚧
+
|1.12.1
 +
|TBC
 +
|No
 +
|Minor
 
|n/a
 
|n/a
|Patch fix
+
|Active
|Active<br />
 
|
 
|
 
 
|.../js/DataTables/
 
|.../js/DataTables/
|https://datatables.net/<br />https://datatables.net/download/index<br />
+
|MIT
|MIT License
+
|[https://datatables.net/ Data Tables]<nowiki> |</nowiki>[https://datatables.net/download/index Download]
 +
[https://cdn.datatables.net/ Release notes CDN]
 
|-
 
|-
 
| style="font-weight:bold;" |Dropzone
 
| style="font-weight:bold;" |Dropzone
|^5.7.6
+
|5.7.6
 
|5.9.3
 
|5.9.3
|🚧
+
|TBC
 +
|No
 +
|Minor
 
|n/a
 
|n/a
|Minor
 
 
|Active
 
|Active
|
 
|6.0.0 in beta
 
 
|.../js/dropzone/
 
|.../js/dropzone/
|https://github.com/dropzone/dropzone/releases
+
|MIT
|MIT License
+
|[https://github.com/dropzone/dropzone/releases GitHub releases] 6.0.0 in beta
 
|-
 
|-
 
| style="font-weight:bold;" |Dwoo
 
| style="font-weight:bold;" |Dwoo
|=1.3.7
 
 
|1.3.7
 
|1.3.7
|
+
|1.3.7
|No
+
|n/a
 +
|n/a
 
|Replace
 
|Replace
|Deprecated<br />
+
|n/a
|
+
|Deprecated
|
 
 
|.../lib/dwoo/
 
|.../lib/dwoo/
|http://dwoo.org/<br />https://github.com/dwoo-project/dwoo
 
 
|LGPL
 
|LGPL
 +
|[http://dwoo.org/ Dead site]<nowiki> | </nowiki>[https://github.com/dwoo-project/dwoo GitHub project]
 
|-
 
|-
 
| style="font-weight:bold;" |Elastic Search
 
| style="font-weight:bold;" |Elastic Search
| style="color:#333;" |>6.1.0
+
| style="color:#333;" |7.14
|7.17.0
+
|v8 - 8.4.0
|
+
v7 - 7.17.1
 +
|TBC
 +
|n/a
 +
|<nowiki>Major |Minor</nowiki>
 
|No
 
|No
|WIP - Gold
+
|Active
|Active<br />
 
|
 
|PHP 8 has a [https://github.com/elastic/elasticsearch-php/milestone/6 milestone].
 
 
|.../lib/elasticsearch/
 
|.../lib/elasticsearch/
|https://github.com/elastic/elasticsearch-php
 
 
|Apache v2.0 <br />LGPL v2.1
 
|Apache v2.0 <br />LGPL v2.1
 +
|[https://github.com/elastic/elasticsearch-php GitHub]<nowiki> | </nowiki>[https://github.com/elastic/elasticsearch-php/blob/master/CHANGELOG.md Changelog]
 +
[https://github.com/elastic/elasticsearch-php/milestone/6 PHP 8 milestone] 83%
 
|-
 
|-
| style="font-weight:bold;" |fancybox3
+
| style="font-weight:bold;" |Gridstack
|3.5.7
+
|4.3.1
|4.0.26
+
|v6 - 6.0.2
|
+
v5 - 5.1.1
 +
 
 +
v4 - 4.4.1
 +
|TBC
 +
|No
 +
|<nowiki>Major | Minor |Patch</nowiki>
 
|n/a
 
|n/a
|Removed from Mahara 11/2021
 
|Inactive<br />- v3 deprecated<br />- v4 in beta stage
 
|
 
|Only exists in branch versions 20.10, 21.04, 21.10<br />Only backport security fixes
 
|.../js/fancybox/
 
|https://github.com/fancyapps/ui - in BETA stage<br />https://fancyapps.com/docs/ui/installation<br />https://fancyapps.com/next/<br />Notifications: https://twitter.com/thefancyapps
 
|CC BY-SA 4.0
 
|-
 
| style="font-weight:bold;" |gridstack
 
|>0.6.4
 
|5.0.0
 
|
 
|n/a
 
|WIP - Robert<br />
 
 
|Active
 
|Active
|
 
|https://gridstackjs.com
 
 
|.../js/gridstack/
 
|.../js/gridstack/
|https://github.com/gridstack/gridstack.js
+
|MIT
|MIT License
+
|[https://github.com/gridstack/gridstack.js GitHub]<nowiki> | </nowiki>[https://gridstackjs.com Website]
 
|-
 
|-
 
| style="font-weight:bold;" |HTML Purifier
 
| style="font-weight:bold;" |HTML Purifier
|=4.13.0
 
 
|4.14.0
 
|4.14.0
|🚧
+
|4.16.0
 +
|TBC
 +
|No
 +
|Minor
 
|Yes
 
|Yes
|None
 
 
|
 
|
|4.14 includes PHP8 support
 
|https://github.com/ezyang/htmlpurifier/
 
 
|.../lib/htmlpurifier/
 
|.../lib/htmlpurifier/
|http://www.htmlpurifier.org/
 
 
|LGPL v2.1+
 
|LGPL v2.1+
 +
|[http://www.htmlpurifier.org/ HTML Purifier]<nowiki> | </nowiki>[https://github.com/ezyang/htmlpurifier/ GitHub]
 
|-
 
|-
 
| style="font-weight:bold;" |Javascript <br />templates
 
| style="font-weight:bold;" |Javascript <br />templates
|=3.19.0
 
 
|3.20.0
 
|3.20.0
|🚧
+
|3.20.0
 +
|n/a
 +
|n/a
 +
|n/a
 
|n/a
 
|n/a
|Minor
 
 
|Archived, 2021
 
|Archived, 2021
|
 
|
 
 
|.../js/javascript-templates/
 
|.../js/javascript-templates/
|https://github.com/blueimp/<br />[https://github.com/blueimp/JavaScript-Templates JavaScript-Templates]
+
|MIT
|MIT License
+
|[https://github.com/blueimp/JavaScript-Templates GitHub]
 
|-
 
|-
 
| style="font-weight:bold;" |jQuery
 
| style="font-weight:bold;" |jQuery
|^3.6.0
 
 
|3.6.0
 
|3.6.0
|
+
|3.6.1
 +
|TBC
 +
|No
 +
|Patch
 
|n/a
 
|n/a
|Minor
 
 
|Active
 
|Active
|
 
|https://blog.jquery.com/2021/03/02/<br />jquery-3-6-0-released/<br />News: - QA: https://forum.jquery.com/<br />Twitter: https://twitter.com/jquery
 
 
|.../js/jquery/
 
|.../js/jquery/
|http://jquery.com/<br />https://github.com/jquery/jquery
+
|MIT
|MIT License
+
|[http://jquery.com/ Website]<nowiki> | </nowiki>[https://github.com/jquery/jquery GitHub]<nowiki> | </nowiki>[https://blog.jquery.com/2021/03/02/ Blog post]<br />[https://forum.jquery.com/ Forum]<nowiki> | </nowiki>[https://twitter.com/jquery Twitter]
 +
 
 +
[https://blog.jquery.com/2022/08/26/jquery-3-6-1-maintenance-release/ 3.6.1 maintenance release]
 
|-
 
|-
 
| style="font-weight:bold;" |jQuery mobile
 
| style="font-weight:bold;" |jQuery mobile
|=1.5.0-alpha.1
+
|1.5.0-alpha.1
 
|1.5.0-rc1
 
|1.5.0-rc1
|
 
 
|n/a
 
|n/a
|None
+
|n/a
|Inactive, 2017
+
|n/a
|
+
|n/a
|https://blog.jquerymobile.com <br />- lack of resources but wish to maintain.<br />❗Find out if we are still using this.
+
|Deprecated
 
|.../js/jquery/jquery-mobile/
 
|.../js/jquery/jquery-mobile/
 +
|MIT
 
|http://jquerymobile.com
 
|http://jquerymobile.com
|MIT License
+
 
 +
https://blog.jquerymobile.com <br />🚨 Are we still using this?
 
|-
 
|-
 
| style="font-weight:bold;" |jQuery UI
 
| style="font-weight:bold;" |jQuery UI
 
|1.13.1
 
|1.13.1
|1.13.1
+
|1.13.2
|🚧
+
|TBC
 +
|No
 +
|Patch
 
|n/a
 
|n/a
|In maintenance state<br />Only security and compatibility fixes
+
|Active
|
 
|
 
|https://blog.jqueryui.com/2022/01/jquery-ui-1-13-1-released/
 
 
|.../js/jquery/jquery-ui/
 
|.../js/jquery/jquery-ui/
|http://jqueryui.com/
+
|MIT
|MIT License
+
|[http://jqueryui.com/ jQuery UI] Security and compatibility fixes
 
|-
 
|-
 
| style="font-weight:bold;" |jQuery UI plugin <br />touch-punch
 
| style="font-weight:bold;" |jQuery UI plugin <br />touch-punch
|=0.2.3
 
 
|0.2.3
 
|0.2.3
|
+
|0.2.3
 +
|n/a
 +
|n/a
 +
|n/a
 
|n/a
 
|n/a
|None
 
 
|Deprecated
 
|Deprecated
|
 
|❗Do we still need it - is it merged into jquery
 
 
|.../js/jquery/jquery-ui/<br />jquery-ui-touch-punch.min.js
 
|.../js/jquery/jquery-ui/<br />jquery-ui-touch-punch.min.js
|http://touchpunch.furf.com/<br />https://github.com/furf/jquery-ui-touch-punch
+
|MIT or GPL <br />Version 2
|MIT or GPL <br />Version 2 licenses
+
|[http://touchpunch.furf.com/ Touch Punch]<nowiki>  | </nowiki>[https://github.com/furf/jquery-ui-touch-punch GitHub]
 +
 
 +
🚨 Is it merged into jQuery?
 
|-
 
|-
 
| style="font-weight:bold;" |JS Color
 
| style="font-weight:bold;" |JS Color
 
|2.4.7
 
|2.4.7
|2.4.7
+
|2.5.0
|🚧
+
|TBC
 +
|No
 +
|Minor
 
|n/a
 
|n/a
|None
 
 
|Active
 
|Active
|
 
|
 
 
|.../js/jscolor/
 
|.../js/jscolor/
 +
|GPL 3
 
|http://jscolor.com/
 
|http://jscolor.com/
|GPL 3
 
 
|-
 
|-
 
| style="font-weight:bold;" |Json editor
 
| style="font-weight:bold;" |Json editor
|>=1.3.5
 
 
|2.6.1
 
|2.6.1
|
+
|2.8.0
 +
|TBC
 +
|No
 +
|Minor
 
|n/a
 
|n/a
|Major 2.x
 
 
|Active
 
|Active
|
 
| - Patch started, including child patch with Mahara customisations: https://bugs.launchpad.net/mahara/+bug/1962219
 
- Issue with select field dropdowns in SmartEvidence editor: possibly related to select2 plugin - leave for 22.10
 
 
|.../js/jsoneditor/
 
|.../js/jsoneditor/
|https://github.com/json-editor/json-editor
+
|MIT
|MIT License
+
|[https://github.com/json-editor/json-editor GitHub]<nowiki> |</nowiki>[https://github.com/json-editor/json-editor/blob/master/CHANGELOG.md Changelog]
 
|-
 
|-
 
| style="font-weight:bold;" |jTLine
 
| style="font-weight:bold;" |jTLine
|=1.0
 
 
|1.0
 
|1.0
|
+
|1.0
 +
|n/a
 +
|n/a
 +
|n/a
 
|n/a
 
|n/a
|None
 
 
|Inactive, 2018
 
|Inactive, 2018
|
 
|https://twitter.com/naadydev
 
 
|.../js/jTLine/
 
|.../js/jTLine/
|https://naadydev.github.io/jTLine/
+
|MIT
|MIT License
+
|[https://naadydev.github.io/jTLine/ GitHub]<nowiki> | </nowiki>[https://twitter.com/naadydev Twitter]
|-
 
| style="font-weight:bold;" |Lodash
 
| style="color:#333;" |^4.17.15
 
|4.17.21
 
|
 
|n/a
 
|Patch fix
 
|Active
 
|
 
| - Lodash was brought in with gridstack v0.5.0 <br />- Will be removed when gridstack 4+ gets merged.
 
|.../js/lodash/
 
|https://github.com/lodash/lodash
 
|MIT License
 
 
|-
 
|-
 
| style="font-weight:bold;" |Marked
 
| style="font-weight:bold;" |Marked
|^2.1.3
 
 
|4.0.12
 
|4.0.12
|🚧
+
|4.1.1
 +
|TBC
 +
|No
 +
|Minor
 
|n/a
 
|n/a
|Minor - v2.1.1, v2.1.2, v2.1.3<br />Major 3.x - breaking changes<br />4.0.0 Major security fixes
 
 
|Active
 
|Active
|Yes
 
|
 
 
|.../js/marked/
 
|.../js/marked/
|https://github.com/markedjs/marked
+
|MIT
|MIT License
+
|[https://github.com/markedjs/marked GitHub]
 
|-
 
|-
 
| style="font-weight:bold;" |Masonry
 
| style="font-weight:bold;" |Masonry
|=4.2.2
 
 
|4.2.2
 
|4.2.2
|
+
|4.2.2
 +
|n/a
 +
|n/a
 +
|n/a
 
|n/a
 
|n/a
|None
 
 
|Inactive, 2018
 
|Inactive, 2018
|
 
|
 
 
|.../js/masonry/
 
|.../js/masonry/
|https://masonry.desandro.com/<br />https://github.com/desandro/masonry
+
|MIT
|MIT License
+
|[https://masonry.desandro.com/ Masonry]<nowiki> |</nowiki>[https://github.com/desandro/masonry GitHub]
 
|-
 
|-
 
| style="font-weight:bold;" |TinyMCE<br />Mathslate
 
| style="font-weight:bold;" |TinyMCE<br />Mathslate
 
|1.1
 
|1.1
 
|1.1
 
|1.1
|🚧
 
 
|n/a
 
|n/a
|None
+
|n/a
|Forked version, 2015
+
|n/a
|
+
|n/a
|Our version is now forked to keep <br />make it work with Tinymce 5
+
|Forked, 2015
 
|.../js/tinymce/plugins/mathslate/
 
|.../js/tinymce/plugins/mathslate/
|https://github.com/dthies/tinymce4-mathslate
 
 
|GPL 3
 
|GPL 3
 +
|Our version is [[GitHub|forked]].<br />make it work with Tinymce 5
 
|-
 
|-
 
| style="font-weight:bold;" |Moment.js
 
| style="font-weight:bold;" |Moment.js
|^2.29.1
 
 
|2.29.1
 
|2.29.1
|
+
|2.29.4
 +
|TBC
 +
|No
 +
|Patch
 
|n/a
 
|n/a
|None
+
|Active
|Inactive, 2020
 
|
 
|Succeeded by Luxon: https://moment.github.io/luxon/#/
 
Connected with jquery date-picker
 
 
|.../js/momentjs/
 
|.../js/momentjs/
|http://momentjs.com/
+
|MIT
|MIT License
+
|[http://momentjs.com/ Moment JS] 🆕 [https://moment.github.io/luxon/#/ Luxon GitHub]
 +
 
 +
Connected to jquery date-picker
 
|-
 
|-
 
| style="font-weight:bold;" |Oauth PHP
 
| style="font-weight:bold;" |Oauth PHP
|=175
 
 
|175
 
|175
|
+
|175
 +
|n/a
 +
|n/a
 +
|Replace
 
|No
 
|No
|Replace
 
 
|Archived, 2010
 
|Archived, 2010
|
 
|We should replace with an oauth2 php library <br />https://oauth.net/code/php<br />checkout what Moodle does (old comment)
 
 
|.../webservice/libs/oauth-php/
 
|.../webservice/libs/oauth-php/
|https://code.google.com/archive/p/oauth-php/
+
|MIT
|MIT License
+
|[https://code.google.com/archive/p/oauth-php/ Code] - We should replace with an [https://oauth.net/code/php oauth2 php library] checkout what Moodle does (old comment)
 
|-
 
|-
 
| style="font-weight:bold;" |PDFjs
 
| style="font-weight:bold;" |PDFjs
|^2.9.359
+
|2.13.216
|2.12.313<br />
+
|2.16.105
|🚧
+
|TBC
 +
|No
 +
|Minor
 
|n/a
 
|n/a
|Minor
 
 
|Active
 
|Active
|
 
|
 
 
|.../artefact/file/blocktype/pdf/js/pdfjs/
 
|.../artefact/file/blocktype/pdf/js/pdfjs/
|http://mozilla.github.io/pdf.js/<br />getting_started/#download<br />https://github.com/mozilla/pdf.js
 
 
|Apache License 2
 
|Apache License 2
 +
|[http://mozilla.github.io/pdf.js/getting_started/#download Getting started]<nowiki> | </nowiki>[https://github.com/mozilla/pdf.js GitHub]
 
|-
 
|-
 
| style="font-weight:bold;" |PHPMailer
 
| style="font-weight:bold;" |PHPMailer
|^6.5.1
+
|6.6.0
|6.5.4
+
|6.6.4
|🚧
+
|TBC
 +
|No
 +
|Patch
 
|Yes
 
|Yes
|Minor 6.5.0 - security release<br />Minor 6.5.1 - maintenance release<br />PHP8 support
 
 
|Active<br />
 
|Active<br />
|Yes
 
|
 
 
|.../lib/phpmailer/
 
|.../lib/phpmailer/
|https://github.com/PHPMailer/PHPMailer
 
 
|LGPL
 
|LGPL
 +
|[https://github.com/PHPMailer/PHPMailer GitHub]
 
|-
 
|-
 
| style="font-weight:bold;" |Popper
 
| style="font-weight:bold;" |Popper
|^1.16.1 LTS
+
|2.10.2
|2.11.2
+
|2.11.6
|
+
|TBC
 +
|No
 +
|Minor
 
|n/a
 
|n/a
|Major 2.x upgrade is available, but Bootstrap 5 is required for v2.x, so on hold until we have Bootstrap 5 (should be in by 22.10)
+
|Active
|Active v2<br />LTS 1.16.1 <br />w/o warnings
 
|
 
|https://github.com/twbs/bootstrap/issues/31451
 
 
 
 
 
https://dev.to/fezvrasta/smarter-tooltips-and<br />-popovers-with-popper-2-44bh<br />
 
 
|.../js/popper/
 
|.../js/popper/
|https://popper.js.org/
+
|MIT
|MIT License
+
|https://popper.js.org/<br />[https://github.com/twbs/bootstrap/issues/31451 GitHub issue]<nowiki> | </nowiki>[https://dev.to/fezvrasta/smarter-tooltips-and&#x20;-popovers-with-popper-2-44bh tooltips]
 
|-
 
|-
 
| style="font-weight:bold;" |ReCaptcha
 
| style="font-weight:bold;" |ReCaptcha
|^1.2.4
 
 
|1.2.4
 
|1.2.4
|
+
|1.2.4
|In progress
+
|TBC
|Patch
+
|No
|Active
+
|None
|
+
|WIP
|This client supports both v2 and v3.<br />https://github.com/google/recaptcha/tree/php8-support
+
PHP8
 +
|Idle?
 
|.../lib/recaptcha/
 
|.../lib/recaptcha/
|https://github.com/google/recaptcha
 
 
|BSD-3
 
|BSD-3
 +
|[https://github.com/google/recaptcha GitHub] 2020 last release
 +
This client supports both v2 and v3. [https://github.com/google/recaptcha/tree/php8-support PHP 8 support branch]
 
|-
 
|-
 
| style="font-weight:bold;" |simplesamlphp
 
| style="font-weight:bold;" |simplesamlphp
|^1.18.7
+
|1.18.7
|1.19.5
+
|[https://github.com/simplesamlphp/simplesamlphp/releases/tag/v1.19.6 final 1.19.6]
|🚧
+
v2 - RC
|Yes 8.1
+
|TBC
|
+
|No
 +
|Minor
 +
|Yes
 
|Active
 
|Active
|
+
|../auth/saml/extlib/modules
|/htdocs/auth/saml/extlib/ <br />- Make a README.Mahara file<br />PHP 8 coming in v2.x. [https://github.com/simplesamlphp/simplesamlphp/issues/1521#issuecomment-917600539 Sounds like it should work on 1.19.1 though].
 
|../auth/saml/extlib/simplesamlphp/
 
|https://github.com/simplesamlphp/<br />[https://github.com/simplesamlphp/simplesamlphp simplesamlphp]
 
 
|GPL 2.1
 
|GPL 2.1
 +
|[https://github.com/simplesamlphp/simplesamlphp GitHub] RC for 2.0.0 has PHP 8. [https://github.com/simplesamlphp/simplesamlphp/issues/1521#issuecomment-917600539 Sounds like it should work on 1.19.1 though].
 
|-
 
|-
 
| style="font-weight:bold;" |Select2
 
| style="font-weight:bold;" |Select2
|^4.0.13
 
 
|4.0.13
 
|4.0.13
|
+
|4.1
 +
|TBC
 +
|No
 +
|Major
 
|n/a
 
|n/a
|Patch
 
 
|Active
 
|Active
|
 
|
 
 
|.../js/select2/
 
|.../js/select2/
|https://select2.org/
+
|MIT
|MIT License
+
|[https://select2.org/ Select2]<nowiki> | </nowiki>[https://github.com/select2/select2/releases Releases]
 +
Latest: breaking changes
 
|-
 
|-
 
| style="font-weight:bold;" |Aurulent Sans <br />(font)
 
| style="font-weight:bold;" |Aurulent Sans <br />(font)
|^2007.05.04
 
 
|2007.05.04
 
|2007.05.04
|
+
|2007.05.04
 +
|n/a
 +
|n/a
 +
|n/a
 +
|n/a
 
|n/a
 
|n/a
|None
 
|Unknown
 
|
 
|
 
 
|.../lib/fonts/
 
|.../lib/fonts/
|http://www.fontsquirrel.com/fonts/<br />Aurulent-Sans
 
 
|SIL OFL v1.10
 
|SIL OFL v1.10
 +
|[https://www.fontsquirrel.com/fonts/aurulent-sans Font Squirrel Aurulent Sans]
 
|-
 
|-
 
| style="font-weight:bold;" |Deja Vu Sans <br />(font)
 
| style="font-weight:bold;" |Deja Vu Sans <br />(font)
|^2.37
 
 
|2.37
 
|2.37
|
+
|2.37
 +
|n/a
 +
|n/a
 +
|n/a
 +
|n/a
 
|n/a
 
|n/a
|Patch
 
|Unknown
 
|
 
|
 
 
|.../lib/fonts/
 
|.../lib/fonts/
|http://www.fontsquirrel.com/fonts/<br />DejaVu-Sans
+
|DejaVu Fonts
|DejaVu Fonts <br />License v1.00
+
|[http://www.fontsquirrel.com/fonts/DejaVu-Sans Font Squirrel Deja Vu Sans]
 
|-
 
|-
 
| style="font-weight:bold;" |Open Sans <br />(font)
 
| style="font-weight:bold;" |Open Sans <br />(font)
|^1.10
 
 
|1.10
 
|1.10
|
+
|1.10
 +
|n/a
 +
|n/a
 +
|n/a
 
|n/a
 
|n/a
|None
 
 
|Unknown
 
|Unknown
|
 
|
 
 
|.../theme/raw/fonts/
 
|.../theme/raw/fonts/
|https://www.google.com/fonts/<br />specimen/Open+Sans
+
|Apache License
|Apache License <br />version 2.0
+
|[https://www.google.com/fonts/specimen/Open+Sans Google Fonts Open Sans]
 
|-
 
|-
 
| style="font-weight:bold;" |Roboto Slab <br />(font)
 
| style="font-weight:bold;" |Roboto Slab <br />(font)
|^1.9
 
 
|1.100263
 
|1.100263
|
+
|1.100263
 +
|n/a
 +
|n/a
 +
|n/a
 
|n/a
 
|n/a
|Minor
 
 
|Unknown
 
|Unknown
|
 
|
 
 
|.../theme/raw/fonts/
 
|.../theme/raw/fonts/
|https://www.google.com/fonts/<br />specimen/Roboto+Slab
+
|MIT
|MIT License
+
|[https://www.google.com/fonts/specimen/Roboto+Slab Google Fonts Roboto]
 
|-
 
|-
 
| style="font-weight:bold;" |Fontawesome
 
| style="font-weight:bold;" |Fontawesome
|^5.8.1
+
|6.1.1
|6.0.0
+
|6.2.0
|
+
|TBC
 +
|No
 +
|Minor
 
|n/a
 
|n/a
|Major 6.0.0
 
 
|Active
 
|Active
|
 
|Patch in progress here: https://reviews.mahara.org/#/c/12463/ (on hold for 22.10)
 
https://fontawesome.com/docs/web/setup/upgrade/
 
 
|.../theme/raw/sass/lib/font-awesome/
 
|.../theme/raw/sass/lib/font-awesome/
|http://fontawesome.io<br />https://github.com/FortAwesome/Font-Awesome
 
 
|SIL OFL 1.1
 
|SIL OFL 1.1
|-
+
|[http://fontawesome.io Font Awesome]<nowiki> | </nowiki>[https://github.com/FortAwesome/Font-Awesome GitHub]<nowiki> | </nowiki>[https://fontawesome.com/docs/web/setup/upgrade/ Upgrade steps]<nowiki> | </nowiki>[https://fontawesome.com/docs/changelog/ Changelog]
| style="font-weight:bold;" |Ghostscript <br />fonts
 
|^8.11
 
|9.54.0
 
|
 
|n/a
 
|Major
 
|Active
 
|
 
|❗What do we use it for?
 
|.../theme/raw/fonts/
 
| - http://sourceforge.net/projects/gs-fonts/<br />- https://www.ghostscript.com/releases.html
 
|AGPL
 
 
|-
 
|-
 
| style="font-weight:bold;" |Charis SIL <br />(fonts)
 
| style="font-weight:bold;" |Charis SIL <br />(fonts)
|^5.000
 
 
|6.001
 
|6.001
|
+
|6.001
 +
|n/a
 +
|n/a
 +
|n/a
 
|n/a
 
|n/a
|Major
 
 
|Active
 
|Active
|
 
|
 
 
|.././lib/fonts/
 
|.././lib/fonts/
| - http://scripts.sil.org/cms/scripts/page.php<br />?item_id=CharisSIL<br />- https://software.sil.org/charis/download/
 
 
|SIL OFL
 
|SIL OFL
 +
| [http://scripts.sil.org/cms/scripts/page.php?item_id=CharisSIL About font]<nowiki> | </nowiki>[https://software.sil.org/charis/download/ Download]
 
|-
 
|-
 
| style="font-weight:bold;" |TinyMCE
 
| style="font-weight:bold;" |TinyMCE
 
|5.10.2
 
|5.10.2
|5.10.2
+
|5.10.5
|🚧
+
|TBC
 +
|No
 +
|Patch
 
|n/a
 
|n/a
|Major security patch - XSS
 
 
|Active
 
|Active
|Yes
 
|https://www.tiny.cloud/docs/changelog/<br />📲 Test on mobile when updating<br />https://www.tiny.cloud/blog/category/<br />news-and-updates/
 
 
|.../js/tinymce/
 
|.../js/tinymce/
|https://www.tiny.cloud/<br />https://www.tiny.cloud/get-tiny/self-hosted
 
 
|LGPL 2.1
 
|LGPL 2.1
 +
|[https://www.tiny.cloud/ Tiny Cloud]<nowiki> | </nowiki>[https://www.tiny.cloud/get-tiny/self-hosted Downloads]<nowiki> | </nowiki>[https://www.tiny.cloud/docs/changelog/ Changelog]<nowiki> |</nowiki>[https://www.tiny.cloud/blog/category/news-and-updates/ News]
 +
📲 Test on mobile
 
|-
 
|-
 
| style="font-weight:bold;" |Video.js
 
| style="font-weight:bold;" |Video.js
 
|7.17.0
 
|7.17.0
|7.17.0
+
|7.20.3
|🚧
+
|TBC
 +
|No
 +
|Minor
 
|n/a
 
|n/a
|
 
 
|Active
 
|Active
|
 
|Pre-released 7.18.1 Feb 2022
 
 
|.../artefact/file/blocktype/<br />internalmedia/videojs/
 
|.../artefact/file/blocktype/<br />internalmedia/videojs/
|http://videojs.com/<br />https://github.com/videojs/video.js
 
 
|Apache License 2.0
 
|Apache License 2.0
 +
|[http://videojs.com/ Video JS]<nowiki> | </nowiki>[https://github.com/videojs/video.js GitHub]
 
|-
 
|-
 
| style="font-weight:bold;" |zxcvbn
 
| style="font-weight:bold;" |zxcvbn
|=4.4.2
 
 
|4.4.2
 
|4.4.2
|
+
|4.4.2
 +
|n/a
 +
|n/a
 +
|n/a
 
|n/a
 
|n/a
|None
 
 
|Inactive, 2017
 
|Inactive, 2017
|
 
|
 
 
|.../js/zxcvbn/
 
|.../js/zxcvbn/
|https://github.com/dropbox/zxcvbn
+
|MIT
|MIT License
+
|[https://github.com/dropbox/zxcvbn GitHub]
|-
 
| style="font-weight:bold;" |composer.json<br />dependencies<br />
 
|
 
|
 
|
 
|
 
|
 
|
 
|
 
|
 
|https://git.mahara.org<br />/mahara/mahara/-/blob/<br />master/external/composer.json
 
|Check for updates in the .json file.
 
|
 
 
|}
 
|}
 +
 +
== Composer.json dependencies ==
 +
'''Resources:''' https://git.mahara.org | <code>/mahara/mahara/-/blob/</code> | <code>mahara/external/composer.json</code>
 +
 +
'''Run''' <code>composer external/outdated</code> to check for updates.

Revision as of 15:36, 5 October 2022

A list of the third-party plugins within Mahara.

A helpful way to update this list is to go:

 find ./htdocs -type f -iname "README.Mahara" -exec grep 'Version' -B1 {} \; -print

... on the current codebase.

Note: another thing to keep in sync is the country names we use for 'Country' dropdowns. To check what the current state of play is

perl -MLocale::Country -le 'print join("\n", sort map { country2code($_) . " => " . country2code($_, LOCALE_CODE_ALPHA_3) . ", // " . $_ } all_country_names())'

and check the results against htdocs/lib/country.php and htdocs/lang/en.utf8/mahara.php files For any confusion you can also check against https://www.iso.org

Third-party libraries (PHP and JS)

Legend

  • Mahara version = the README.Mahara file for the library | SemVer Info - explaining the symbols in the Mahara version column
  • Latest version = the most recent available version
  • 22.10 = Will this need to be updated for this release? | 🚧: In progress/there is a working patch in Gerrit
  • Security = is there a new security patch available?
  • Upgrades/updates = what upgrades are available for this plugin?
  • Support = Is there a community supporting this library?
    • Active: There is ongoing work being put into the library
    • Inactive: Maintained but not actively making releases
    • Archived: Not being maintained
    • Deprecated (officially): All maintainers have left, and site may not exist in extreme cases.
  • PHP8 = is the latest version of this plugin compatible with PHP8?
  • README location = where it can be found in Mahara
  • License = software license for the library
  • URL/Notes = extra information, e.g. resources, notes, and news
Name Mahara
version
Latest
version
22.10 Security Upgrades/Updates PHP8 Support README location
(./htdocs/...)
License URL/Notes
ADODB 5.22.0 5.22.3 TBC No Patch Yes 8.1 Active .../lib/adodb/ BSD 3-Clause
LGPL
Official site | GitHub | Twitter
Wish-list: extract $SESSION
Bootstrap 5.0.1 5.2.2 TBC No Minor n/a Active .../lib/bootstrap/assets/javascripts/
MIT Releases | GitHub

bootstrap versions

Date time

picker

4.17.47 6.2.4 TBC N/A Major n/a Active - 6

Inactive - 4

.../js/bootstrap-datetimepicker/ MIT GitHub | Get Date Picker

Latest release: rewrite (beta)

Chart.js 3.7.1 3.9.1 TBC No Minor n/a Active .../js/chartjs/ MIT Chart JS | GitHub
Clipboard js 2.0.10 May 2022 TBC No Minor n/a Active .../js/clipboard/ MIT Clipboard JS | GitHub
Latest release: the version number system isn't used.
Cookie consent 3.1.1 4.0 TBC No n/a n/a Inactive .../js/cookieconsent/ MIT Download | GitHub

Open source version is not updated. 🚨

CSS Tidy 2.0.1 2.0.3 TBC No Patch Yes Active .../lib/csstidy/ LGPL GitHub
Dragon-drop 3.2.1 3.6.1 TBC No Minor n/a Inactive

2021

..../js/dragondrop/ MIT GitHub
Datatables 1.11.4 1.12.1 TBC No Minor n/a Active .../js/DataTables/ MIT Data Tables |Download

Release notes CDN

Dropzone 5.7.6 5.9.3 TBC No Minor n/a Active .../js/dropzone/ MIT GitHub releases 6.0.0 in beta
Dwoo 1.3.7 1.3.7 n/a n/a Replace n/a Deprecated .../lib/dwoo/ LGPL Dead site | GitHub project
Elastic Search 7.14 v8 - 8.4.0

v7 - 7.17.1

TBC n/a Major |Minor No Active .../lib/elasticsearch/ Apache v2.0
LGPL v2.1
GitHub | Changelog

PHP 8 milestone 83%

Gridstack 4.3.1 v6 - 6.0.2

v5 - 5.1.1

v4 - 4.4.1

TBC No Major | Minor |Patch n/a Active .../js/gridstack/ MIT GitHub | Website
HTML Purifier 4.14.0 4.16.0 TBC No Minor Yes .../lib/htmlpurifier/ LGPL v2.1+ HTML Purifier | GitHub
Javascript
templates
3.20.0 3.20.0 n/a n/a n/a n/a Archived, 2021 .../js/javascript-templates/ MIT GitHub
jQuery 3.6.0 3.6.1 TBC No Patch n/a Active .../js/jquery/ MIT Website | GitHub | Blog post
Forum | Twitter

3.6.1 maintenance release

jQuery mobile 1.5.0-alpha.1 1.5.0-rc1 n/a n/a n/a n/a Deprecated .../js/jquery/jquery-mobile/ MIT http://jquerymobile.com

https://blog.jquerymobile.com
🚨 Are we still using this?

jQuery UI 1.13.1 1.13.2 TBC No Patch n/a Active .../js/jquery/jquery-ui/ MIT jQuery UI Security and compatibility fixes
jQuery UI plugin
touch-punch
0.2.3 0.2.3 n/a n/a n/a n/a Deprecated .../js/jquery/jquery-ui/
jquery-ui-touch-punch.min.js
MIT or GPL
Version 2
Touch Punch | GitHub

🚨 Is it merged into jQuery?

JS Color 2.4.7 2.5.0 TBC No Minor n/a Active .../js/jscolor/ GPL 3 http://jscolor.com/
Json editor 2.6.1 2.8.0 TBC No Minor n/a Active .../js/jsoneditor/ MIT GitHub |Changelog
jTLine 1.0 1.0 n/a n/a n/a n/a Inactive, 2018 .../js/jTLine/ MIT GitHub | Twitter
Marked 4.0.12 4.1.1 TBC No Minor n/a Active .../js/marked/ MIT GitHub
Masonry 4.2.2 4.2.2 n/a n/a n/a n/a Inactive, 2018 .../js/masonry/ MIT Masonry |GitHub
TinyMCE
Mathslate
1.1 1.1 n/a n/a n/a n/a Forked, 2015 .../js/tinymce/plugins/mathslate/ GPL 3 Our version is forked.
make it work with Tinymce 5
Moment.js 2.29.1 2.29.4 TBC No Patch n/a Active .../js/momentjs/ MIT Moment JS 🆕 Luxon GitHub

Connected to jquery date-picker

Oauth PHP 175 175 n/a n/a Replace No Archived, 2010 .../webservice/libs/oauth-php/ MIT Code - We should replace with an oauth2 php library checkout what Moodle does (old comment)
PDFjs 2.13.216 2.16.105 TBC No Minor n/a Active .../artefact/file/blocktype/pdf/js/pdfjs/ Apache License 2 Getting started | GitHub
PHPMailer 6.6.0 6.6.4 TBC No Patch Yes Active
.../lib/phpmailer/ LGPL GitHub
Popper 2.10.2 2.11.6 TBC No Minor n/a Active .../js/popper/ MIT https://popper.js.org/
GitHub issue | tooltips
ReCaptcha 1.2.4 1.2.4 TBC No None WIP

PHP8

Idle? .../lib/recaptcha/ BSD-3 GitHub 2020 last release

This client supports both v2 and v3. PHP 8 support branch

simplesamlphp 1.18.7 final 1.19.6

v2 - RC

TBC No Minor Yes Active ../auth/saml/extlib/modules GPL 2.1 GitHub RC for 2.0.0 has PHP 8. Sounds like it should work on 1.19.1 though.
Select2 4.0.13 4.1 TBC No Major n/a Active .../js/select2/ MIT Select2 | Releases

Latest: breaking changes

Aurulent Sans
(font)
2007.05.04 2007.05.04 n/a n/a n/a n/a n/a .../lib/fonts/ SIL OFL v1.10 Font Squirrel Aurulent Sans
Deja Vu Sans
(font)
2.37 2.37 n/a n/a n/a n/a n/a .../lib/fonts/ DejaVu Fonts Font Squirrel Deja Vu Sans
Open Sans
(font)
1.10 1.10 n/a n/a n/a n/a Unknown .../theme/raw/fonts/ Apache License Google Fonts Open Sans
Roboto Slab
(font)
1.100263 1.100263 n/a n/a n/a n/a Unknown .../theme/raw/fonts/ MIT Google Fonts Roboto
Fontawesome 6.1.1 6.2.0 TBC No Minor n/a Active .../theme/raw/sass/lib/font-awesome/ SIL OFL 1.1 Font Awesome | GitHub | Upgrade steps | Changelog
Charis SIL
(fonts)
6.001 6.001 n/a n/a n/a n/a Active .././lib/fonts/ SIL OFL About font | Download
TinyMCE 5.10.2 5.10.5 TBC No Patch n/a Active .../js/tinymce/ LGPL 2.1 Tiny Cloud | Downloads | Changelog |News

📲 Test on mobile

Video.js 7.17.0 7.20.3 TBC No Minor n/a Active .../artefact/file/blocktype/
internalmedia/videojs/
Apache License 2.0 Video JS | GitHub
zxcvbn 4.4.2 4.4.2 n/a n/a n/a n/a Inactive, 2017 .../js/zxcvbn/ MIT GitHub

Composer.json dependencies

Resources: https://git.mahara.org | /mahara/mahara/-/blob/ | mahara/external/composer.json

Run composer external/outdated to check for updates.