Last week’s SE 4.1.0 BETA release went extremely well. Thanks to all of you who participated – what a smooth release! We’ve scheduled the following update, SE 4.1.1, for release next Wednesday. This release includes fixes for the minor issues found in the 4.1.0 beta, so we recommend that anyone using the beta (and anyone else who wants to keep their SE current) upgrade to 4.1.1 when we make it available next week.
For third-party addon developers: Some of you requested that we publish developer notes prior to new releases in the future. We’ll start doing that with this upcoming 4.1.1 release. Our hope is that you can use this information to evaluate whether or not our changes will cause any interference with your own products. As always, your feedback is most welcome.
The 4.1.0 release included some general modifications to the login
system. If your modules changed or hooked into the login system,
please review the changes to ensure your changes continue to function
The 4.1.0 release refactored the Task Scheduler and its associated
database tables. If your module used the Task Scheduler, please
review the changes and insert-ignore your tasks into the appropriate
Storage system has been modified slightly to start preliminary CDN
functionality (Amazon S3 specifically right now, but more to come
eventually; none are officially supported yet). We don’t anticipate
major breaking, but please confirm your module storage methodologies
are up to date. Potential compatibility breakage points are:
1) You must use the Storage_Model_File::map() method to get a URL to the file, any other way of getting the URL is not guaranteed to be correct.
2) The storage_type column has been removed and replaced with the service_id column. Raw access to the table should take this into account.
3) Because the files in the storage system are not guaranteed to be local anymore, any operations on them should take that into account. Calling Storage_Model_File::temporary() will copy the file to public/temporary and return the temporary file’s path.
Orphaned files are periodically cleaned up. This uses the
$file->getParent() method, so that if the Core_Model_Item no longer
exists, it assumes it is safe to delete the associated file. This feature should not to be relied upon in your custom plugins and widgets, but is an extra measure to prevent extraneous files from taking up storage space.
- The 4.1.0 release added Membership Billing features.
The 4.1.0 release added several more Task Scheduler trigger methods
to help run background tasks when cronjobs are not available.
Various .htaccess files have been added or modified to provide
image files. Note that the .htaccess files are in non-root
directories (i.e. /externals/, /public/,
/application/modules/Core/externals/, etc.) and contain no mod_rewrite
rules, so this should not break custom configurations. These changes
require Apache and the Apache module “mod_expires” to be installed on
your server to enjoy the benefits.
Statistics are now only logging full page loads (admin pages and
ajax requests are no longer being tracked). Please note that the
extreme drop-off of visits is likely due to this modification.
- Layout editor now italicizes the “Save Change” link when changes have been made and not yet saved.
- Admins can now create new menus.
Improved Administration of Profile Questions. Making a question
appear in multiple Profile Types is now simplified.
Log rotation has been added to keep automatically-generated log
files under size control.