Changelog
All notable changes to the mamoma project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
Additions
- add an EditorConfig definitions file
- add the virtual_domains.description column to the sample database creation SQL scripts
- add an incomplete OpenAPI schema and a Docker test toolset (this needs a lot more documentation and also completeness)
- implement RFC6750 Bearer tokens as an auth method
- add the "highlight" and "highlight_threshold" optional parameters to the DomainsList query and return highlight: true for domains that have at least one user account exceeding the specified quota threshold percentage
- mark such domains in a new column in the web UI list
- add the MMMFeatures query for supported features
- add type declarations to the PHP source
Other changes
- send an application/json HTTP response
- reformat the SQL queries to make them more readable
- do not attempt to use persistent database connections by default; the new "persistent" boolean parameter in the "db" section of the configuration file may be used to restore the old behavior
2.0.0.b5 - 2018-01-03
Fixes
- properly delete accounts with usernames containing dots
2.0.0.b4 - 2017-08-10
INCOMPATIBLE CHANGES
- make
DomainsList
return a data structure with the value of the new configuration field,fs.available_mb
, and a list of objects with more data - add a new configuration field,
fs.quota_kb
, for a default quota; if it is not specified, an empty quota field will be treated as an error - add a new
virtual_domains.description varchar(20)
database column and display it along with the domain name in the domains list
Fixes
- make the user ID, group ID, and home directory fields read-only
- remove some success notification dialogs
- escape the HTML entities in the domain name and description in
the JSON API's
DomainsList
query - do not log a warning on RESTful invocations with the action name passed in the path and not as a query parameter
- do not show the "Used" field at all when creating a new account
- align numeric columns to the right
- properly handle usernames containing dots
- correct the order of arguments in the doveadm invocation
Additions
- list domains' total quota and used space
- add a @domain hint when creating a user account or an alias
- report the percentage of the quota assigned and the space used in the list of domains and the list of users for a domain
- shorten all the text entry fields by half
- support the new doveadm quota output format
Other changes
- display the list of domains in two columns
- make a lot of variables local
- fetch PDO data as associative arrays by default
1.0.0 - 2016-03-28
INCOMPATIBLE CHANGES
- expose the user quota in megabytes, not kilobytes
- support multiple username@domain aliases by passing the alias's internal ID along with the source address in pretty much all the alias actions
Other additions and bugfixes
- add the
MMM_DomainCreate()
function - add the
DomainCreate
query to create a domain by name - add the
MMM_ERR_NOT_ADMIN
error code - add the
db/01-internal.sql
initial database schema - add the
db/02-quota.sql
schema for thequota
table and display the actual amount of disk space used by each account - add the
db/03-quota-in-vusers.sql
schema update to move theused_kb
field to the virtual_users table - remove some diagnostic log statements to the JavaScript console
- do not animate the alert and notification dialogs
- add the
mamoma-dovecot-used-quota
tool (implemented in both Perl 5 and Perl 6) to fill in the virtual_users.used_db field
0.2.0 - 2014-04-02
- add a
Makefile
with arelease
target - fix a first-use bug: return an 'invalid session ID' error code when no session ID has been sent at all so that no error dialog is shown in the web interface
- implement array_column() if it does not exist (e.g. PHP < 5.5.0)
- fix a UI problem that manifested as a failure to log in:
mmm_wrap_err()
andmmm_wrap_ui()
return false now if the callback forgets to actually return a value - document some of the mmm.js functions
- really hide the UI user pages when "back to..." is clicked
- in the UI, 'return false' in all onclick events
- make the UI glyphs and text spans look like clickable links
- implement creating, updating and removing aliases
0.01 - 2014-02-23
- first semi-public release :)