f5d3c5a892831e37028ae23b84e51aea47eff1f3
[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 * zip_packer may create empty zip archives, there is a new option to ignore
7   problematic files when creating archive
9 === 2.4 ===
11 * Pagelib: Numerous deprecated functions were removed as classes page_base, page_course
12   and page_generic_activity.
13 * use $CFG->googlemapkey3 instead of removed $CFG->googlemapkey and migrate to Google Maps API V3
14 * Function settings_navigation::add_course_editing_links() is completely removed
15 * function global_navigation::format_display_course_content() is removed completely (the
16   functionality is moved to course format class)
17 * in the function global_navigation::load_generic_course_sections() the argument $courseformat is
18   removed
19 * New component and itemid columns in groups_members table - this allows plugin to create protected
20   group memberships using 'xx_yy_allow_group_member_remove' callback and there is also a new restore
21   callback 'xx_yy_restore_group_member()'.
22 * New general role assignment restore plugin callback 'xx_yy_restore_role_assignment()'.
23 * functions get_generic_section_name(), get_all_sections(), add_mod_to_section(), get_all_mods()
24   are deprecated. See their phpdocs in lib/deprecatedlib.php on how to replace them
26 YUI changes:
27 * moodle-enrol-notification has been renamed to moodle-core-notification
28 * YUI2 code must now use 2in3, see http://yuilibrary.com/yui/docs/yui/yui-yui2.html
29 * M.util.init_select_autosubmit() and M.util.init_url_select() have been deprecated. Code using this should be updated
30   to use moodle-core-formautosubmit
32 Unit testing changes:
33 * output debugging() is not sent to standard output any more,
34   use $this->assertDebuggingCalled(), $this->assertDebuggingNotCalled(),
35   $this->getDebuggingMessages() or $this->assertResetDebugging() instead.
37 === 2.3 ===
39 Database layer changes:
40 * objects are not allowed in paramters of DML functions, use explicit casting to strings if necessary
42 Note:
43 * DDL and DML methods which were deprecated in 2.0 have now been removed, they will no longer produce
44 debug messages and will produce fatal errors
46 API changes:
48 * send_stored_file() has changed its interface
49 * deleted several resourcelib_embed_* functions from resourcelib.php
51 === 2.2 ===
53 removed unused libraries:
54 * odbc, base32, CodeSniffer, overlib, apd profiling, kses, Smarty, PEAR Console, swfobject, cssshover.htc, md5.js
56 API changes:
57 * new admin/tool plugin type
58 * new context API - old API is still available
59 * deleted users do not have context any more
60 * removed global search
63 === 2.1 ===
65 API changes:
66 * basic suport for restore from 1.9
67 * new mobile devices API
68 * new questions API
71 === 2.0 ===
73 API changes:
74 * new DML API - http://docs.moodle.org/dev/DML_functions
75 * new DDL API - http://docs.moodle.org/dev/DDL_functions
76 * new file API - http://docs.moodle.org/dev/File_API
77 * new $PAGE and $OUTPUT API
78 * new navigation API
79 * new theme API - http://docs.moodle.org/dev/Theme_changes_in_2.0
80 * new javascript API - http://docs.moodle.org/dev/JavaScript_usage_guide
81 * new portfolio API
82 * new local plugin type
83 * new translation support - http://lang.moodle.org
84 * new web service API
85 * new cohorts API
86 * new messaging API
87 * new rating API
88 * new comment API
89 * new sessions API
90 * new enrolment API
91 * new backup/restore API
92 * new blocks API
93 * new filters API
94 * improved plugin support (aka Frankenstyle)
95 * new registration and hub API
96 * new course completion API
97 * new plagiarism API
98 * changed blog API
99 * new text editor API
100 * new my moodle and profiles API