Fetching contributors…
Cannot retrieve contributors at this time
428 lines (315 sloc) 15 KB
Welcome to Zotonic!
Release 0.6.0, released on 2011-02-12
* New features:
** SSL support
Zotonic has gotten support for serving web pages over secure HTTPS
connections. When configured, it listens by default on port 8443.
See for details.
** z_logger
A new subsystem for the low-level logging and tracing of requests.
This module should be used to log lower level events during
development time. Higher-level log messages (e.g. events by
Zotonic modules) are still handled by 'mod_logging'.
** multilingual content
Every resource can have be translated in as many languages as you
like. The admin has gotten an interface to provide the editing of
the multiple language versions. Available languages are fully
dynamically configurable.
** z_depcache
Partial rewrite of depcache system, is now faster and using more
the process dictionary of the calling process to cache often used
* New and changed modules:
** mod_signal
New module providing a handy signal and slot mechanism for use in templates.
** mod_tkvstore
New module providing a simple typed key/value store for modules and Erlang code.
** mod_translation
Check if the user has a preferred language (in the user's persistent
data). If not then check the accept-language header (if any)
against the available languages.
** mod_mailinglist
Tweaks in the templates, updated dutch translations; do not send
mail when deleting recipient from admin; Added 'recipient_id' to
some e-mails so that the e-mails are sent in the correct language.
** mod_authentication
Fix user name display in password reminder e-mail.
** mod_emailer
Fix for e-mail override, escape the '@' in the original e-mail address.
Added flushing of poll messages
** mod_seo
Added option to set a no-index for a complete site.
New Google Analytics tracker code. With thanks to Richard Fergie.
** mod_contact
Configurable from address for contact email
** mod_admin_identity
Fix for finding users, select only identity records with type 'username_pw'
** mod_calendar
Better handling for undefined date_end values.
** mod_search
Improper months ordering in archive_year_month query. (#134)
** mod_menu
Possibility to create an arbitrary number of different menu's. Also
a new filter (menu_trail) which gets the menu trail for the main menu.
* Changes to template filters and tags
** 'first' filter
added optional length parameter
** min/max and minmax
3 new filters were added to clamp a value in an (integer) range.
** filesizeformat
New filter, similar to the Django filesizeformat filter.
** lib tag
Extended the lib tag with a 'use_absolute_url' option.
** confirm/alert actions
These actions were changed and now use HTML dialogs instead of javascript popups.
** reversed
New filter to reverse a list
** menu tag
Added 'menu_id' parameter to specify which menu to render
** date_diff
New filter to calculate the difference between two dates
** tinymce_add, tinymce_remove
New actions to dynamically initialize of de-initialize rich textareas
** trigger_event
New action to trigger a named wire.
** wire
Added a new 'visible' wire type, which triggers when the wired
element comes into view (by scrolling or using 'show').
** lazy
New scomp which shows a 'loader' image and performs onetime actions
when loader comes into view.
* General bug fixes
- Fix for 'double-dot' in e-mails when using postfix. Also encode the $. characters using quoted-printable.
- Fix for format_price filter. Show thousands when no cents.
- Make video embed code editable.
- Merged various webmachine fixes, updating it to 1.7.3:
- support {stream, TotalSize, StreamFun} body result for range-capable streams
- Add infinity timeout to gen_server calls
- Allow multiple IP/port bindings
- split chunk header on semicolon just in case a client is using chunk extensions
- properly extract peername from all rfc1918 addrs
- change H7 to match on any if-match, not just *
- webmachine: WM-1.7.3(compat) ignores client's Content-Type on HTTP PUT requests (#130)
- webmachine: prevent using chunked transfer encoding with HTTP/1.0.
- increase the startup timeouts for the gen_servers to prevent startup race condition
- Update mochiweb to latest version from mochi/mochiweb github repository (1.5.0)
- Pulled latest epgsql driver to support Postgres notifications.
- Added additional mime types (Office 2007, .rar)
- z_session: Only mark the persistent store as dirty when a persistent value changes.
- pgsql: Fix for a problem where a postgres connection was not returned to the pool in case of a sql error.
- z_media_preview: some files without a preview where not showing an icon.
- fixed an DoS vulnerability in Mochiweb/SSL
- Added flushing for most periodic internal messages (e.g. tick, poll)
- windows: fix build.cmd; remove some unix-specificness from imagemagick shell commands
- mochiweb: Cookie expire date format string now follows rfc2109
- ACL checks on static file serving
- Comet: support for cross-domain comet connections
Release 0.5.0, released on 2010-10-03
* New features:
** Simpler module system
Modules are simpler, do not have to be a fullblown
gen_server. Registering z_notifier for modules is made more simpler
by using erlang's introspection on modules.
** i18n support through gettext
Gettext .po and .pot file support for translations. Templates can
be translated per module. Pot files are automatically generated
from the templates.
** Pluggable Access Control system
The new ACL structure works through pluggable ACL modules. Two ACL
modules are included as examples. mod_acl_adminonly, where all
users are admins, and mod_acl_simple_roles, which implements a
simple role based ACL system.
** Authentication can now be customized and extended.
mod_authentication is the basic module used for
authentication. This module can be extended. The mod_facebook is an
(incomplete) example of such an extender. mod_authentication
implements the username/password authentication, including logon
and logoff. It also supports 'password forgotten' e-mails.
** User signup
Non admin users can sign up using the mod_signup. This module works
in harmony with the authentication module and authentication
** New OTP supervisor hierarchy.
The PostgreSQL connection pool is now part of the individual
sites. Sites are more isolated and can be individually started,
restarted or stopped. It is possible to add and remove sites
without restarting Zotonic. Modules are now isolated and the
running status of a module is displayed in the admin's module
** A status overview site, zotonic_status.
zotonic_status shows the running status of all sites. When logged
in, the user can start/stop/restart sites using his browser. It is
also possible to do 'hg pull' updates of sites that contain a
mercurial repo.
** New ErlyDTL tags: {% inherit %}, {% overrule %}
** New ErlyDTL support for multiple argument {% with %}: {% with a,b as c,d %}
** New ErlyDTL support for filters with multiple parameters.
** New ErlyDTL test set, including regression tests.
** New ErlyDTL filters
group_by_title_firstchar, is_visible, pprint, urlize, without_embedded_media.
** Media preview enhancements
{% image %} now supports the the following new arguments:
'extent' - create a larger image then the original not by scaling
up but by adding a border to the image.
'removebg' - removes the image's
background. It accepts an optional fuzziness parameter (range
'upscale' - Forces a small image to scale up to the requested
** Extended support for Websocket connections.
The two newest protocols, as used by Chrome and Safari, are
** mod_development improvements
It now supports turning on or off the concatenation of {% lib %}
includes as one file or separate files, and can give a live trace
of translated templates, showing clearly the template inheritance
and selections.
** mod_menu improvements
It implements the menu now as a template, easing your own menu implementation.
** mod_emailer improvements
It can now inline images into the e-mails
** New: mod_slideshow
It can make a slideshow of any collection, you can add your own slide templates.
** New: mod_contact
Simple contact form which gets sent over e-mail
** New: mod_facebook
Facebook logon
** New: mod_imageclipper
A simple javascript image-clipper bookmarklet for grabbing images
from other websites.
** New: mod_logging
A realtime log of debug messages and errors in the system.
** System wide configuration system (z_config) using a configuration file at 'priv/config'
* Bugfixes:
** AllowHTML5 audio and video tags (#75)
** Typo in m_config, line 127. undefind -> undefined (#83)
** setting initial admin password does not work (#88)
** After upgrading the code to latest changeset admin authentication causes exception (#91)
** Menu module does not follow ACL rules (#92)
** Crash in using Erlang R14A on Mac OS X 10.6 (#93)
** Extra Atom Link (#95)
** Makefiles use rm GNUism (#96)
** z_email:split_name_email/1 does not what it says it should do (#97)
** dots in page paths are transformed into dashes (#98)
** attaching media to pages does not work correctly (#99)
** After a module crashes, the new dynamic observe_* methods are not re-initialized (#100)
** setting page path and unique name is broken (#101)
** IF statements on empty rsc_list structures (#104)
** When image is too small, providing only a width should not make the image very large (#105)
** And many various other fixes which users noted on the mailinglist and were fixed quickly.
Release 0.4.0, released on 2010-04-19
* New modules:
** mod_pubsub
Enables resource sharing over XMPP's PubSub; share content between
sites and get realtime updates when content changes. See:
** mod_search_solr
Added a module which plugs into Zotonic's search system to support
Solr ( Using Solr enables quick
fulltext searching and facetting.
* New features:
** Default site improvements
The default site of a vanilla Zotonic install has been improved
with nicer graphics, cleaner typography, a "contact form"
example and styles for the Twitter module.
** "More results" scomp
A twitter/facebook style ajaxified "read more" pager, which is a
button which will fetch more results for the current search
question inline on the same page.
** Windows support
Initial support for building and running Zotonic on the Windows platform.
** Database schema support
Multiple sites running inside one Postgres database is now possible
thanks to Postgres' support for multiple table namespaces (schema's)
** Template expressions
It is now possible to use full boolean and arithmetic expressions in the ErlyDTL templates.
** Webserver IPv6 support
** Yandex.Video support in mod_video_embed module (#52)
** PID-file for zotonic (#74)
** Support for HTML5 audio/video tags in TinyMCE editor (#75)
** Newer TinyMCE 3.3.2 release from upstream (#69)
** Newer Mochiweb r153 release from upstream
* Bugfixes:
** page_path controller should not redirect to the default_page_url (#6)
** Get the name of the current dispatch rule (#21)
** zotonic fails after postgresql restart (#49)
** Unreliable pivot? (#50)
** Module manager should feedback when module cannot be started. (#51)
** Do not depend on the 'default' site (#59)
** i18n of scomp_pager (#62)
** Buttons and "Logoff" link problems in Chrome (#63)
** Comment form breaks on new default site (#64)
** Getting an unknown_rsc error on startup (#66)
** Zotonic fails to (re)start if an existing admin panel is open with browser supporting WebSockets (#70)
** Can't save location without e-mail (#71)
** Improve the default styles to include list bullets/numbers (#72)
** Twitter module cannot be enabled (#76)
Release 0.3.0, released on 2010-01-25
* New modules:
** mod_comment
Enables a simple commenting system on your site using mod_comment.
* New core features
** A new default site
The default site of a vanilla Zotonic install is now modelled after
a simple blog-style website, complete with an archive section,
keywords, navigation to previous and next posts, atom feeds and comments.
** Speed improvements
The Webmachine code was restructured to be more lean-and-mean,
yielding up to 20% more performance on page requests.
** WebSockets support
When WebSockets is available in the browser, then it is used as a
replacement for the Comet long poll. Currently only Google Chrome
supports this feature but it is expected to arrive in other
browsers soon.
** Admin updates
Support for editing a location (Google map picker), a new
collection type "query" was added for creating "saved searches".
** EUnit support
A start has been made to put the core functionality of Zotonic in
unit tests using the EUnit testing framework. As of yet, only a
small fraction of the code has been covered, but we'll keep working
on increasing the code coverage of the tests.
* Bugfixes:
** Resizing animated GIFs (#28)
** Determining EXIF orientation for images (#27)
** The OAuth API key management interface is now available from the admin. (#35)
** Hiding "meta" pages from the admin overview (#12)
** And dozens of small fixes which did not go through the issue tracker.
Release 0.2.0, released on 2009-12-11
* New modules:
** mod_broadcast
Send system messages to all users which are currently logged in in
the Zotonic admin.
** mod_calendar
Shows event resources in a week-overview, and generates ICalendar
** mod_mailinglist
Module which allows you to define groups of recipients and send
mailings to them. Can also send via the unix sendmail program.
** mod_twitter
Receives feeds for Zotonic persons,using the Twitter streaming API.
* New core features:
** "catinclude" and "all catinclude" tags
These include templates based on the category of a resource. Used
in the admin to create custom fields based on category.
** Query search model
Generate lists of resources on the fly. Used in mod_atom_feed to
generate atom feeds, and has an API entrypoint, /api/search.
** More template filters:
in_future, in_past, rand, twitter, escape_ical
* Bugfixes:
** Dynamic postgresql pool size, based on system load (issue #4)
** Issue in postgres pooling on stresstesting (#15)
** Uploaded files now get a proper mime type and extension (#5)
** And other issues: #2, #3, #9, #11, #14, #19, #20
Release 0.1.0, released on 2009-11-13
* Initial release.
* Packaged the site as the prime "example" site in the default install.