Eloy Lafuente committed Nov 18, 2011 1 2 3 This file describes API changes in core filter API and plugins, information provided here is intended especially for developers.  Sara Arjona committed Oct 04, 2021 4 5 6 7 8 === 4.0 === * The Word censorship (filter_censor) filter has been completely removed from core. It has been moved to the plugins database repository, so it can still be installed as a third-party plugin.  Sara Arjona committed Dec 20, 2019 9 10 11 12 13 14 === 3.9 === * The following functions, previously used (exclusively) by upgrade steps are not available anymore because of the upgrade cleanup performed for this version. See MDL-65809 for more info: - filter_mathjaxloader_upgrade_cdn_cloudflare() - filter_mathjaxloader_upgrade_mathjaxconfig_equal()  Tim Hunt committed Sep 20, 2018 15 16 17 18 19 20 21 22 23 24 25 26 === 3.6 === * Although there is no API change that require you to update your filter, if you use the filter_phrases() helper method, you may wish to take advantage of the changes that were made in MDL-47962 to improve performance. Now, instead of having to compute the replacement HTML for each phrase before you construct the filterobject for it. You can instead pass a callback to the filterobject constructor which is only called if the phrase is used. To understand how to use this, see the comment on filterobject::__construct and look at the filter_glossary changes as an example:  David Monllaó committed Sep 24, 2018 27  https://github.com/moodle/moodle/commit/5a8c44d000ecc5669db26aefebe447f688e8f2ce  Tim Hunt committed Sep 20, 2018 28   Tim Hunt committed Jun 17, 2015 29 30 === 3.0 ===  Tim Hunt committed Jun 17, 2015 31 32 * New argument $skipfilters to filter_manager::filter_text to allow applying the filters with a given one omitted.  Tim Hunt committed Jun 17, 2015 33 34 35 36  * New admin setting class admin_setting_filter_types which can be used if you want to make the disablefilters value in your code configurable.  Tim Hunt committed Jun 17, 2015 37 38 39 40 * Methods filter_manager::text_filtering_hash and moodle_text_filter::hash have been deprecated. There were use by the old Moodle filtered text caching system that was removed several releases ago.  Petr Škoda committed Jan 14, 2014 41 42 43 44 45 46 === 2.7 === * Finally filter may use$PAGE and \$OUTPUT, yay! * Old global text caching was removed, each filter is now responsible for own caching.  Petr Škoda committed Oct 12, 2013 47 48 49 50 === 2.6 === * filtersettings.php is now deprecated, migrate to standard settings.php  Petr Škoda committed Dec 30, 2012 51 52 53 54 55 56 57 === 2.5 === * legacy_filter emulation was removed * support for 'mod/*' filters was removed * use short filter name instead of old path, ex.: 'filter/tex' ---> 'tex' in all filter API functions and methods  Eloy Lafuente committed Jun 15, 2012 58 59 60 61 62 63 64 === 2.3 === * new setup() method added to moodle_text_filter, invoked before filtering happens, used to add all the requirements to the page (js, css...) and/or other init tasks. See filter/glossary for an example using the API (and MDL-32279 for its justification).  Eloy Lafuente committed Nov 18, 2011 65 66 67 68 69 70 71 72 === 2.2 === * legacy filters and legacy locations have been deprecated, so any old filter should be updated to use the new moodle_text_filter, and any filter bundled under mod/xxxx directories be moved to /filter/xxxx (MDL-29995). They will stop working completely in Moodle 2.3 (MDL-29996). See the glossary or data filters for examples of legacy module filters and locations already updated.