Merge branch 'MDL-38035-master' of git://github.com/sammarshallou/moodle
[moodle.git] / lib / upgrade.txt
CommitLineData
690a55f6 1This files describes API changes in core libraries and APIs,
ee362526
PS
2information provided here is intended especially for developers.
3
9a36be73
MG
4=== 2.5 ===
5
cedc656b
EL
6* The cron output has been changed to include time and memory usage (see cron_trace_time_and_memory()),
7 so any custom utility relying on the old output may require modification.
6b219310
DW
8* Function get_max_file_sizes now returns an option for (for example) "Course limit (500MB)" or
9 "Site limit (200MB)" when appropriate with the option set to 0. This function no longer returns
10 an option for 0 bytes. Existing code that was replacing the 0 option in the return
11 from this function with a more sensible message, can now use the return from this function directly.
9a36be73
MG
12* Functions responsible for output in course/lib.php are deprecated, the code is moved to
13 appropriate renderers: print_section_add_menus()
14 See functions' phpdocs in lib/deprecatedlib.php
15* Function get_print_section_cm_text() is deprecated, replaced with methods in cm_info
3cb856c7
PS
16* zip_packer may create empty zip archives, there is a new option to ignore
17 problematic files when creating archive
93cc145f
MN
18* The function delete_course_module was deprecated and has been replaced with
19 course_delete_module. The reason for this was because the function delete_course_module
20 only partially deletes data, so wherever it was called extra code was needed to
21 perform the whole deletion process. The function course_delete_module now takes care
22 of the whole process.
91c8cf99
F
23* curl::setopt() does not accept constant values any more. As it never worked properly,
24 we decided to make the type check stricter. Now, the keys of the array pass must be a string
25 corresponding to the curl constant name.
043f1005
RT
26* Function get_users_listing now return list of users except guest and deleted users. Previously
27 deleted users were excluded by get_users_listing. As guest user is not expected while browsing users,
28 and not included in get_user function, it will not be returned by get_users_listing.
1c14b1c1
DW
29* The add_* functions in course/dnduploadlib.php have been deprecated. Plugins should be using the
30 MODNAME_dndupload_register callback instead.
690a55f6
DM
31* The signature of the add() method of classes implementing the parentable_part_of_admin_tree
32 interface (such as admin_category) has been extended. The new parameter allows the caller
33 to prepend the new node before an existing sibling in the admin tree.
9a36be73 34
238b8bc9
ARN
35YUI changes:
36* M.util.help_icon has been deprecated. Code should be updated to use moodle-core-popuphelp
37 instead. To do so, remove any existing JS calls to M.util.help_icon from your PHP and ensure
38 that your help link is placed in a span which has the class 'helplink'.
39
6c2be903
DP
40=== 2.4 ===
41
42* Pagelib: Numerous deprecated functions were removed as classes page_base, page_course
43 and page_generic_activity.
704533fc 44* use $CFG->googlemapkey3 instead of removed $CFG->googlemapkey and migrate to Google Maps API V3
b874d5c6 45* Function settings_navigation::add_course_editing_links() is completely removed
ee7084e9
MG
46* function global_navigation::format_display_course_content() is removed completely (the
47 functionality is moved to course format class)
48* in the function global_navigation::load_generic_course_sections() the argument $courseformat is
49 removed
7881024e
PS
50* New component and itemid columns in groups_members table - this allows plugin to create protected
51 group memberships using 'xx_yy_allow_group_member_remove' callback and there is also a new restore
52 callback 'xx_yy_restore_group_member()'.
53* New general role assignment restore plugin callback 'xx_yy_restore_role_assignment()'.
97960146
MG
54* functions get_generic_section_name(), get_all_sections(), add_mod_to_section(), get_all_mods()
55 are deprecated. See their phpdocs in lib/deprecatedlib.php on how to replace them
ee362526 56
d2a27ab0
ARN
57YUI changes:
58* moodle-enrol-notification has been renamed to moodle-core-notification
3542e01a 59* YUI2 code must now use 2in3, see http://yuilibrary.com/yui/docs/yui/yui-yui2.html
7266bd3e
ARN
60* M.util.init_select_autosubmit() and M.util.init_url_select() have been deprecated. Code using this should be updated
61 to use moodle-core-formautosubmit
d2a27ab0 62
94c9db54
PS
63Unit testing changes:
64* output debugging() is not sent to standard output any more,
65 use $this->assertDebuggingCalled(), $this->assertDebuggingNotCalled(),
66 $this->getDebuggingMessages() or $this->assertResetDebugging() instead.
67
e618cdf3
PS
68=== 2.3 ===
69
70Database layer changes:
71* objects are not allowed in paramters of DML functions, use explicit casting to strings if necessary
72
19526d91
DP
73Note:
74* DDL and DML methods which were deprecated in 2.0 have now been removed, they will no longer produce
75debug messages and will produce fatal errors
e618cdf3 76
796495fe 77API changes:
daefd6eb 78
796495fe 79* send_stored_file() has changed its interface
daefd6eb 80* deleted several resourcelib_embed_* functions from resourcelib.php
796495fe 81
ee362526
PS
82=== 2.2 ===
83
84removed unused libraries:
85* odbc, base32, CodeSniffer, overlib, apd profiling, kses, Smarty, PEAR Console, swfobject, cssshover.htc, md5.js
86
87API changes:
88* new admin/tool plugin type
89* new context API - old API is still available
8e470797 90* deleted users do not have context any more
ee362526
PS
91* removed global search
92
93
94=== 2.1 ===
95
96API changes:
97* basic suport for restore from 1.9
98* new mobile devices API
99* new questions API
100
101
102=== 2.0 ===
103
104API changes:
105* new DML API - http://docs.moodle.org/dev/DML_functions
106* new DDL API - http://docs.moodle.org/dev/DDL_functions
107* new file API - http://docs.moodle.org/dev/File_API
108* new $PAGE and $OUTPUT API
109* new navigation API
110* new theme API - http://docs.moodle.org/dev/Theme_changes_in_2.0
111* new javascript API - http://docs.moodle.org/dev/JavaScript_usage_guide
112* new portfolio API
113* new local plugin type
114* new translation support - http://lang.moodle.org
115* new web service API
116* new cohorts API
117* new messaging API
118* new rating API
119* new comment API
120* new sessions API
121* new enrolment API
122* new backup/restore API
123* new blocks API
124* new filters API
125* improved plugin support (aka Frankenstyle)
126* new registration and hub API
127* new course completion API
128* new plagiarism API
129* changed blog API
130* new text editor API
19526d91 131* new my moodle and profiles API