MDL-35819 AJAX Rewrite Moodle popup help to be more friendly and more efficient
[moodle.git] / lib / upgrade.txt
1 This files describes API changes in core lbraries and APIs,
2 information provided here is intended especially for developers.
4 === 2.5 ===
6 * Functions responsible for output in course/lib.php are deprecated, the code is moved to
7   appropriate renderers: print_section_add_menus()
8   See functions' phpdocs in lib/deprecatedlib.php
9 * Function get_print_section_cm_text() is deprecated, replaced with methods in cm_info
10 * zip_packer may create empty zip archives, there is a new option to ignore
11   problematic files when creating archive
12 * The function delete_course_module was deprecated and has been replaced with
13   course_delete_module. The reason for this was because the function delete_course_module
14   only partially deletes data, so wherever it was called extra code was needed to
15   perform the whole deletion process. The function course_delete_module now takes care
16   of the whole process.
18 YUI changes:
19 * M.util.help_icon has been deprecated. Code should be updated to use moodle-core-popuphelp
20   instead. To do so, remove any existing JS calls to M.util.help_icon from your PHP and ensure
21   that your help link is placed in a span which has the class 'helplink'.
23 === 2.4 ===
25 * Pagelib: Numerous deprecated functions were removed as classes page_base, page_course
26   and page_generic_activity.
27 * use $CFG->googlemapkey3 instead of removed $CFG->googlemapkey and migrate to Google Maps API V3
28 * Function settings_navigation::add_course_editing_links() is completely removed
29 * function global_navigation::format_display_course_content() is removed completely (the
30   functionality is moved to course format class)
31 * in the function global_navigation::load_generic_course_sections() the argument $courseformat is
32   removed
33 * New component and itemid columns in groups_members table - this allows plugin to create protected
34   group memberships using 'xx_yy_allow_group_member_remove' callback and there is also a new restore
35   callback 'xx_yy_restore_group_member()'.
36 * New general role assignment restore plugin callback 'xx_yy_restore_role_assignment()'.
37 * functions get_generic_section_name(), get_all_sections(), add_mod_to_section(), get_all_mods()
38   are deprecated. See their phpdocs in lib/deprecatedlib.php on how to replace them
40 YUI changes:
41 * moodle-enrol-notification has been renamed to moodle-core-notification
42 * YUI2 code must now use 2in3, see http://yuilibrary.com/yui/docs/yui/yui-yui2.html
43 * M.util.init_select_autosubmit() and M.util.init_url_select() have been deprecated. Code using this should be updated
44   to use moodle-core-formautosubmit
46 Unit testing changes:
47 * output debugging() is not sent to standard output any more,
48   use $this->assertDebuggingCalled(), $this->assertDebuggingNotCalled(),
49   $this->getDebuggingMessages() or $this->assertResetDebugging() instead.
51 === 2.3 ===
53 Database layer changes:
54 * objects are not allowed in paramters of DML functions, use explicit casting to strings if necessary
56 Note:
57 * DDL and DML methods which were deprecated in 2.0 have now been removed, they will no longer produce
58 debug messages and will produce fatal errors
60 API changes:
62 * send_stored_file() has changed its interface
63 * deleted several resourcelib_embed_* functions from resourcelib.php
65 === 2.2 ===
67 removed unused libraries:
68 * odbc, base32, CodeSniffer, overlib, apd profiling, kses, Smarty, PEAR Console, swfobject, cssshover.htc, md5.js
70 API changes:
71 * new admin/tool plugin type
72 * new context API - old API is still available
73 * deleted users do not have context any more
74 * removed global search
77 === 2.1 ===
79 API changes:
80 * basic suport for restore from 1.9
81 * new mobile devices API
82 * new questions API
85 === 2.0 ===
87 API changes:
88 * new DML API - http://docs.moodle.org/dev/DML_functions
89 * new DDL API - http://docs.moodle.org/dev/DDL_functions
90 * new file API - http://docs.moodle.org/dev/File_API
91 * new $PAGE and $OUTPUT API
92 * new navigation API
93 * new theme API - http://docs.moodle.org/dev/Theme_changes_in_2.0
94 * new javascript API - http://docs.moodle.org/dev/JavaScript_usage_guide
95 * new portfolio API
96 * new local plugin type
97 * new translation support - http://lang.moodle.org
98 * new web service API
99 * new cohorts API
100 * new messaging API
101 * new rating API
102 * new comment API
103 * new sessions API
104 * new enrolment API
105 * new backup/restore API
106 * new blocks API
107 * new filters API
108 * improved plugin support (aka Frankenstyle)
109 * new registration and hub API
110 * new course completion API
111 * new plagiarism API
112 * changed blog API
113 * new text editor API
114 * new my moodle and profiles API