VMM/mailbox: Decode error messages from doveadm.
Those errors occur only with the dbox mailbox format when the
mailbox.folders contains non-ASCII mailbox names.
===0.6.1===2012-10-03PascalVolk<user@localhost.localdomain.org>*doc/web/source/conf.py,doc/web/source/download.rst,doc/web/source/howto/manage_accounts.rst,doc/web/source/installation/install_vmm.rst,doc/web/source/installation/postgresql_configuration.rst,doc/web/source/pgsql_set_permissionspermissions.rst,doc/web/source/release_history.rst,doc/web/source/substitutions.rst,doc/web/source/upgrade/0.5-0.6.rst:doc/web:Updateddocumentationforvmm-0.6.1.[f151defe7078][tip]2012-10-02martinf.krafft<madduck@madduck.net>*man/de/man1/vmm.1,man/man1/vmm.1:Addlist*commandstomanpages[ac27f89fad86]2012-10-01PascalVolk<user@localhost.localdomain.org>*UPGRADE:UPGRADE:Addedprocedureforupdatingfromv0.6.0.[e1fc4a3075de]2012-09-30PascalVolk<user@localhost.localdomain.org>*update_config.py:update_config:Updatedtoworkwithversion0.6.0.FixedsomePEP8relatedissues.[d7101e496795]2012-09-29PascalVolk<user@localhost.localdomain.org>*doc/web/source/howto/general_subcommands.rst,doc/web/source/howto/manage_alias_addresses.rst,doc/web/source/howto/manage_catch-all_addresses.rst:doc/web:Updatedandextendeddocumentation.Updateddescriptionofsubcommandsaliasdeleteandcatchalldelete.Addeddescriptionofsubcommandslistaddresses,listaliases,listrelocatedandlistusers.[e60b8ed5fd35]*VirtualMailManager/cli/clihelp.py:VMM/cli/clihelp:Addedmissinghelpmessages.Addeddescriptionsofsubcommandslistaddresses,listaliases,listrelocatedandlistusers.[d8b60e53334f]2012-09-27PascalVolk<user@localhost.localdomain.org>*po/nl.po:po:UpdatedDutchtranslation(translatedbyErwinPoeze).[ca882a1ff90b]*VirtualMailManager/alias.py:VMM/alias:Loaddestinationaddressessorted.Thisproducessortedoutputforthealiasinfosubcommand.[4ec5c015b7aa]*VirtualMailManager/alias.py,VirtualMailManager/catchall.py,VirtualMailManager/cli/clihelp.py,VirtualMailManager/cli/subcommands.py,VirtualMailManager/handler.py,man/de/man1/vmm.1,man/man1/vmm.1:VMM:{alias,catchall}delete:Acceptmultipledestinations.[d8736bb80bdc]2012-09-24PascalVolk<user@localhost.localdomain.org>*po/nl.po:po:UpdatedDutchtranslation(translatedbyErwinPoeze).[9eecf0160c39]2012-09-23PascalVolk<user@localhost.localdomain.org>*VirtualMailManager/cli/main.py:VMM/cli/main:Checkifwehavewarningsbeforeexiting.Ifso,printthemandexitafterwards.[996bfcae49b0]2012-09-16PascalVolk<user@localhost.localdomain.org>*VirtualMailManager/domain.py:VMM/domain:Enabledtransport-validation.ValidatethetransportalsoinDomain.set_transport()andDomain.update_transport().[5882bfdf83e8]*VirtualMailManager/account.py,VirtualMailManager/common.py:VMM:Movedtransport-validationtocommon.[1ec3497a6733]2012-09-15PascalVolk<user@localhost.localdomain.org>*VirtualMailManager/account.py:VMM/account:Fixedaccount's transport check. Make sure that 'virtual:' isn'tusedastransportwhenthemailbox-formatissettomdboxorsdbox.[7b3494f1a2ef]2012-09-12PascalVolk<user@localhost.localdomain.org>*po/nl.po:po:UpdatedDutchtranslation(translatedbyErwinPoeze).[924535664ecc]2012-09-05PascalVolk<user@localhost.localdomain.org>*VirtualMailManager/account.py,VirtualMailManager/catchall.py,VirtualMailManager/cli/subcommands.py,VirtualMailManager/common.py,VirtualMailManager/config.py,VirtualMailManager/domain.py,VirtualMailManager/handler.py:PEP8:FixedallPEP8relatedissues.[8e9b0046bc8f]2012-09-03PascalVolk<user@localhost.localdomain.org>*po/vmm.pot:po:Regeneratedvmm.pot[b6c4e77046b9]*VirtualMailManager/cli/clihelp.py,VirtualMailManager/cli/subcommands.py,VirtualMailManager/common.py:AddedafewcommentsfortheTranslationProject.[56ec275911f2]*VirtualMailManager/catchall.py,VirtualMailManager/cli/clihelp.py,VirtualMailManager/cli/subcommands.py,VirtualMailManager/ext/postconf.py:VMM:Corrected/updatedsomemsgids.Unifiedsomemessagesandcorrectedafewtypos.[0ed93eb8b364]2012-09-02PascalVolk<user@localhost.localdomain.org>*VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:Correctedusername's usage string. username'snameargumentisoptional.[46454ff9d441]*VirtualMailManager/cli/clihelp.py,VirtualMailManager/cli/subcommands.py:VMM/cli:Activatedhelpsubcommand.ImplementedCommand.help_(),whichreadsthecommand's help message from cli.clihelp. [ab97727357a4] * VirtualMailManager/handler.py: VMM/handler: Fixed user{quota,services,transport} subcommands. The subcommands user{quota,services,transport} actually failed with the arguments '<address>domain'. This is part II of changeset a75923ce2842 [b994444f7dee] * doc/web/source/howto/manage_accounts.rst: doc/web: Added missing userservices description. Fixed order of subcommand listing. [7fdc4b2d4640] * man/man1/vmm.1: man: Typo-fix. [981f02b2d4c5] * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Corrected two usage strings. domainnote'sandusernote's note argument is optional. [af88f01e5bfa]2012-09-01 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/cli/subcommands.py, VirtualMailManager/common.py: VMM: Decode localized numbers to the current encoding. That avoids UnicodeDecodeErrors since locale.format(%d) may return localized numbers, which contain NO-BREAK SPACE as the thousands separator. [463b10c258d9]2012-08-28 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Don'tmarkemptystringsastranslatable.gettext('')returnstheheaderentrywithmetainformation,nottheemptystring.[0571f45501da]*doc/web/source/upgrade/0.5-0.6.rst:doc/web:Addeddescription'Upgrade to Dovecot ≧ v1.2.beta2'.[82e722f35aab]2012-08-27PascalVolk<user@localhost.localdomain.org>*pgsql/dovecot_update_v1.2+.pgsql:pgsql:Addeddovecot_update_v1.2+.pgsql.UsethisfilewhenyouareupgradingyourDovecotinstallationtoaversion>=1.2.beta2.[bb23693e5fc9]*VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:Revertedaccidentallycommittedhelp()code.[c79fdce49908]*VirtualMailManager/cli/subcommands.py,pgsql/create_tables.pgsql:pgsql/create_tables.pgsql:Eliminatedtwounnecessarydifferences.Yeah,cosmeticonly.[607aa5c2acc4]*pgsql/create_tables.pgsql,pgsql/update_tables_0.5.x-0.6.pgsql:pgsql:Don't select service_set.ssid in dovecotpassword() unconditional. This may cause an empty result, which will make logins impossible. [86b967c0f1a1] * VirtualMailManager/serviceset.py: VMM/serviceset: Fixed a conditional ProgrammingError. Affects only setups with Dovecot < v1.2.beta2. Actually the SQL query in method ServiceSet._load_by_services wasn'tupdated.Removedunnecessarycode,whichwouldhavealsoproducedaProgrammingError,ifitwouldhavebeencorrect.[cdbe200c0ecc]2012-08-23PascalVolk<user@localhost.localdomain.org>*VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:Added'missing'newlinebelowdomainnotes.ThispatchcontainsalsoasmallcodecleanupandPEP8-fix.[3dc1764c23d2]2012-08-19PascalVolk<user@localhost.localdomain.org>*doc/web/source/howto/manage_accounts.rst:doc/web:Addedthetransportfiledtotheusertransportexample.[ef384bc8fde6]2012-08-12PascalVolk<user@localhost.localdomain.org>*doc/web/source/howto.rst,doc/web/source/howto/general_subcommands.rst,doc/web/source/howto/manage_accounts.rst,doc/web/source/howto/manage_alias_addresses.rst,doc/web/source/howto/manage_alias_domains.rst,doc/web/source/howto/manage_catch-all_addresses.rst,doc/web/source/howto/manage_domains.rst,doc/web/source/howto/manage_relocated_users.rst,doc/web/source/index.rst,doc/web/source/installation/install_vmm.rst:doc/web:Addedthe'Howto'.ThereStructuredTextversionofvmm.1,inmultipleparts.[2b165e90e225]*man/de/man1/vmm.1,man/man1/vmm.1:man/{de/}man1:Afewmorecorrections.[9d343514b832]*man/de/man1/vmm.1,man/man1/vmm.1:man/{de/}man1:Smallcorrectionsfordomaininfo's description. [60907fc875f7] * man/de/man5/vmm.cfg.5, man/man5/vmm.cfg.5: man/{de/}man5: s/Wiki/Homepage/g [dcde0010cdf8]2012-08-11 Pascal Volk <user@localhost.localdomain.org> * man/de/man1/vmm.1, man/man1/vmm.1: man/{de/}man1: s/Wiki/Homepage/g [8767ec854084]2012-08-08 martin f. krafft <madduck@debian.org> * VirtualMailManager/common.py: VMM/common: Improve search_address complexity Checking the dictionary (a hash) for existence of a key is likely to be O(log(n)), while checking a list is O(n). Therefore, to increase performance, this patch changes the check accordingly. [cd1200d06700]2012-08-07 Pascal Volk <user@localhost.localdomain.org> * doc/web/source/_static/vmm.cfg: doc/web: Refreshed vmm.cfg [ffd24974ed68] * vmm.cfg: vmm.cfg: Updated/improved comments. [f9a2327f57a6]2012-08-07 martin f. krafft <madduck@debian.org> * VirtualMailManager/common.py: If an alias has multiple destinations, multiple records exist, due to the nature of the database. address_list would then return the same alias multiple times, which does not add any information, eats screen space and is potentially confusing. Therefore, we SELECT DISTINCTly from the alias table. Signed-off-by: martin f. krafft <madduck@debian.org> --- VirtualMailManager/common.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) [a479c38931c4] * VirtualMailManager/common.py: Due to the UNION query in address_list, the assumption that the list of gids received from the database would be continuous does not hold. To prevent addresses for domains with multiple entry types from being listed, it is necessary to check the list of domain gids for every entry. Signed-off-by: martin f. krafft <madduck@debian.org> --- VirtualMailManager/common.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) [605f8c115711]2012-07-29 Pascal Volk <user@localhost.localdomain.org> * doc/web/source/installation/dovecot_configuration.rst, doc/web/source/installation/postgresql_configuration.rst: doc/web: Emphasized a few lines of Dovecot/PostgreSQL configuration file excerpts. [9c138471d569] * .hgignore: .hgignore: "doc/build" is no longer required. [b62210b96ea7] * doc/web/Makefile, doc/web/source/_static/local.conf, doc/web/source/_static/vmm.cfg, doc/web/source/_static/vmm_logo.png, doc/web/source/_templates/layout.html, doc/web/source/conf.py, doc/web/source/download.rst, doc/web/source/ext_references.rst, doc/web/source/features.rst, doc/web/source/index.rst, doc/web/source/install.rst, doc/web/source/installation/dovecot_configuration.rst, doc/web/source/installation/install_vmm.rst, doc/web/source/installation/postfix_configuration.rst, doc/web/source/installation/postgresql_configuration.rst, doc/web/source/installation/prerequisites.rst, doc/web/source/installation/system_preparation.rst, doc/web/source/pgsql_set_permissionspermissions.rst, doc/web/source/release_history.rst, doc/web/source/substitutions.rst, doc/web/source/upgrade.rst, doc/web/source/upgrade/0.4.x-0.5.rst, doc/web/source/upgrade/0.5-0.6.rst, doc/web/source/vmm.cfg.rst: doc: Added source of http://vmm.localdomain.org/. [be0906181a10] * doc/Makefile, doc/api/Makefile, doc/api/source/conf.py, doc/api/source/index.rst, doc/api/source/vmm.rst, doc/api/source/vmm_alias.rst, doc/api/source/vmm_config.rst, doc/api/source/vmm_constants_error.rst, doc/api/source/vmm_emailaddress.rst, doc/api/source/vmm_errors.rst, doc/api/source/vmm_relocated.rst, doc/source/conf.py, doc/source/index.rst, doc/source/vmm.rst, doc/source/vmm_alias.rst, doc/source/vmm_config.rst, doc/source/vmm_constants_error.rst, doc/source/vmm_emailaddress.rst, doc/source/vmm_errors.rst, doc/source/vmm_relocated.rst: doc: Moved API documentation to doc/api. [20141b967c0b]2012-07-22 Pascal Volk <user@localhost.localdomain.org> * INSTALL: INSTALL: Updated PostgreSQL configuration URL. Use ${sql} and ${proxysql} expressions in the main.cf description. [4f9079dd4b65]2012-07-01 Pascal Volk <user@localhost.localdomain.org> * README: README: Substituted a few words. [0be27a75776a]2012-06-30 Pascal Volk <user@localhost.localdomain.org> * README: README: Updated URL of the hg repository@sf.net. [f9e6e0a237f0] * man/man1/vmm.1: man: Deleted erroneous placed backslash. [9acf628bf0be]2012-06-28 Pascal Volk <user@localhost.localdomain.org> * .hgtags: Added tag vmm-0.6.0 for changeset 3238c58d01ae [0643c25121b5] * ChangeLog, NEWS, VirtualMailManager/constants.py, setup.py: Released vmm-0.6.0 [3238c58d01ae] [vmm-0.6.0]=== 0.6.0 ===2012-06-28 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/Account.py, VirtualMailManager/Alias.py, VirtualMailManager/AliasDomain.py, VirtualMailManager/Config.py, VirtualMailManager/Domain.py, VirtualMailManager/EmailAddress.py, VirtualMailManager/Exceptions.py, VirtualMailManager/MailLocation.py, VirtualMailManager/Relocated.py, VirtualMailManager/Transport.py, VirtualMailManager/VirtualMailManager.py, VirtualMailManager/constants/ERROR.py, VirtualMailManager/constants/EXIT.py, VirtualMailManager/constants/VERSION.py, VirtualMailManager/constants/__init__.py, VirtualMailManager/ext/Postconf.py, pgsql /create_optional_types_and_functions-dovecot-1.2.x.pgsql, pgsql/create_optional_types_and_functions.pgsql, pgsql/update_tables_0.4.x-0.5.pgsql, pgsql/update_tables_0.5.x_for_dovecot-1.2.x.pgsql, pgsql/update_types_and_functions_0.5.x_for_dovecot-1.2.x.pgsql, postfix/pgsql-transport.cf, update_config_0.4.x-0.5.py: Merged changes from v0.6.x(28230a8230bf). [a4aead244f75] [tip] * Close v0.6.x branch. [28230a8230bf] <v0.6.x> * vmm: vmm: Don'tinsertthemoduledirectoryintosys.pathbydefault.Doesn't make much sense, if the code is installed inside sys.path. [54a84a311654] <v0.6.x> * COPYING, VirtualMailManager/__init__.py, VirtualMailManager/account.py, VirtualMailManager/alias.py, VirtualMailManager/aliasdomain.py, VirtualMailManager/cli/__init__.py, VirtualMailManager/cli/config.py, VirtualMailManager/cli/handler.py, VirtualMailManager/cli/main.py, VirtualMailManager/cli/subcommands.py, VirtualMailManager/common.py, VirtualMailManager/config.py, VirtualMailManager/constants.py, VirtualMailManager/domain.py, VirtualMailManager/emailaddress.py, VirtualMailManager/errors.py, VirtualMailManager/ext/__init__.py, VirtualMailManager/ext/postconf.py, VirtualMailManager/handler.py, VirtualMailManager/mailbox.py, VirtualMailManager/maillocation.py, VirtualMailManager/network.py, VirtualMailManager/password.py, VirtualMailManager/pycompat/__init__.py, VirtualMailManager/pycompat/hashlib.py, VirtualMailManager/quotalimit.py, VirtualMailManager/relocated.py, VirtualMailManager/serviceset.py, VirtualMailManager/transport.py, setup.py, update_config.py, vmm: Updated copyright notices to include the year 2012. [14abdd04ddf5] <v0.6.x> * TODO: TODO: Removed "listpwschemes" entry. Was done with changeset a64c1b5e08b4 [11ed67ee7ebb] <v0.6.x> * UPGRADE: UPGRADE: Updated documentation. [007786e58fb7] <v0.6.x> * VirtualMailManager/cli/subcommands.py, man/de/man1/vmm.1, man/man1/vmm.1: VMM/cli/subcommands: Replaced the keyword `default'by`domain'. Patch by Martin F. Krafft [a75923ce2842] <v0.6.x>2012-06-27 Pascal Volk <user@localhost.localdomain.org> * Configure.Dovecot_2, INSTALL: INSTALL: Added description how to create additional dove* user/group. `doveauth'userandgroupfortheauthenticationprocessandthegroup`dovemail' for mail related Dovecot processes. [55148bc6348e] <v0.6.x> * INSTALL: INSTALL: Updated documentation. [b17a9d7a59ae] <v0.6.x> * Configure.Dovecot_2, install.sh, upgrade.sh: Configure.Dovecot_2: Added configuration documentation for Dovecot_2 >= 2.0. [b5bb7b34e831] <v0.6.x> * VirtualMailManager/account.py, VirtualMailManager/cli/subcommands.py: VMM: The Python 2.4.x compatibility commit - part III. [b0165b7af7a3] <v0.6.x> * VirtualMailManager/account.py: VMM/account: Check the account'stransportonlywhenwehaveatransport.[2662f4e17eb4]<v0.6.x>*VirtualMailManager/account.py,VirtualMailManager/cli/subcommands.py,VirtualMailManager/handler.py:VMM:ThePython2.4.xcompatibilitycommit.[cc0f67f99780]<v0.6.x>2012-06-14PascalVolk<user@localhost.localdomain.org>*pgsql/set-permissions.py:pgsql/set-permissions.py:Extendedpermissions.Postfixneedsreadaccessonthepostfix_gidview.Dovecotneedsreadpermissionsonbothmailboxformatcolumns.[2fcf12fdecc2]<v0.6.x>*VirtualMailManager/handler.py:VMM/handler:RestoredmethodHandler.domain_transport().Itwentsomehowlostwithchangeset5806fb74130b.[1498abbb6c91]<v0.6.x>2012-05-31PascalVolk<user@localhost.localdomain.org>*pgsql/set-permissions.py:pgsql:Addedhelperscript:set-permissions.py.[fbbb16476c5b]<v0.6.x>2012-04-15martinf.krafft<madduck@madduck.net>*TODO,VirtualMailManager/cli/handler.py,VirtualMailManager/cli/subcommands.py,VirtualMailManager/common.py,VirtualMailManager/constants.py,VirtualMailManager/handler.py:Providelist{addresses,aliases,users,relocated}subcommandsThepatchprovidesthelist{addresses,aliases,users,relocated}subcommandstotheUI.Allcommandsactuallytakethesamepathinthecodeandonlyonequeryisrunwithdifferentparametersforeachcase.Therearestilltwoshortcomings:1.Withaliasdomains,theoutputorderisnotasonemightwantit,e.g.foo@example.orgbar@example.orgfoo@example.combar@example.comwhenitshouldreallybefoo@twiceandthenbar@twice.IhavenotfoundawaytomodifytheSQLaccordingly.2.TheSELECTqueriesforAccounts,AliasandRelocatedarehard-codedincommon.py.[499c63f52462]<v0.6.x>*man/de/man1/vmm.1,man/de/man5/vmm.cfg.5,man/man1/vmm.1,man/man5/vmm.cfg.5:man:escapehyphensHyphensinsidewordsmustbespelt\-insteadofjust-.Thispatchfixesupthemanpages.***.[a93671970617]<v0.6.x>*man/de/man1/vmm.1,man/man1/vmm.1:man:add'catchall'todomaininfoSincetheadditionofcatchall,thedomaininfosubcommandcanalsotake'catchall'asa[detail]tolimittheoutputofdetailstothecatch-allaliases.Also,thenumberofcatch-alldestinationsisnowincludedinthesimpledomaininfooutput.[6f2c41c3c7d6]<v0.6.x>2012-04-15PascalVolk<user@localhost.localdomain.org>*man/de/man1/vmm.1,man/man1/vmm.1:man:vmm1:Use`fqdn' instead of `domain'incatchall*descriptions.Fixedatypos/cadd/cad/.Replaceddoublequotesby\(dq.[107f7a3be9f5]<v0.6.x>*VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:Usethe`fqdn' argument placeholder also for catch-all subcommands. [62f2daff853e] <v0.6.x>2012-04-15 martin f. krafft <madduck@madduck.net> * pgsql/create_tables-dovecot-1.2.x.pgsql, pgsql/create_tables.pgsql, pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql, pgsql/update_tables_0.5.x-0.6.pgsql: Fix transport_maps function for non-existent domains The postfix_transport_maps function had a bug causing 2012-04-15 17:40:22 CEST LOG: statement: SELECT transport FROM postfix_transport_map('logcheck', 'domine.madduck.net'); 2012-04-15 17:40:22 CEST ERROR: query returned no rows when the domain was not in the database. This would make did be NULL and make the query fail. This patch moves the tid query until after a check for did. If the latter is NULL, the function RETURNs (rather than fails). [867d950ce7b7] <v0.6.x> * pgsql/create_tables-dovecot-1.2.x.pgsql, pgsql/create_tables.pgsql, pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql, pgsql/update_tables_0.5.x-0.6.pgsql: Revert caching of destination interpolation Since 'destination' comes from the table in the query, it cannot be cached across queries! Doh! [44a808af6cf4] <v0.6.x>2012-04-15 Pascal Volk <user@localhost.localdomain.org> * pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql, pgsql/update_tables_0.5.x-0.6.pgsql: pgsql: update_tables_*: Added missing `NOT'to`…tidDROPNOTNULL;'. [92ef34f07da3] <v0.6.x> * pgsql/create_tables-dovecot-1.2.x.pgsql, pgsql/create_tables.pgsql: pgsql: Create column `note'astext.[5020c56f9388]<v0.6.x>2012-04-15martinf.krafft<madduck@madduck.net>*VirtualMailManager/common.py:Adddocstringforcommon.format_domain_default[79f09cdd1a21]<v0.6.x>2012-04-14martinf.krafft<madduck@madduck.net>*man/de/man1/vmm.1,man/man1/vmm.1:Documentdomainnoteinmanpages5806fb74130bdidnotcontainthis,soImusthaveforgottenit.Oops.[47254b46c361]<v0.6.x>*TODO:Removedomain/accountnotesfromTODO[ff805bd17817]<v0.6.x>*VirtualMailManager/account.py:IncludeaccountnoteingetuseroutputModifythegetuseroutputtoincludeanaccountnote,ifoneispresent[1b3bdce0bf87]<v0.6.x>*VirtualMailManager/cli/subcommands.py:DisplayformattednotesininfooutputIftheuser/domainobjecthasanattachednote,thispatchmakestheuserinfo/domaininfooutputprintthenote,wrappedtotheterminalsize.[c3b98364f03d]<v0.6.x>*.hgignore:Ignore*.egg-statusbuilddirectorycreatedbysetuptools[a582f1452bc0]<v0.6.x>*man/de/man1/vmm.1,man/man1/vmm.1:Adduser/domainnotecommandstomanpages[a8ee0328f908]<v0.6.x>*VirtualMailManager/account.py,VirtualMailManager/cli/subcommands.py,VirtualMailManager/domain.py,VirtualMailManager/handler.py:AddnotefieldtoAccount/DomainandCLI[5806fb74130b]<v0.6.x>*pgsql/create_tables-dovecot-1.2.x.pgsql,pgsql/create_tables.pgsql,pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql,pgsql/update_tables_0.5.x-0.6.pgsql:ModifySQLtoaddnotefieldtodomain_dataandusers[1f9ea5658627]<v0.6.x>2012-04-14PascalVolk<user@localhost.localdomain.org>*man/de/man1/vmm.1,man/man1/vmm.1:man:vmm.1:subcommand's name argument is optional now. Based on martin f. krafft'sv2ofchangesetc340ba4bd544.[9a23043b0530]<v0.6.x>2012-04-14martinf.krafft<madduck@madduck.net>*VirtualMailManager/cli/subcommands.py,VirtualMailManager/handler.py,man/de/man1/vmm.1,man/man1/vmm.1:AllowusernametotakenoargumenttoerasevalueOnceausernamehasbeenset,itcouldnotberemovedviatheUI.Now,ifnoargumentispassedtousername,thevaluestoredisreplacedwithNULL.[c340ba4bd544]<v0.6.x>*README:AddinheritanceasafeaturetoREADME[e956ddc868c0]<v0.6.x>*VirtualMailManager/domain.py,man/de/man1/vmm.1,man/man1/vmm.1:Change'force'argumenttoresetuserrecordsfortid/ssid/qidIfdomain{quotalimit,transport,serviceset}arerunwith'force'andsettingsareinheritablefromthedomain,thenratherthantocopytheIDtotheusertable,theaffectedfieldintheuserrecordsshouldbesettoNULLsothatthedomaindefaultisused.[6a27c7529cd7]<v0.6.x>*VirtualMailManager/cli/subcommands.py,VirtualMailManager/handler.py,man/de/man1/vmm.1,man/man1/vmm.1:ChangeUItoaccept'default'torestoreinheritedvaluesInsteadofexplicitvaluesfortid/ssid/qid,theUInowaccepts'default',whichremoveduser-pecificsettingsandhencecausesdomaindefaultstobeused.[2676dbf43e1c]<v0.6.x>2012-04-13martinf.krafft<madduck@madduck.net>*VirtualMailManager/account.py,VirtualMailManager/cli/subcommands.py,VirtualMailManager/common.py:ModifyuserinfooutputtoindicatewhendomaindefaultsaredisplayedWhenAccountinstancesreferenceNULLtid/qid/ssid,thedatamustcomefromtheassociateddomain,andthisshouldbeindicated.Fortransportandservices,thisiseasytodoasthestringpassedintheinfodictcansimplybemodified.Forquotalimit,however,anothermethodmustbeusedduetotheCLI-sideformatting.Allapproachesuseacommonformatteroutsourcedtothecommon.pyfile.[2bb40aaef94e]<v0.6.x>*VirtualMailManager/account.py:ModifyAccountclasstohandleNULLreferencesThispatchmodifiestheAccountclasstodefertousingtheassociateddomain's tid/ssid/qid fields if the per-instance fields are None/NULL. [cf3eb03c1c4f] <v0.6.x> * pgsql/create_tables-dovecot-1.2.x.pgsql, pgsql/create_tables.pgsql, pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql, pgsql/update_tables_0.5.x-0.6.pgsql: Modify SQL update script to accept NULL fields for users The value NULL in the qid/ssid/tid fields of the user table means that the value from the associated domain record should be used instead. This patch modifies the PL/pgSQL functions used by Dovecot and Postfix accordingly. [95dd123b552e] <v0.6.x> * man/de/man1/vmm.1, man/man1/vmm.1: man: Add examples for userservices [916b468cf994] <v0.6.x>2012-04-14 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/account.py, VirtualMailManager/cli/subcommands.py, VirtualMailManager/common.py, pgsql/create_tables-dovecot-1.2.x.pgsql, pgsql/create_tables.pgsql, pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql, pgsql/update_tables_0.5.x-0.6.pgsql: Reverted previous three changesets (e09139525580, 85517c8fde36, 3acbff727626) [4b8c3f51d7da] <v0.6.x>2012-04-13 martin f. krafft <madduck@madduck.net> * VirtualMailManager/account.py, VirtualMailManager/cli/subcommands.py, VirtualMailManager/common.py: Modify userinfo output to indicate when domain defaults are displayed When Account instances reference NULL tid/qid/ssid, the data must come from the associated domain, and this should be indicated. For transport and services, this is easy to do as the string passed in the info dict can simply be modified. For quotalimit, however, another method must be used due to the CLI-side formatting. All approaches use a common formatter outsourced to the common.py file. [e09139525580] <v0.6.x> * VirtualMailManager/account.py: Modify Account class to handle NULL references This patch modifies the Account class to defer to using the associated domain'stid/ssid/qidfieldsiftheper-instancefieldsareNone/NULL.[85517c8fde36]<v0.6.x>*pgsql/create_tables-dovecot-1.2.x.pgsql,pgsql/create_tables.pgsql,pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql,pgsql/update_tables_0.5.x-0.6.pgsql:ModifySQLupdatescripttoacceptNULLfieldsforusersThevalueNULLintheqid/ssid/tidfieldsoftheusertablemeansthatthevaluefromtheassociateddomainrecordshouldbeusedinstead.ThispatchmodifiesthePL/pgSQLfunctionsusedbyDovecotandPostfixaccordingly.[3acbff727626]<v0.6.x>2012-04-14martinf.krafft<madduck@madduck.net>*TODO:Addlist*subcommandstoTODO[3ffe4ee3740f]<v0.6.x>*TODO:adddomain/accountnotestoTODO[f494a593c674]<v0.6.x>2012-04-13martinf.krafft<madduck@madduck.net>*TODO:AddmyWIPitemstotheTODOlist[dc66f66c51cf]<v0.6.x>*pgsql/create_tables-dovecot-1.2.x.pgsql,pgsql/create_tables.pgsql,pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql,pgsql/update_tables_0.5.x-0.6.pgsql:CacheinterpolateddestinationInsteadofrunningthestringmodificationfunctionfordestinationinterpolationtwice,storetheresultonceandusethestoredresultsubsequently.[75d1c0d6bb8f]<v0.6.x>2012-04-12PascalVolk<user@localhost.localdomain.org>*man/man1/vmm.1:man:Useexample.comincatchallinfoexampleoutput.[a0a27688e616]<v0.6.x>*README:README:reStructuredTextfix:ERROR/3andWARNING/2.[b1fd6f08f369]<v0.6.x>2012-04-11martinf.krafft<madduck@madduck.net>*README,man/de/man1/vmm.1,man/man1/vmm.1,pgsql/create_tables-dovecot-1.2.x.pgsql,pgsql/create_tables.pgsql,pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql,pgsql/update_tables_0.5.x-0.6.pgsql:EnableinterpolationofaliasdestinationsThispatchmodifiesthevirtual_alias_mapsfunctionsothatthedestinationaddressisparsedfortheplaceholders%n,%dand%=,whicharereplacedwiththelocalpart,thedomainorthefulladdresswith'@'replacedby'='ofthequeriedkey.Incombinationwithaliasdomains,thisallowsfordomain-specificrecipients.E.g.givenexample.organditsaliasdomainexample.com,defininganaliaspostmaster@example.org→postmaster+%d@example.orgwillcausemailtopostmaster@example.*com*togotopostmaster+example.*com*@example.org.[5ec2068d02af]<v0.6.x>*README:Addcatch-allaliasestoREADME/features[88466a6ba3ae]<v0.6.x>2012-04-10martinf.krafft<madduck@madduck.net>*man/de/man1/vmm.1,man/man1/vmm.1:Addcatchallsubcommandstomanpages[b2084e7f6854]<v0.6.x>*VirtualMailManager/cli/subcommands.py,VirtualMailManager/domain.py,pgsql/create_tables-dovecot-1.2.x.pgsql,pgsql/create_tables.pgsql,pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql,pgsql/update_tables_0.5.x-0.6.pgsql:Includecatch-allcountindomaininfooutput[09fa019bb330]<v0.6.x>*pgsql/create_tables-dovecot-1.2.x.pgsql,pgsql/create_tables.pgsql,pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql,pgsql/update_tables_0.5.x-0.6.pgsql:MakePL/pgSQLfunctionfeedbackidentityformailboxes/relocatedwhentherearecatchalldestinations.Withoutcatchallaliases,ifnovirtual_aliasmatches,thequerycanjustreturnNULLandPostfixwilllatercheckmailboxes/relocatedfortheaddresstorewrite.However,sincevirtualaliasesarehandledlongbeforemailboxes/relocated,acatchallaliaswouldalsocatchmailtomailboxesandrelocatedaddresses,whichwedonotwant.Thewaytotellpostfixtokeepdeliveringisforthevirtualaliasmaptoreturnthesearchkeyitself(identityfunction).Thispatchchangesthepostfix_virtual_alias_mapsPl/pgSQLfunctiontodoexactlythat,butonlyiftherearecatchalldestinationsdefinedforthedomaininquestion—otherwiseitreturnsNULLwhennomatchisfound.[d863a44a6353]<v0.6.x>*VirtualMailManager/catchall.py:Fixsyntaxerrors[557c4703986c]<v0.6.x>*pgsql/create_tables-dovecot-1.2.x.pgsql,pgsql/create_tables.pgsql,pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql,pgsql/update_tables_0.5.x-0.6.pgsql:Modifyvirtual_alias_mapsfunctiontocheckmailboxes/relocatedfirst[821d3ffaaaca]<v0.6.x>*pgsql/create_tables-dovecot-1.2.x.pgsql,pgsql/create_tables.pgsql,pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql,pgsql/update_tables_0.5.x-0.6.pgsql:Makevirtual_alias_mapsfunctionsearchcatchallwhennoaliasesarefound[0244f1344b04]<v0.6.x>*VirtualMailManager/cli/subcommands.py,VirtualMailManager/domain.py,VirtualMailManager/handler.py:Addcatchallinfotodomain_infooutput[1fa354bbdb90]<v0.6.x>*VirtualMailManager/catchall.py:Correctsyntaxerrors[1a9247e9763f]<v0.6.x>2012-04-09martinf.krafft<madduck@madduck.net>*VirtualMailManager/handler.py:Fixupcatchall_infotoreturniterator,notself[18870919ec48]<v0.6.x>*VirtualMailManager/catchall.py:Correctsyntaxerrors[2aae58cddfa9]<v0.6.x>*VirtualMailManager/cli/subcommands.py:TeachCLIaboutcatchall*commands[fb0ffde628d6]<v0.6.x>*VirtualMailManager/handler.py:Providecatchall_*methodstotheHandlerclass[3da8c919584f]<v0.6.x>*VirtualMailManager/catchall.py:FirstversionofaCatchallAliasclassIbasedtheCatchallAliasclassincatchall.pyheavilyontheAliasclass,butbycopy,notderiving.Thetwoarefunctionallyrelated,buttheimplementationsaretoodifferentbecauseCatchallAliaseshavenolocalpart.[f180ead60568]<v0.6.x>*pgsql/create_tables-dovecot-1.2.x.pgsql,pgsql/create_tables.pgsql,pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql,pgsql/update_tables_0.5.x-0.6.pgsql:AdddatabasetableforcatchalldestinationsCatch-allaliasesarestoredforadomain.Sincetherecanbemultipledestinationsperdomain,thisisdoneusinga1:nrelationonthegid.ThiscommitextendstheSQLschemadefinitionandalsoprovidesappropriateupgradeDDL.[492c179094c9]<v0.6.x>2012-04-08PascalVolk<user@localhost.localdomain.org>*pgsql/create_optional_types_and_functions-dovecot-1.2.x.pgsql,pgsql/create_optional_types_and_functions.pgsql,pgsql/create_tables-dovecot-1.2.x.pgsql,pgsql/create_tables.pgsql,pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql,pgsql/update_tables_0.5.x-0.6.pgsql,pgsql/update_types_and_functions_0.5.x-0.6-dovecot-1.2.x.pgsql,pgsql/update_types_and_functions_0.5.x-0.6.pgsql:pgsql:Mergedtypesandfunctionsintothecreate_tables…files.[e1b32377032f]<v0.6.x>*postfix/pgsql-relocated_maps.cf,postfix/pgsql-transport_maps.cf,postfix/pgsql-virtual_alias_maps.cf,postfix/pgsql-virtual_mailbox_maps.cf,postfix/pgsql-virtual_uid_maps.cf:postfix:RemovedVIEW-basedcommentsfromconfigurationfiles.[f2387d60624b]<v0.6.x>*pgsql/create_tables-dovecot-1.2.x.pgsql,pgsql/create_tables.pgsql,pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql,pgsql/update_tables_0.5.x-0.6.pgsql:pgsql:RemovedmostoftheVIEWs.Thereareonlytwoviewsleftfornow:-postfix_gid-vmm_domain_infoAllotherviewshaveafasterreplacement:plpgsqlfunctions.[5ccc9c6e5193]<v0.6.x>2012-04-08martinf.krafft<madduck@madduck.net>*.hgignore:IgnoreevenmoreDebian-build-relatedfiles[23d04d1f29e8]<v0.6.x>*.hgignore:IgnoremoreDebian-build-relatedfilesDebianproducesloganddebhelperfilesindebian/* that do not need to be known to mercurial. Hence, this patch adds the globs to .hgignore. [419c929739fd] <v0.6.x> * TODO: Add non-root TODO [5b9a03762813] <v0.6.x>2012-04-07 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/config.py: VMM/config: Fixed a typo: s/DB_MUDULES/DB_MODULES/g. [17f2c5b5098e] <v0.6.x>2012-04-07 martin f. krafft <madduck@madduck.net> * .hgignore: Ignore build files related to Debian packaging During Debian packaging, the package is built in ./debian/vmm/, and quilt is used (./.pc/). Both directories contain only generated files and should hence be ignored from the perspective of Mercurial. [612a60e9d558] <v0.6.x> * .hgignore: Instruct mercurial to ignore build directory Python's distutil builds the package into ./build/, which can and should be ignored with respect to the repository. This patch simply adds the appropriate line to .hgignore. [2c5e2613eca8] <v0.6.x>2012-04-06 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/handler.py: VMM/handler: Create domain directory with umask 0022. [30365a87650d] <v0.6.x>2012-04-07 martin f. krafft <madduck@madduck.net> * VirtualMailManager/domain.py: Modify address check query to obtain well-defined result The way in which UNION does not yield the desired result, because (a) UNION merges results and (b) the result order is undefined. This patch changes the query to select the counts as columns and hence provides a well-defined order. [e5c2b3647971] <v0.6.x>2012-04-06 Pascal Volk <user@localhost.localdomain.org> * postfix/pgsql-smtpd_sender_login_maps.cf: postfix: Uncommented the query in pgsql-smtpd_sender_login_maps.cf. [320531aa1280] <v0.6.x> * postfix/pgsql-transport.cf, postfix/pgsql-transport_maps.cf: postfix: Renamed pgsql-transport.cf to pgsql-transport_maps.cf. Now it matches pgsql-${postfix-parameter}.cf. [9cdc6ef83265] <v0.6.x>2012-03-29 Pascal Volk <user@localhost.localdomain.org> * po/fr.po: po: Updated French translation (translated by Dimitri Duc). [e0441b07bccc] <v0.6.x>2012-03-13 Pascal Volk <user@localhost.localdomain.org> * po/fi.po: po: Updated Finnish translation (translated by Jorma Karvonen). [b8d5564b4e42] <v0.6.x>2011-12-13 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Fixed a TypeError in user_info(). [fb0af82ab4af] <v0.6.x>2011-12-05 Pascal Volk <user@localhost.localdomain.org> * postfix/pgsql-relocated_maps.cf, postfix/pgsql-transport.cf, postfix /pgsql-virtual_alias_maps.cf, postfix/pgsql-virtual_mailbox_maps.cf, postfix/pgsql-virtual_uid_maps.cf: postfix: Use pgsql functions in query templates where possible. [ccdfbbb1bb01] <v0.6.x> * pgsql/create_optional_types_and_functions-dovecot-1.2.x.pgsql, pgsql/create_optional_types_and_functions.pgsql: pgsql: Updated required privileges for function dovecotpassword. [10e9b4855173] <v0.6.x>2011-11-27 Pascal Volk <user@localhost.localdomain.org> * README: README: Added section `Installation Prerequisites'. Reworked some parts. [35395b49bc44] <v0.6.x>2011-11-26 Pascal Volk <user@localhost.localdomain.org> * update_config.py, upgrade.sh: update_config: Write the old package install dir to a tmp file. upgrade: Remove old CamelCase files. Removed some unused variables. [fb210a116f18] <v0.6.x>2011-11-13 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/serviceset.py: VMM: The pyPgSQL compatibility commit. [428ee9cdf1b2] <v0.6.x> * VirtualMailManager/cli/subcommands.py, VirtualMailManager/config.py: VMM: The Python 2.4.x compatibility commit. [90d69ae4f40d] <v0.6.x> * VirtualMailManager/relocated.py: VMM/relocated: Don't accept something@localhost as destination. [099de308fd98] <v0.6.x> * man/de/man1/vmm.1, man/man1/vmm.1: man1: Updated configuration related descriptions/examples, accordingly to commit 4ff0fa3ba0fa. [b33bdc0c3669] <v0.6.x>2011-11-12 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/constants.py, man/de/man1/vmm.1, man/de/man5/vmm.cfg.5, man/man1/vmm.1, man/man5/vmm.cfg.5, setup.py: Updated the author's e-mail address. [6278a7a2a476] <v0.6.x>2011-11-12 Pascal Volk <neverseen@users.sourceforge.net> * man/de/man1/vmm.1, man/de/man5/vmm.cfg.5, man/man1/vmm.1, man/man5/vmm.cfg.5: man: Updated the URL of the bug tracker. [86fa217cba11] <v0.6.x>2011-11-11 Pascal Volk <neverseen@users.sourceforge.net> * man/de/man5/vmm.cfg.5, man/man5/vmm.cfg.5: man5: Updated the `usable password schemes' part. [c30ce0e079b6] <v0.6.x>2011-11-10 Pascal Volk <neverseen@users.sourceforge.net> * man/de/man1/vmm.1, man/man1/vmm.1: man1: Copied new formatted/translated command output into the examples. [e321b764268e] <v0.6.x>2011-11-09 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Small improvement of domaininfo's output. Pointed out that the displayed quota limit is valid per user. [4353981e3a7f] <v0.6.x> * man/de/man1/vmm.1, man/man1/vmm.1: man1: Removed obsolete commands and added new commands. [9b9cccebccf0] <v0.6.x> * man/de/man1/vmm.1: man/de/man1: Removed translated argument names. [8f59a2f539e7] <v0.6.x>2011-11-08 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Use the common output formatting in list_pwschemes(). [5d0114f7bb99] <v0.6.x> * VirtualMailManager/handler.py: VMM/handler: Added a comment for the Translation Project. [807ad4df0774] <v0.6.x> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Subcommand argument placeholders are no longer translatable. [1ebb6b88f589] <v0.6.x>2011-11-07 Pascal Volk <neverseen@users.sourceforge.net> * po/de.po: po: Updated German translation (translated by Mario Blättermann). [89bf9389d62f] <v0.6.x> * po/vmm.pot: po: Updated address for message-id bug reports. Looks like as sf.net would have horrible configured mail servers. :-/ [b4d21e8bfa00] <v0.6.x> * merged changes from default(c0e1fb1b0145) [863c691d7d14] <v0.6.x> * po/fi.po: po: Added Finnish translation to the repository. Many thanks to Jorma Karvonen from the Translation Project for the work. [c0e1fb1b0145] * VirtualMailManager/password.py: VMM/password: list_schemes(): report suffixes with a leading dot. [7d4d79ff08d0] <v0.6.x> * po/de.po, po/vmm.pot: po: Updated messages template and German translation. [b175c9f62602] <v0.6.x>2011-11-06 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Added new subcommand `listpwschemes' (lp). Marked version()'s ctx argument as unused. [a64c1b5e08b4] <v0.6.x> * VirtualMailManager/password.py: VMM/password: Added function list_schemes(). [cabdf94ec580] <v0.6.x> * man/de/man5/vmm.cfg.5, man/man5/vmm.cfg.5: man5: Moved some option descriptions to section doamin, accordingly to commit 4ff0fa3ba0fa. Added a brief explanation of which settings will be applied in which situations. [e57dd007d69a] <v0.6.x>2011-11-05 Pascal Volk <neverseen@users.sourceforge.net> * update_config.py: update_config: Updated, so that the previous config modifications will be applied to 0.5.2 configurations files. [033a0436894f] <v0.6.x> * VirtualMailManager/cli/subcommands.py, VirtualMailManager/config.py, VirtualMailManager/handler.py, vmm.cfg: VMM/config: Moved some options to section `domain': old new ------------------------------------------------------------ account.imap -> domain.imap account.pop3 -> domain.pop3 account.sieve -> domain.sieve account.smtp -> domain.account misc.quota_bytes -> domain.quota_bytes misc.quota_messages -> domain.quota_messages misc.transport -> domain.transport [4ff0fa3ba0fa] <v0.6.x> * VirtualMailManager/__init__.py: VMM: Show a warning when a unsupported locale setting was detected. [2019aa415dcd] <v0.6.x> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Small improvement in domain_add(). Inform the admin, when the postmaster account will be auto-created. [7847f949d0a2] <v0.6.x> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Fixed a small failure in alias_info(). [b15960e9c53c] <v0.6.x> * TODO: TODO: updated … [7d27627c7fb0] <v0.6.x> * VirtualMailManager/domain.py: VMM/domain: Extended Domain._chk_state() to support both states. [f2934105181b] <v0.6.x>2011-11-04 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/constants.py: VMM/constants: Cleared out obsolete error codes. [63ae77f05088] <v0.6.x> * VirtualMailManager/account.py: VMM/account: Removed unused import. [2408a3cd4bea] <v0.6.x> * VirtualMailManager/maillocation.py, VirtualMailManager/quotalimit.py: VMM/{maillocation,quotalimit}: Unified object initialization code. Simply raise a ValueError for wrong values (unknown IDs). [fd4aa073015f] <v0.6.x> * VirtualMailManager/errors.py, VirtualMailManager/transport.py: VMM/transport: Reworked Transport initialization. Set the transport id only if we could find a transport with that id. Raise a ValueError instead of a translatable TransportError(VMMError). VMM/errors: Deleted class TransportError, it is no longer needed. [6826acb9b0a7] <v0.6.x> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: domainservices: Don't fail when neither a service nor the keyword force was provided. [45c917e6a386] <v0.6.x> * VirtualMailManager/cli/subcommands.py, VirtualMailManager/domain.py, VirtualMailManager/handler.py: VMM/domain: Extended/updated Domain.get_info() in order to: - include active service(s) || None - use more understandable English terms VMM/cli/subcommands: Updated (order of) keys of `domaininfo' output. .`userinfo' will always show `sieve', no longer `managesieve'. [c31d604e26d3] <v0.6.x>2011-11-03 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Small indent fix. [18b75e6a39d5] <v0.6.x> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Added subcommand domainservices (ds). Replaced subcommands userdisable and userenable by userservices (us). [b8c94e06cd46] <v0.6.x>2011-11-02 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/account.py, VirtualMailManager/handler.py: VMM/account: Integrated class ServiceSet in class Account. Replaced methods Account.enable() and Account.disable() by Account.update_serviceset(). VMM/handler: Replaced methods Handler.user_disable() and Handler.user_enable() by Handler.user_services() [95275b61ff8a] <v0.6.x>2011-11-01 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/serviceset.py: VMM/serviceset: Added @property ServiceSet.services -> dict. [e2b9e3de2b51] <v0.6.x> * VirtualMailManager/account.py: VMM/account: Sorted imports … [abcd73f5e980] <v0.6.x> * VirtualMailManager/domain.py, VirtualMailManager/handler.py: VMM/domain: Integrated class ServiceSet in class Domain. VMM/handler: Extended Handler.domain_add() and added Handler.domain_services(). Removed unused domain.get_gid import. [1af5fe0683ce] <v0.6.x> * VirtualMailManager/serviceset.py: VMM/serviceset: Use SERVICES inside of ServiceSet - avoid slicing. [1a08fe35b496] <v0.6.x>2011-10-31 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/serviceset.py: VMM/serviceset: Added module constant SERVICES. [39036f5e6387] <v0.6.x>2011-10-30 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/serviceset.py: VMM: Added new module serviceset - provides class ServiceSet. [e35efe931af3] <v0.6.x>2011-10-28 Pascal Volk <neverseen@users.sourceforge.net> * pgsql/create_optional_types_and_functions-dovecot-1.2.x.pgsql, pgsql/create_optional_types_and_functions.pgsql, pgsql /create_tables-dovecot-1.2.x.pgsql, pgsql/create_tables.pgsql, pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql, pgsql/update_tables_0.5.x-0.6.pgsql, pgsql/update_types_and_functions_0.5.x-0.6-dovecot-1.2.x.pgsql, pgsql/update_types_and_functions_0.5.x-0.6.pgsql: pgsql: Added new table `service_set'. Moved columns `smtp', `pop3' `imap' and `sieve' from the `users' table to the new `service_set' table. [9823548b2717] <v0.6.x>2011-10-26 Pascal Volk <neverseen@users.sourceforge.net> * update_config.py: update_config: Set database.module to pyPgSQL only when psycopg2 is unavailable. [d296a020f440] <v0.6.x> * README: README: Added contet. [ee6f8ac06197] <v0.6.x> * man/de/man1/vmm.1.rst, man/de/man5/vmm.cfg.5.rst, man/substitute_links.rst, man/substitute_links_1.rst, man/substitute_links_5.rst: man: Removed reStructuredText files. [3ca31d080432] <v0.6.x> * man/de/man1/vmm.1, man/de/man5/vmm.cfg.5: man: Reworked/updated German manual pages. [c2543ddde9f5] <v0.6.x>2011-10-25 Pascal Volk <neverseen@users.sourceforge.net> * man/man1/vmm.1: man: Added missing `.RE' macro to sub section userinfo (ui). [ad7cfbfbc68d] <v0.6.x>2011-10-16 Pascal Volk <neverseen@users.sourceforge.net> * po/de.po: po: Fixed 2 fatal msgfmt errors inde.po. [fdd05a757f43] <v0.6.x> * po/de.po: po: Updated German translation. [c11edcfc6e5f] <v0.6.x> * VirtualMailManager/cli/subcommands.py, po/vmm.pot: Messages: Replaced some 'Available' by 'Existing'. [9842650569c2] <v0.6.x> * po/vmm.pot: po: Regenerated vmm.pot [0d8e7977ae63] <v0.6.x>2011-09-03 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/emailaddress.py: VMM/emailaddress: Class DestinationEmailAddress accepts also something@localhost addresses now. [8e41e77b84e6] <v0.6.x> * VirtualMailManager/handler.py: VMM/handler: Handler.alias_delete() also use class DestinationEmailAddress for the destination address, instead of class EmailAddress. [933b9debbec1] <v0.6.x> * VirtualMailManager/alias.py: VMM/alias: Alias.del_destination() corrected the value assignment in the error message's dictionary. [8394e222aba3] <v0.6.x> * VirtualMailManager/alias.py: VMM/alias: Alias._load_dests() use class DestinationEmailAddress for destination addresses, instead of class EmailAddress. [46c296c6e231] <v0.6.x>2011-07-31 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: user_add() show only generated passwords - not the given. [a43a2e20de71] <v0.6.x>2011-03-10 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/handler.py, VirtualMailManager/ext/postconf.py, VirtualMailManager/handler.py, VirtualMailManager/mailbox.py: VMM: Deleted a few unused variables. [33a45e4c80c4] <v0.6.x>2011-03-05 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/network.py: VMM/network: Added new module network. [ff2a61e155db] <v0.6.x>2011-02-27 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/main.py, VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Added function update_cmd_map(). So the items will be added to the cmd_map when gettext's _() has been installed -> translatable subcommand descriptions. [d4a341248500] <v0.6.x>2011-02-24 Pascal Volk <neverseen@users.sourceforge.net> * po/vmm.pot: po: Regenerated vmm.pot [241b192bfcc8] <v0.6.x> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: The keyword 'force' is no longer translatable. [542a4d23a9f0] <v0.6.x> * VirtualMailManager/account.py, VirtualMailManager/alias.py, VirtualMailManager/aliasdomain.py, VirtualMailManager/cli/__init__.py, VirtualMailManager/cli/handler.py, VirtualMailManager/cli/main.py, VirtualMailManager/cli/subcommands.py, VirtualMailManager/domain.py, VirtualMailManager/emailaddress.py, VirtualMailManager/ext/postconf.py, VirtualMailManager/handler.py, VirtualMailManager/password.py, VirtualMailManager/relocated.py: VMM: Updated some messages. (doesn't, isn't) -> (does not, is not) Added missing dots at the end of some sentences. [8209da83e256] <v0.6.x> * man/man1/vmm.1, man/man5/vmm.cfg.5: man: Replaced unnecessary \(aq glyphs in man1/vmm.1. Updated COPYING section in man1/vmm.1 and man5/vmm.cfg.5. [f32b323fd347] <v0.6.x>2011-02-22 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/mailbox.py: VMM/mailbox: Use the correct mailbox hierarchy separator in Mailbox.add_boxes() for mdbox and sdbox mailbox format. [c7a963e6cf6e] <v0.6.x> * VirtualMailManager/cli/subcommands.py, VirtualMailManager/common.py: VMM: Report quota usage/limit/percentage values formatted according to the current LC_ALL setting. [ae1a8428298c] <v0.6.x> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Improved legibility of domaininfo's "quota limit" output a little bit. [e5b3b225bd5b] <v0.6.x> * man/man5/vmm.cfg.5, man/man5/vmm.cfg.5.rst: man/man5: Reworked/updated vmm.cfg.5. Removed vmm.cfg.5.rst. [65687300ba19] <v0.6.x> * man/man1/vmm.1: man/man1: Small syntax fixes in vmm.1. [1ca025a5ce0c] <v0.6.x>2011-02-21 Pascal Volk <neverseen@users.sourceforge.net> * man/man1/vmm.1, man/man1/vmm.1.rst: man/man1: Reworked/updated vmm.1. Removed vmm.1.rst. reStructuredText was nice to edit but the generated output … [2bc9c36c1387] <v0.6.x>2011-02-18 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Update also the RunContext's subcommand if 'plan A' in {,alias}domain_info() fails. [54a89c19e534] <v0.6.x> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Fixed a msgid issue (format string with unnamed arguments). [f6e55b27fe07] <v0.6.x> * VirtualMailManager/handler.py, VirtualMailManager/quotalimit.py: VMM: Solve the default "misc.quota_bytes = '0'" problem where it may occur. [3162ff959375] <v0.6.x> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Made argument names translatable. [58e23bd7c97f] <v0.6.x>2011-02-14 Pascal Volk <neverseen@users.sourceforge.net> * man/de/man1/vmm.1.rst, man/man1/vmm.1.rst, man/substitute_links_1.rst: man1/vmm.1.rst: Added subcommands domainquota and userquota. Updated description of subcommand aliasadd. [da80de422b3c] <v0.6.x>2011-02-13 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/account.py, VirtualMailManager/domain.py: VMM/{account,domain}: Added a versions check to the update_quotalimit methods of classes Account and Domain. [0c52094447b0] <v0.6.x> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Implemented subcommands domainquota and userquota. [a4f5d4cd886d] <v0.6.x> * VirtualMailManager/domain.py: VMM/domain: Execute the database updates of Domain.update_{quotalimit,transport}() when argument force is True, even when the 'new' setting is the same as the current one. [8984b1f4e6e3] <v0.6.x>2011-02-12 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Divided 'quota usage' from userinfo subcommand into 'quota storage' and 'quota messages'. [00a8c12a3da3] <v0.6.x> * VirtualMailManager/quotalimit.py: VMM/quotalimit: Don't fail in QuotaLimit.__init__, if we get the deafult misc.quota_bytes value: '0'. [0512d940918f] <v0.6.x> * VirtualMailManager/common.py: VMM/common: Reworked human_size() once more. Return bytes w/o prefix. Use translatable $FOO_bibyte prefixes, e.g., MiB. [fb22773f7a85] <v0.6.x> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Added quota limit/usage output to {domain,user}info subcommands. [3e5ed678d535] <v0.6.x>2011-02-11 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: config_get: Print configured misc.quota_bytes in human readable format. [cf661a40266d] <v0.6.x> * VirtualMailManager/common.py: VMM/common: human_size() size argument can be also a string. Because the default value of misc.quota_bytes is '0', a string in order to accept also settings like '500M'. [7f931c1ca059] <v0.6.x> * VirtualMailManager/common.py: VMM/common: human_size accept also 0 as size. [0a13849243f2] <v0.6.x> * VirtualMailManager/common.py: VMM/common: Small code cleanup in human_size(). [d3a3c6155879] <v0.6.x> * VirtualMailManager/common.py: VMM/common: Added function human_size(). [fb2ba1456bc5] <v0.6.x>2011-02-10 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/domain.py: VMM/domain: Adjusted Domain.get_info() to the updated vmm_domain_info view. [ffce67e3c6eb] <v0.6.x> * pgsql/create_tables-dovecot-1.2.x.pgsql, pgsql/create_tables.pgsql, pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql, pgsql/update_tables_0.5.x-0.6.pgsql: pgsql: Updated view vmm_domain_info. No longer select data we have already. [8217ddd5220d] <v0.6.x> * VirtualMailManager/account.py, VirtualMailManager/domain.py, VirtualMailManager/handler.py: VMM/{account,domain,handler}: Added quota limit support. A few small modifications in class Account. [660b42391c8e] <v0.6.x>2011-02-09 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/account.py: VMM/account: Removed unused method Account.set_transport(). [5f7e9f778b29] <v0.6.x>2011-02-08 Pascal Volk <neverseen@users.sourceforge.net> * pgsql/create_tables-dovecot-1.2.x.pgsql, pgsql/create_tables.pgsql, pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql, pgsql/update_tables_0.5.x-0.6.pgsql: pgsql: Added quotalimit's bytes and messages to view vmm_domain_info. [dd95ed5bc9d2] <v0.6.x> * pgsql/create_tables-dovecot-1.2.x.pgsql, pgsql/create_tables.pgsql, pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql, pgsql/update_tables_0.5.x-0.6.pgsql: pgsql/{create,update}_tables*: Added the ON DELETE CASCADE clause to table userquota{,_11}'s foreign-key constraint fkey_userquota_uid_users. [05dc4e1f8dff] <v0.6.x>2011-02-07 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/mailbox.py: VMM/mailbox: Added missing dummy translator (_) and comment for method Mailbox._add_boxes. [b7854259ad74] <v0.6.x> * VirtualMailManager/quotalimit.py: VMM/quotalimit: Added new module quotalimit to the repository. [0cae9989395b] <v0.6.x>2011-02-06 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/config.py, man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst, vmm.cfg: VMM/config: Added quota_bytes and quota_messages settings. Updated …/man5/vmm.cfg.5 and vmm.cfg. [d3a97f7fb98a] <v0.6.x>2011-02-04 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/common.py: VMM/common: Added function size_in_bytes(). [ac5ac03b58da] <v0.6.x> * pgsql/create_optional_types_and_functions-dovecot-1.2.x.pgsql, pgsql/create_optional_types_and_functions.pgsql, pgsql /create_tables-dovecot-1.2.x.pgsql, pgsql/create_tables.pgsql, pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql, pgsql/update_tables_0.5.x-0.6.pgsql, pgsql/update_types_and_functions_0.5.x-0.6-dovecot-1.2.x.pgsql, pgsql/update_types_and_functions_0.5.x-0.6.pgsql: pgsql/*: Added tables, triggers and functions for quota support. [5e6bcb2e010e] <v0.6.x>2011-02-02 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/handler.py: VMM:/handler: Fixed typo introduced with the previous commit. [98223e5c95e0] <v0.6.x> * VirtualMailManager/handler.py: VMM/handler: Handler._make_domain_dir(): Check if the domain directory exists before calling os.mkdir(). [5aaf2dd6b146] <v0.6.x> * VirtualMailManager/alias.py, VirtualMailManager/aliasdomain.py, VirtualMailManager/domain.py, VirtualMailManager/relocated.py, VirtualMailManager/transport.py: VMM/*: Use target column names in all INSERT statements. In order to avoid trouble after the definition of a table was changed. [7518d927d443] <v0.6.x>2011-02-01 Pascal Volk <neverseen@users.sourceforge.net> * INSTALL: INSTALL: Updated "user_query". [af56cee51e67] <v0.6.x>2011-01-28 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/mailbox.py: VMM/mailbox: Be more detailed if doveadm couldn't create mailboxes. [920cb090eb09] <v0.6.x>2011-01-20 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Update also the RunContext's subcommand if 'plan A' in {alias,relocated,user}_info() fails. [2af61bc06215] <v0.6.x> * VirtualMailManager/cli/handler.py, VirtualMailManager/handler.py: VMM/{,cli/}handler: Moved the 'address-in-use check' (introduced with changeset ef99be5b7ec0) to {alias,relocated,user}_add(). [4cbaf8d229f9] <v0.6.x>2011-01-19 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/account.py: VMM/account: Account._count_aliases() cast the EmailAddress to str, in order to avoid errors from the database. [ecdba68c7a2c] <v0.6.x>2011-01-17 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/handler.py: VMM/handler: Handler.relocated_add() check if the target address' domain is known, if so add a warning when the account/alias doesn't exist. [1016a17684c1] <v0.6.x> * VirtualMailManager/handler.py: VMM/handler: Handler._get_{account,alias,relocated}() check if the address is already in use. [ef99be5b7ec0] <v0.6.x> * VirtualMailManager/handler.py: VMM/handler: Handler.alias_add() and Handler.relocated_add() use DestinationEmailAddress instances for target addresses. [3b2fd0b4e51b] <v0.6.x>2011-01-17 Tobias Berling <t-obi@users.sourceforge.net> * VirtualMailManager/alias.py: VMM/alias.py: Fixed TypeError when calling dbc.executemany() [1b1f8f0cc687] <v0.6.x> * setup.py: setup.py: Fixed syntax error [4dfc5f3c1f2c] <v0.6.x> * pgsql/create_tables-dovecot-1.2.x.pgsql, pgsql/create_tables.pgsql: pgsql/create_tables{,-dovecot-1.2.x}.pgsql: Fixed syntax errors [be4bd77dbe57] <v0.6.x>2011-01-17 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/emailaddress.py: VMM/emailaddress: Added class DestinationEmailAddress. [a6ad9895989d] <v0.6.x>2011-01-14 Pascal Volk <neverseen@users.sourceforge.net> * COPYING, VirtualMailManager/__init__.py, VirtualMailManager/account.py, VirtualMailManager/alias.py, VirtualMailManager/aliasdomain.py, VirtualMailManager/cli/__init__.py, VirtualMailManager/cli/config.py, VirtualMailManager/cli/handler.py, VirtualMailManager/cli/main.py, VirtualMailManager/cli/subcommands.py, VirtualMailManager/common.py, VirtualMailManager/config.py, VirtualMailManager/constants.py, VirtualMailManager/domain.py, VirtualMailManager/emailaddress.py, VirtualMailManager/errors.py, VirtualMailManager/ext/__init__.py, VirtualMailManager/ext/postconf.py, VirtualMailManager/handler.py, VirtualMailManager/mailbox.py, VirtualMailManager/maillocation.py, VirtualMailManager/password.py, VirtualMailManager/pycompat/__init__.py, VirtualMailManager/pycompat/hashlib.py, VirtualMailManager/relocated.py, VirtualMailManager/transport.py, setup.py, update_config.py, vmm: Updated copyright notices to include the year 2011. [d6573da35b5f] <v0.6.x>2011-01-13 Pascal Volk <neverseen@users.sourceforge.net> * INSTALL: merged changes from default(cfd29e65e4f2) [61fdd77d2e65] <v0.6.x> * INSTALL: INSTALL: Use the %L modifier for %u variable in password_query and user_query. [cfd29e65e4f2]2010-08-10 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/domain.py: VMM/domain: set_{directory,transport} make sure the domain is new. Assertions could be optimized away. [502d59f4bb34] <v0.6.x> * VirtualMailManager/cli/subcommands.py, man/de/man1/vmm.1.rst, man/man1/vmm.1.rst, man/substitute_links_1.rst: VMM/cli/subcommands: Added 'auto postmaster' to domain_add(). [c2e8eab2616d] <v0.6.x> * VirtualMailManager/cli/handler.py, VirtualMailManager/cli/subcommands.py, man/de/man1/vmm.1.rst, man/man1/vmm.1.rst, man/substitute_links_1.rst: VMM/cli/handler: Added support for random passwords in user_add(). [971577b89d26] <v0.6.x>2010-08-09 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/transport.py: VMM/transport: Small error message 'improvement'. [44283818f8db] <v0.6.x> * VirtualMailManager/config.py: VMM/config: Added option mailbox.format to the configuration check. [7fa919dab42c] <v0.6.x> * update_config.py: update_config: Set pyPgSQL, maybe there is no psycopg2 installed. [6fabb9cd212d] <v0.6.x> * man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst: man5/vmm.cfg: Added description for new settings in section database. [095b43faaba5] <v0.6.x> * INSTALL, setup.py: Updated INSTALL and setup.py. [61e732e4cb3e] <v0.6.x> * VirtualMailManager/handler.py: VMM/handler: Added support for psycopg2. [48bf20b43f2e] <v0.6.x> * VirtualMailManager/cli/main.py: VMM/cli/main: Adjusted _get_handler() to changes in config module. [a653c43048b1] <v0.6.x> * VirtualMailManager/config.py: VMM/config: Extended configuration check and raise only a ConfigError. Added new settings 'module', 'port', and 'sslmode' to the database section. [2ae40cd0d213] <v0.6.x>2010-08-07 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/account.py, VirtualMailManager/alias.py, VirtualMailManager/aliasdomain.py, VirtualMailManager/domain.py, VirtualMailManager/maillocation.py, VirtualMailManager/relocated.py, VirtualMailManager/transport.py: VMM/…: Provide parameters as tuple to cursor.execute(). [22d115376e4d] <v0.6.x> * VirtualMailManager/handler.py: VMM/handler: Small code cleanups. [4bba5fb90b78] <v0.6.x> * VirtualMailManager/common.py: VMM/common: Reformulated error message in exec_ok. [b7a4d7828608] <v0.6.x> * VirtualMailManager/cli/config.py: VMM/cli/config: Except the VMMError from exec_ok in configure(). [d60ffbc0124b] <v0.6.x> * VirtualMailManager/config.py: VMM/config: Use common.VERSION_RE, instead of defining the regexp two times. [ca7575401549] <v0.6.x> * VirtualMailManager/common.py: VMM/common: Made the version re pattern object accessible as VERSION_RE. Small 'global …' cleanups. [586367ee042b] <v0.6.x>2010-08-06 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/handler.py: VMM/cli/handler: Don't perform config and environment checks twice. [95d45e4ec1a6] <v0.6.x> * VirtualMailManager/cli/subcommands.py, man/de/man1/vmm.1.rst, man/man1/vmm.1.rst: VMM/cli/subcommands: Added subcommands configget and configset. [f8d5c8bb8bce] <v0.6.x> * VirtualMailManager/cli/config.py: VMM/cli/config: CliConfig.set raise a ConfigError, if the new value could not be set. [0d2430dc6ef8] <v0.6.x> * VirtualMailManager/cli/main.py: VMM/cli/main: Except more errors and handle them correct. [9232ed7e4d85] <v0.6.x> * VirtualMailManager/config.py: VMM/config: LazyConfig._get_section_option check for empty section/option names. [b0c971f943dc] <v0.6.x>2010-08-05 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/account.py, VirtualMailManager/cli/config.py, VirtualMailManager/cli/handler.py, VirtualMailManager/cli/subcommands.py, VirtualMailManager/emailaddress.py, VirtualMailManager/handler.py, VirtualMailManager/relocated.py, po/vmm.pot: VMM/…: Unified messages and removed non-ASCII quotes. VMM/account: Added TP-comment back. Was accidentally removed in changeset f9a6b6701cf9. Refreshed po/vmm.pot. [6709d0faf2f5] <v0.6.x> * VirtualMailManager/cli/__init__.py, VirtualMailManager/cli/main.py, VirtualMailManager/cli/subcommands.py, vmm: vmm: Renamed to VirtualMailManager/cli/main.py. Splitted subcommands out to VirtualMailManager/cli/subcommands.py. vmm: New created with minimal code. [4515afec62e5] <v0.6.x> * VirtualMailManager/cli/handler.py: VMM/cli/handler: CliHandler.user_password: Only prompt for the password if the Account exists. [abff2de9eed0] <v0.6.x> * VirtualMailManager/account.py: VMM/account: Made Account._services available as account.SERVICES. [45834dcc280e] <v0.6.x>2010-08-04 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/handler.py, VirtualMailManager/handler.py: VMM/{,cli/}handler: user_add: Check earlier if the account exists. [150ddcc8b315] <v0.6.x>2010-08-03 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/domain.py: VMM/domain: Added missing comma in Domain.get_info's SELECT list. [d24c2ea39710] <v0.6.x>2010-08-01 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/handler.py, man/de/man1/vmm.1.rst, man/man1/vmm.1.rst: VMM/handler: Updated Handler.user_{disable,enable} methods to accept a list of services. man/{,de/}man1/vmm.1.rst: Updated userenable/userdisable part. [7a471cace3ba] <v0.6.x> * VirtualMailManager/account.py: VMM/account: Reworked methods enable/disable in order to accept multiple services. [3f550826b1cc] <v0.6.x>2010-07-30 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/account.py, VirtualMailManager/handler.py, man/de/man1/vmm.1.rst, man/man1/vmm.1.rst: VMM/{account,handler}: Account delete, use the boolean keyword force too. [1ed85e696748] <v0.6.x> * man/de/man1/vmm.1.rst, man/man1/vmm.1.rst: man/{,de/}man1/vmm.1.rst: Updated domaindelete part. [352ca7f1b332] <v0.6.x> * VirtualMailManager/domain.py, VirtualMailManager/handler.py: VMM/domain: Simplified Domain.delete() related methods and their arguments, VMM/handler: Adjusted to the changes in the domain module. [270b57af85de] <v0.6.x> * VirtualMailManager/handler.py: VMM/handler: _make_home() Create the domain directory if it doesn't exist for some reason. [3fe8d6cdbe3a] <v0.6.x> * VirtualMailManager/account.py, VirtualMailManager/handler.py: VMM/account: Replaced property domain_directory by domain. [41789df75339] <v0.6.x>2010-07-29 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/common.py: VMM/common: Removed unused import. [85972d3ba936] <v0.6.x> * VirtualMailManager/handler.py: VMM/handler: Use more common.lisdir() in Handler's methods _chkenv, _delete_domain_dir, _delete_home, _get_disk_usage, _make_domain_dir, and _make_home. Handler._make_home(): Also check if the domain directory exists. [bb9ff81928f1] <v0.6.x> * VirtualMailManager/common.py, VirtualMailManager/config.py, VirtualMailManager/mailbox.py: VMM/common: Replaced function is_dir() by lisdir(). VMM/{config,mailbox}: Adjusted to the above change. [8f8d9c4c8332] <v0.6.x> * VirtualMailManager/handler.py: VMM/handler: Reworked methods _get_disk_usage, _delete_home and _delete_domain_dir. Deleted method _isdir. [06c0457036a0] <v0.6.x> * VirtualMailManager/constants.py: VMM/constants: Added MIN_GID and MIN_UID. [38e344ba3d0f] <v0.6.x>2010-07-28 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/mailbox.py: VMM/mailbox: Removed accidentally committed debug print statement. [d58cc465dc61] <v0.6.x> * VirtualMailManager/alias.py, VirtualMailManager/cli/config.py, VirtualMailManager/config.py, VirtualMailManager/emailaddress.py, VirtualMailManager/mailbox.py, VirtualMailManager/relocated.py: VMM/…: More PEP-8 fixes; eliminated __names. VMM/emailaddress: Fixed™ methods __eq__ and __ne__. (I'm not pylint's nanny.) [94bd10e237e5] <v0.6.x> * VirtualMailManager/transport.py: VMM/transport: Converted _mixedCase method names to _lower_case_with_underscores. Added missing docstrings. Fixed™ methods __eq__ and __ne__. (I'm not pylint's nanny.) [883d5cd66498] <v0.6.x> * VirtualMailManager/Account.py, VirtualMailManager/Alias.py, VirtualMailManager/AliasDomain.py, VirtualMailManager/Config.py, VirtualMailManager/Domain.py, VirtualMailManager/EmailAddress.py, VirtualMailManager/Handler.py, VirtualMailManager/Relocated.py, VirtualMailManager/Transport.py, VirtualMailManager/__init__.py, VirtualMailManager/account.py, VirtualMailManager/alias.py, VirtualMailManager/aliasdomain.py, VirtualMailManager/cli/Config.py, VirtualMailManager/cli/Handler.py, VirtualMailManager/cli/__init__.py, VirtualMailManager/cli/config.py, VirtualMailManager/cli/handler.py, VirtualMailManager/common.py, VirtualMailManager/config.py, VirtualMailManager/domain.py, VirtualMailManager/emailaddress.py, VirtualMailManager/errors.py, VirtualMailManager/ext/Postconf.py, VirtualMailManager/ext/postconf.py, VirtualMailManager/handler.py, VirtualMailManager/mailbox.py, VirtualMailManager/maillocation.py, VirtualMailManager/password.py, VirtualMailManager/relocated.py, VirtualMailManager/transport.py: VMM/*: Made all modules names lowercase, adjusted imports. [011066435e6f] <v0.6.x> * VirtualMailManager/Handler.py, VirtualMailManager/cli/Handler.py: VMM//{,cli/}Handler: PEP-8-ified the Handler classes: * converted CamelCase method names to lower_case_with_underscores * eliminated __names * added missing docstrings [f4956b4ceba1] <v0.6.x>2010-07-27 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Handler.py, VirtualMailManager/cli/Handler.py: VMM//{,cli/}Handler: Reworked configuration related parts. Renamed attributes _Cfg -> _cfg; _cfgFileName -> _cfg_fname. Renamed methods __chkCfgFile -> __check_cfg_file; __findCfgFile -> __find_cfg_file. Added missing docstrings. [4dc2edf02d11] <v0.6.x> * VirtualMailManager/constants.py: VMM/constants: Added __copyright__. [d619e97a8f18] <v0.6.x>2010-07-26 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/Alias.py, VirtualMailManager/AliasDomain.py, VirtualMailManager/Config.py, VirtualMailManager/Domain.py, VirtualMailManager/EmailAddress.py, VirtualMailManager/Handler.py, VirtualMailManager/Relocated.py, VirtualMailManager/Transport.py, VirtualMailManager/__init__.py, VirtualMailManager/cli/Config.py, VirtualMailManager/cli/Handler.py, VirtualMailManager/cli/__init__.py, VirtualMailManager/common.py, VirtualMailManager/constants.py, VirtualMailManager/constants/ERROR.py, VirtualMailManager/constants/EXIT.py, VirtualMailManager/constants/__init__.py, VirtualMailManager/constants/version.py, VirtualMailManager/ext/Postconf.py, VirtualMailManager/mailbox.py, VirtualMailManager/maillocation.py, VirtualMailManager/password.py: VMM/constants: Replaced the constants subpackage by a module. [31d8931dc535] <v0.6.x> * VirtualMailManager/cli/__init__.py: VMM/cli: Forgot to remove string_io from __all__. [81bccfd14355] <v0.6.x> * VirtualMailManager/cli/__init__.py: VMM/cli: Removed misplaced function string_io. [0b4a6e9d9f27] <v0.6.x> * VirtualMailManager/cli/Config.py: VMM/cli/Config: Write warnings to stderr. Renamed method __saveChanges to __save_changes. [c17c46d9e440] <v0.6.x> * VirtualMailManager/cli/__init__.py: VMM/cli: w_err() call os.sys.exit only if code != 0. read_pass() write errors to stderr. And a few other small fixes. [6f39a1e56f4a] <v0.6.x>2010-07-25 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/ext/Postconf.py: VMM/ext/Postconf: Reworked class Postconf. Added method edit(). [a0a10100aee5] <v0.6.x>2010-07-23 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Handler.py: VMM/Handler: Reworked __domDirMake and reamed to __make_domain_dir. Removed the (now) unused method __makedir. [644e2cc4a441] <v0.6.x> * VirtualMailManager/Handler.py, VirtualMailManager/mailbox.py: VMM/mailbox: Added to the repository. VMM/Handler: Integrated mailbox module. Code cleanups. [d21423478803] <v0.6.x> * VirtualMailManager/Transport.py: VMM/Transport: Small cosmetics. [aa4a9fc31e1b] <v0.6.x> * VirtualMailManager/maillocation.py, man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst, vmm.cfg: VMM/maillocation: Dovecot >= 2.0.beta5 is required for `doveadm mailbox create -s …` [217b419d6561] <v0.6.x>2010-07-22 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py: VMM/Account: s/prefix/mbformat/ and pass the dbh to MailLocation.__init__. [504fd29b4712] <v0.6.x> * VirtualMailManager/maillocation.py: VMM/maillocation: Renamed MailLocation's property prefix to mbformat. [3c62f581d17a] <v0.6.x> * VirtualMailManager/Config.py, man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst, man/substitute_links_5.rst, vmm.cfg: VMM/Config: Added boolean option mailbox.subscribe. [df0f7b22540c] <v0.6.x> * VirtualMailManager/Config.py: VMM/Config: Return mailbox.{folders,root} settings as Unicode. [8dd3a107fd92] <v0.6.x>2010-07-21 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/maillocation.py: VMM/maillocation: Reworked class MailLocation to match the new database structure. [32b4a39b5640] <v0.6.x> * VirtualMailManager/Config.py: VMM/Config: Added function check_mailbox_format(). [e1d3f027dd64] <v0.6.x>2010-07-20 Pascal Volk <neverseen@users.sourceforge.net> * man/de/man5/vmm.cfg.5.rst: man/de/man5/vmm.cfg.5.rst: Fixed a typo. [efa001edc349] <v0.6.x> * man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst: man/{,de/}man5/vmm.cfg.5.rst: Added mailbox.root, small updates. [d15a27eaa9d2] <v0.6.x> * VirtualMailManager/Config.py, update_config.py, vmm.cfg: VMM/Config: Added mailbox.root setting. [ee89399346cb] <v0.6.x> * TODO, pgsql/create_optional_types_and_functions-dovecot-1.2.x.pgsql, pgsql/create_optional_types_and_functions.pgsql, pgsql /create_tables-dovecot-1.2.x.pgsql, pgsql/create_tables.pgsql, pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql, pgsql/update_tables_0.5.x-0.6.pgsql, pgsql/update_types_and_functions_0.5.x-0.6-dovecot-1.2.x.pgsql, pgsql/update_types_and_functions_0.5.x-0.6.pgsql: pgsql: Added support for different mailbox formats. - users.passwd can store sha512-crypt.hex hashes now - Added new update scripts. [e21ceaabe871] <v0.6.x>2010-07-12 Pascal Volk <neverseen@users.sourceforge.net> * pgsql/update_tables_0.4.x-0.5.pgsql, pgsql/update_tables_0.5.x_for_dovecot-1.2.x.pgsql, pgsql/update_types_and_functions_0.5.x_for_dovecot-1.2.x.pgsql: pgsql: Removed old update SQL scripts. [62211b6a9b8e] <v0.6.x>2010-07-04 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Alias.py, VirtualMailManager/maillocation.py: VMM/maillocation: Code cleanups. Fixed error introduced with changeset 084300a00ee1. [18086c6a2521] <v0.6.x>2010-05-18 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Domain.py, VirtualMailManager/Handler.py: VMM/Domain: removed functions ace2idna() and idn2ascii(). domainname.encode('idna')/domainname.decode('idna') works too. [7d1bafc6fa30] <v0.6.x>2010-05-12 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/Handler.py: VMM/Account: replaced attribute _mid : int by _mail : MailLocation. [a77b67673aa6] <v0.6.x>2010-05-11 Pascal Volk <neverseen@users.sourceforge.net> * TODO, VirtualMailManager/password.py: VMM/password: added some CRYPT_* constants. Reverted modification (284:ec1966828246) in _get_salt(). [619dadc0fd25] <v0.6.x>2010-05-10 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py, VirtualMailManager/password.py, man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst: VMM/password: adapted Blowfish/SHA-256/SHA-512 crypt() to recent changes in the Dovecot-2.0 source tree. VMM/Config: Added default number of encryption rounds to the configuration. man5: updated description of misc.crypt_{blowfish,sha{256,512}}_rounds. [7ef3f117a230] <v0.6.x>2010-05-09 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/Alias.py, VirtualMailManager/AliasDomain.py, VirtualMailManager/Config.py, VirtualMailManager/Domain.py, VirtualMailManager/EmailAddress.py, VirtualMailManager/Handler.py, VirtualMailManager/Relocated.py, VirtualMailManager/cli/Config.py, VirtualMailManager/ext/Postconf.py, VirtualMailManager/password.py: VMM/…: re-indented long queries and error messages. [e2785e04f92e] <v0.6.x>2010-05-05 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/password.py: VMM/password: generate all crypt() salts w/o trailing $ sign [142f188f7552] <v0.6.x>2010-05-04 Pascal Volk <neverseen@users.sourceforge.net> * man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst: man5: added misc.dovecot_version to the minimal config example. [01cb71c1ae33] <v0.6.x> * VirtualMailManager/Config.py, VirtualMailManager/password.py: VMM/password: moved the 'scheme check' code from pwhash() to the new function verify_scheme(). VMM/Config: use verify_scheme() to check the scheme when LazyConfig.set() is called. [1e77dd639fa3] <v0.6.x>2010-05-03 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py, man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst: VMM/Config: removed the default value of misc.dovecot_version. There are too many different versions installed on different systems. So, it doesn't make much sense to have a default value. [e2046d47688b] <v0.6.x> * VirtualMailManager/Handler.py: VMM/Handler: import the errors before raising them. Rephrased the 'permission error' message. [d30a94f5aef5] <v0.6.x> * TODO, VirtualMailManager/Config.py, VirtualMailManager/password.py, man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst, man/substitute_links_5.rst: VMM/password: Added support Blowfish/SHA-256/SHA-512 crypt(). Also updated Config and man section 5. [ec1966828246] <v0.6.x>2010-04-30 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Handler.py: VMM/Handler: code cleanups in the user/alias/relocated info methods. [ea6d052de24a] <v0.6.x> * VirtualMailManager/Handler.py: VMM/Handler: fixed destination check in Handler.aliasAdd(). [28871c1be260] <v0.6.x> * VirtualMailManager/Alias.py, VirtualMailManager/Handler.py, VirtualMailManager/cli/Handler.py: VMM/Alias: moved the postconf stuff from the Handlers to Alias class. [59ff7c719697] <v0.6.x> * VirtualMailManager/Config.py, VirtualMailManager/Handler.py: VMM/{Config,Handler}: moved Config.install() to Handler.cfg_install(). Handler.cfg_install() must be called explicitly. To avoid 'strange' problems. [db35d2eec518] <v0.6.x>2010-04-29 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/Handler.py: VMM/cli/Handler: fixed AttributeError in CliHandler.__init__(). Attribute '_scheme' was removed in previous commit. [74d94b867348] <v0.6.x> * VirtualMailManager/Handler.py: VMM/Handler: removed password hashing related stuff. [5d229a50b115] <v0.6.x> * VirtualMailManager/Handler.py, VirtualMailManager/cli/Handler.py: VMM{,/cli}/Handler: adjusted user* methods to the changes in Account. All user methods was renamed from userAction() to user_action(). Added missing docstrings. [e50ffc0b8468] <v0.6.x> * VirtualMailManager/Account.py: VMM/Account: always pass the EmailAddress to the pwhash() call. [f2ecfe0a0e09] <v0.6.x> * VirtualMailManager/Account.py, VirtualMailManager/constants/ERROR.py: VMM/Account: some modifications and small improvements in class Account. - replaced the tid by a Transport instance - check mailbox format dependencies in _repare() - reset all attributes when the Account was deleted - don't select information, we have already, from the db - added __nonzero__() method [524f7ed5ad5b] <v0.6.x> * VirtualMailManager/password.py: VMM/password: added small output check on _dovecotpw(). [45ec5c3cfef4] <v0.6.x> * VirtualMailManager/common.py: VMM/common: added a caching dict for version_hex()/version_str() [77fc7138ef6a] <v0.6.x>2010-04-28 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py, VirtualMailManager/Handler.py, VirtualMailManager/__init__.py, VirtualMailManager/password.py: VMM/Config: Added method Config.install() -> global cfg_dget(). VirtualMailManager.Configuration removed -> some adjustments. [446483386914] <v0.6.x> * INSTALL, UPGRADE: INSTALL: dropped group mail related stuff. UPGRADE: be more details about nobody's primary group. [e915d4725706] <v0.6.x> * VirtualMailManager/Config.py, VirtualMailManager/Handler.py, man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst, update_config.py, vmm.cfg: configuration: Dropped setting misc.gid_mail. That setting was never useful, since none of the virtual users was a member of a system group. [d3389645a91d] <v0.6.x> * man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst, man/substitute_links.rst: man/{,de/}man5/vmm.cfg.5.rst: Updated descriptions of dovecotpw and password_scheme settings. [188ea8d6072f] <v0.6.x> * INSTALL, VirtualMailManager/password.py, VirtualMailManager/pycompat/hashlib.py: VMM: added new modules password and pycompat.hashlib. INSTALL: updated [beb8f4421f92] <v0.6.x> * VirtualMailManager/maillocation.py: VMM/maillocation: Use the hex version, since we are able to convert it to an string, in case of a failure. [084300a00ee1] <v0.6.x>2010-04-27 Tobias Berling <t-obi@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/Handler.py, VirtualMailManager/common.py: VMM/{Account,common,Handler}: Improved version_hex(). - common: version_hex() now supports 'serials' > 16. Added version_str() as counterpart to version_hex(). - Account, Handler: updated hardcoded Dovecot versions. [e14c345b44a1] <v0.6.x>2010-04-26 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/common.py, VirtualMailManager/maillocation.py: VMM/{Account,common,maillocation}: Dovecot version (check) fixes. - Account: fixed versions dependencies. - maillocation: use the version string, may be uses in a error message. - common: version_hex() raises a ValueError, instead of returning 0, if the version string is invalid. [3c0173418d5d] <v0.6.x>2010-04-25 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/Config.py, VirtualMailManager/Handler.py, VirtualMailManager/maillocation.py, man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst, update_config.py, upgrade.sh, vmm.cfg: Use the complete Dovecot version, not only the concatenated major and minor parts. (1.2.11 instead of 12). [04fea4d8b900] <v0.6.x> * VirtualMailManager/common.py: VMM/common: improved version_hex() in order to convert also alpha, beta and release candidate versions. [07fdc93dde9f] <v0.6.x>2010-04-24 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py, VirtualMailManager/Handler.py, VirtualMailManager/__init__.py, VirtualMailManager/common.py: VMM: moved some non-init functions to the new common module. Adjusted imports in the Config and Handler module. [6eea85d8b91d] <v0.6.x>2010-04-23 Pascal Volk <neverseen@users.sourceforge.net> * setup.py: setup.py: Added sub-package pycompat to the packages list. [1c2241dde942] <v0.6.x>2010-04-22 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/pycompat.py, VirtualMailManager/pycompat/__init__.py: VMM/pycompat: is now a sub-package. [b052a2f0f5d4] <v0.6.x>2010-04-20 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Handler.py: merged changes from default(9bf8d97ced88) [6c699837b4d4] <v0.6.x> * VirtualMailManager/VirtualMailManager.py: VMM/VMM: corrected name of password scheme PLAIN-MD4. [9bf8d97ced88]2010-04-18 Tobias Berling <mail@tobiasberling.de> * VirtualMailManager/Alias.py, VirtualMailManager/AliasDomain.py, pgsql/create_tables-dovecot-1.2.x.pgsql, pgsql/create_tables.pgsql: VMM/Alias.py: Replaced some %r with '%s'. VMM/AliasDomain.py: save(), switch(), delete(): Update AliasDomain._gid after database change. Added dbc.close() to AliasDomain.delete(). create_tables{,-dovecot-1.2.x}.pgsql: Fixed a typo. [5b8fde01e4f0] <v0.6.x>2010-04-18 Pascal Volk <neverseen@users.sourceforge.net> * TODO, VirtualMailManager/Handler.py, VirtualMailManager/__init__.py: VMM: added 'Configuration' variable and set_configuration(). Handler.__init__() now exports its config via set_configuration(). [ae80282301a3] <v0.6.x>2010-04-17 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Handler.py: VMM/Handler: renamed some methods and added their missing docstrings: - cfgDget() -> cfg_dget() - cfgPget() -> cfg_pget() - userByID() -> user_by_uid() [d2ddd4a6528d] <v0.6.x>2010-04-16 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/AliasDomain.py, VirtualMailManager/Domain.py, VirtualMailManager/EmailAddress.py, VirtualMailManager/Handler.py, VirtualMailManager/__init__.py: VMM: moved functions ace2idna(), check_domainname(), idn2ascii() and relevant parts to the Domain module. Adjusted imports in modules AliasDomain, EmailAddress and Handler. [8aecc83a0d32] <v0.6.x> * VirtualMailManager/EmailAddress.py, VirtualMailManager/__init__.py: VMM: moved check_localpart() to the EmailAddress module. [58d1b6f41664] <v0.6.x>2010-04-15 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py: VMM/Account: renamed function getAccountByID -> get_account_by_uid. Fixed AttributeError (tid) in Account._prepare(). Removed unused imports. [af555e6967c8] <v0.6.x> * VirtualMailManager/Handler.py: VMM/Handler: Implemented Handler._chk_other_address_types(). Removed the static methods accountExists(), aliasExists(), relocatedExists() and _exists(). [0963ad2f5fe2] <v0.6.x> * VirtualMailManager/Account.py, VirtualMailManager/Alias.py, VirtualMailManager/Relocated.py: VMM/{Account,Alias,Relocated}: added a address property to the classes Account, Alias and Relocated. [73cd082cd724] <v0.6.x> * VirtualMailManager/Relocated.py: VMM/Relocated: implemented Relocated.__nonzero__() for truth value testing. Use EmailAddress' __str__() method when raising RelocatedErrors. [bb7d9906c529] <v0.6.x> * INSTALL: merged changes from default(dbcb29ac89fa) [da241eacad4d] <v0.6.x> * INSTALL: INSTALL: simplified the 'SETUID copy of deliver' part [dbcb29ac89fa] * VirtualMailManager/Account.py: VMM/Account: Account.get_info() use the domain's transport, if tid matches. [481280686789] <v0.6.x> * VirtualMailManager/Account.py, VirtualMailManager/constants/ERROR.py: VMM/Account: reworked class Account. [f9a6b6701cf9] <v0.6.x>2010-04-13 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Handler.py: VMM/Handler: adjusted Handler.aliasDomain*() methods to changes in the AliasDomain class. Updated docstrings. [698ba4208ddc] <v0.6.x> * VirtualMailManager/AliasDomain.py: VMM/AliasDomain: some cleanups in class AliasDomain. Added missing docstrings. [30aaf2bc079c] <v0.6.x>2010-04-05 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Domain.py: VMM/Domain: search() small code cleanups. [496099847480] <v0.6.x> * VirtualMailManager/Handler.py: VMM/Handler: small code cleanups and an improved import statement. [2493453f2c10] <v0.6.x> * VirtualMailManager/Domain.py, VirtualMailManager/Handler.py: merged changes from default(184970fd7486) [fb6336b25b8f] <v0.6.x> * VirtualMailManager/Domain.py: VMM/Domain: search() lists now all matching domains, also when the result contains primary and alias names, but the found alias is not an alias for any of the found primaries. [184970fd7486] * VirtualMailManager/VirtualMailManager.py: VMM/VMM: applied 'code compression' from v0.6.x(09b7e3fe29b3) to VirtualMailManager.domainList(). [8f56166a3283]2010-04-04 Tobias Berling <mail@tobiasberling.de> * VirtualMailManager/Handler.py: VMM/Handler: compressed Handler.domainList() and replaced “%s” with '%s' in error message. [09b7e3fe29b3] <v0.6.x>2010-04-04 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/AliasDomain.py, VirtualMailManager/Domain.py, VirtualMailManager/Handler.py: VMM/Domain: reworked Domain class. Adjusted classes Account, AliasDomain and Handler to changes in the Domain class. [084331dd1e4c] <v0.6.x>2010-04-03 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/Transport.py: VMM/Transport: Renamed attribute/property {,_}id to {,_}tid. [9d3405ed08e5] <v0.6.x>2010-04-02 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/__init__.py: VMM: check_localpart() use '%s' instead of %r in error messages. [e88ba0fb1281] <v0.6.x>2010-03-21 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Handler.py: merged changes from default(8c4df3dd2d2c) [55503d63ba30] <v0.6.x> * vmm: vmm: minimal cleanups. [3c766114d0b9] <v0.6.x> * VirtualMailManager/VirtualMailManager.py: VMM: VirtualMailManager.__pwhash() added support for 'doveadm pw'. dovecotpw was replaced by `doveadm pw` in Dovecot v2.0. To use doveadm instead of dovecotpw use the following settings in vmm.cfg: [bin] dovecotpw = /path/to/doveadm [misc] dovecotvers = 20 [8c4df3dd2d2c]2010-03-03 Pascal Volk <neverseen@users.sourceforge.net> * man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst, man/substitute_links_5.rst: man: updated configuration manual pages (maildir.* -> mailbox.*). [eefbe052a135] <v0.6.x> * VirtualMailManager/Config.py, update_config.py, vmm.cfg: vmm.cfg: renamed maildir.folders to mailbox.folders. maildir.name was removed. new: mailbox.format, in order to support all mailbox formats from Dovecot. Maildir is the default format. Adjusted VirtualMailManager/Config and update_config.py to the changes mentioned above. [0fb2f12648a7] <v0.6.x> * VirtualMailManager/Account.py, VirtualMailManager/maillocation.py: VMM/maillocation: MailLocation.__init__(): take a 'format' name, instead of a 'directory' name. - added function known_format() to the module. VMM/Account: Adjusted to above changes. [a7b000ca4ac9] <v0.6.x>2010-03-02 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/constants/ERROR.py, VirtualMailManager/maillocation.py, doc/source/vmm_constants_error.rst: VMM/Account: Adjusted to changes in maillocation.MailLocation. VMM/maillocation: Class MailLocation added missing property `mid`. Added new error to VMM/constants/ERROR and doc/source/vmm_constants_error [87db9f1f95ea] <v0.6.x> * VirtualMailManager/MailLocation.py, VirtualMailManager/maillocation.py, doc/source/vmm_constants_error.rst: VMM/maillocation: rewrote MailLocation class. Renamed MailLocation.py to maillocation.py. [311eee429f67] <v0.6.x>2010-03-01 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/Domain.py, VirtualMailManager/Transport.py: VMM/Transport: reworked Transport class. Use assertions for argument checks. Removed methods getID() and getTransport(). This values are now accessible through the read-only attributes id and transport. VMM/{Account,Domain}: adjusted to modifications in Transport class. A few code cleanups. [a51809f7940b] <v0.6.x> * VirtualMailManager/pycompat.py: VMM/pycompat: added function any() for Python 2.4 [7e9874a50d92] <v0.6.x> * VirtualMailManager/Alias.py, VirtualMailManager/Handler.py, VirtualMailManager/ext/Postconf.py: replaced some "for x in list …" [5c7b7cbb01cd] <v0.6.x>2010-02-28 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Alias.py, VirtualMailManager/Domain.py, VirtualMailManager/Handler.py, VirtualMailManager/Relocated.py: VMM/Domain: get_gid() return 0 instead of raising an Exception, if the domain wasn't found in the database. [d0c16e70a9fb] <v0.6.x>2010-02-27 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Alias.py, VirtualMailManager/Handler.py: VMM/Alias: renamed Alias.add_destination() to add_destinations(). Now it's possible to add one ore more destinations to the alias with a single method call. VMM/Handler: adjusted Handler.aliasAdd() to the API changes of the Alias class. Also use get_gid from the Domain module to get the gid of a domain. We don't need complete Domain object, only the gid. Handler.getWarnings(): no longer return the __warnings list. Return a copy instead and empty the Handler.__warnings list. [371ae0b4443d] <v0.6.x> * doc/source/index.rst, doc/source/vmm_alias.rst, doc/source/vmm_constants_error.rst, doc/source/vmm_relocated.rst: doc: Added the alias documentation. [8b8d632f0ef3] <v0.6.x> * VirtualMailManager/pycompat.py: VMM/pycompat: added to the repository. Provides all() for Py24. [0b6ce895e1dc] <v0.6.x> * VirtualMailManager/EmailAddress.py: VMM/EmailAddress: implemented EmailAddress.__hash__(). So we can have a set() of EmailAddress instances. [84094c7fa28b] <v0.6.x> * VirtualMailManager/cli/__init__.py: VMM/cli: small optimizations in the functions w_std() and w_err() [eecd05e31517] <v0.6.x>2010-02-26 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/Alias.py, VirtualMailManager/AliasDomain.py, VirtualMailManager/Config.py, VirtualMailManager/Domain.py, VirtualMailManager/EmailAddress.py, VirtualMailManager/Exceptions.py, VirtualMailManager/Handler.py, VirtualMailManager/MailLocation.py, VirtualMailManager/Relocated.py, VirtualMailManager/Transport.py, VirtualMailManager/__init__.py, VirtualMailManager/cli/Config.py, VirtualMailManager/cli/Handler.py, VirtualMailManager/errors.py, VirtualMailManager/ext/Postconf.py, doc/source/index.rst, doc/source/vmm.rst, doc/source/vmm_config.rst, doc/source/vmm_constants_error.rst, doc/source/vmm_emailaddress.rst, doc/source/vmm_errors.rst, doc/source/vmm_exceptions.rst, doc/source/vmm_relocated.rst: Moved VirtualMailManager/Exceptions to VirtualMailManager/errors. Renamed VMM*Exception classes to *Error. No longer add the attribute 'message' to VMMError if it doesn't exist, like in Python 2.4. It has been deprecated as of Python 2.6. Also removed the methods code() and msg(), the values are now accessible via the attributes 'code' and 'msg'. [0c8c053b451c] <v0.6.x>2010-02-25 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Alias.py, VirtualMailManager/Config.py, VirtualMailManager/EmailAddress.py, VirtualMailManager/Handler.py, VirtualMailManager/Relocated.py, VirtualMailManager/__init__.py, VirtualMailManager/cli/Config.py, VirtualMailManager/cli/__init__.py, VirtualMailManager/constants/VERSION.py, VirtualMailManager/constants/version.py, doc/source/vmm.rst, doc/source/vmm_config.rst, doc/source/vmm_relocated.rst: PEP-8-ified the work of the last days. Renamed methods in class Alias: addDestination() -> add_destination() delDestination() -> del_destination() getDestinations() -> get_destinations() Renamed methods in class Relocated: setDestination() -> set_destination() getInfo() -> get_info() Renamed VMM/constants/VERSION.py -> VMM/constants/version.py Adjusted relevant parts of the documentation. [33f727efa7c4] <v0.6.x>2010-02-24 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Exceptions.py: VMM/Exceptions: use the inherited CTor in all VMM*Exception classes. [84e6e898e6c5] <v0.6.x> * VirtualMailManager/Alias.py, VirtualMailManager/EmailAddress.py, VirtualMailManager/Relocated.py: VMM:/{Alias,EmailAddress,Relocated}: use assertions for argument checks. [1a9fee6b93bc] <v0.6.x> * doc/source/conf.py, doc/source/index.rst, doc/source/vmm.rst, doc/source/vmm_constants_error.rst, doc/source/vmm_emailaddress.rst, doc/source/vmm_exceptions.rst, doc/source/vmm_relocated.rst: doc: extended documentation. [77ac6f572855] <v0.6.x>2010-02-22 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py: VMM/Config: LazyConfig.getboolean(), convert the value in our getboolean. So RawConfigParser hasn't to do the whole get() stuff again. [0b129678cfe1] <v0.6.x> * .hgignore: Added 'doc/build' to the ignored files. [3ddb735ec9d2] <v0.6.x> * VirtualMailManager/Config.py, VirtualMailManager/__init__.py, doc/Makefile, doc/source/conf.py, doc/source/index.rst, doc/source/vmm.rst, doc/source/vmm_config.rst: VMM{/Config}: reduced docstrings. Added doc to the repository. [c705a9e38962] <v0.6.x> * VirtualMailManager/EmailAddress.py, VirtualMailManager/Handler.py, VirtualMailManager/__init__.py: VMM: removed unneeded/duplicated regular expression definitions [efa1327b721f] <v0.6.x> * VirtualMailManager/Config.py: VMM/Config: moved Config.sections() to class LazyConfig. No longer import the ENCODING from VirtualMailManager, it's no longer required in the Config module. [95be8f62bc0c] <v0.6.x>2010-02-20 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py, VirtualMailManager/cli/Config.py: VMM/Config: renamed LazyConfig's get_boolean() to getboolean(). VMM/cli/Config: import required ConfigParser.RawConfigParser. [da07dd944ad1] <v0.6.x>2010-02-13 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/__init__.py: VMM/cli: added __init__.py to the repository. [bc9726c9ad85] <v0.6.x> * VirtualMailManager/Config.py, VirtualMailManager/cli/Config.py: VMM/{,cli/}Config: fixed imports. Small code cleanups and cosmetic. [83938336c518] <v0.6.x>2010-02-12 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Alias.py: VMM/Alias: small code cleanups and cosmetic. [4d601240b7db] <v0.6.x> * VirtualMailManager/Relocated.py: VMM/Relocated: small code cleanups and cosmetic. [43e7c8b440da] <v0.6.x> * VirtualMailManager/Config.py: VMM/Config: LazyConfigOption.__init__() cast 'default' to 'cls'. If the default value is not None, make sure it has the proper type. [dbb0f7ed7858] <v0.6.x>2010-02-11 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py: VMM/Config: attributes of class LazyConfigOption are read-only now. Some small code cleanups. [983cf98d5881] <v0.6.x> * VirtualMailManager/AliasDomain.py, VirtualMailManager/Domain.py, VirtualMailManager/EmailAddress.py, VirtualMailManager/__init__.py: VMM: renamed function chk_domainname() -> check_domainname(). Moved EmailAddress.check_localpart() -> VirtualMailManager.check_localpart(). Some small code cleanups in class EmailAddress. [0684790fff7c] <v0.6.x>2010-02-10 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Alias.py, VirtualMailManager/Domain.py, VirtualMailManager/Relocated.py: VMM/Domain: added function get_gid() to the Domain module. We don't need to load all the domain related information from the database, when we need only the GID of a domain. For example in the Alias or Relocated classes. [02d467e4fbab] <v0.6.x> * VirtualMailManager/Handler.py, VirtualMailManager/Relocated.py: VMM/{Relocated,Handler}: reworked Relocated class, adjusted Handler. [d2712e8c724e] <v0.6.x> * VirtualMailManager/Alias.py, VirtualMailManager/Handler.py: VMM/{Alias,Handler}: reworked Alias class, adjusted Handler class. Handler: - attribute _dbh is no longer private, the VMM/cli/Handler uses it also. - adjusted to changes in Alias and EmailAddress classes. [65a3163bd113] <v0.6.x>2010-02-09 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/EmailAddress.py: VMM/EmailAddress: reworked class EmailAddress again. The attributes domainname and localpart are now read-only. [05dd49fc3ea1] <v0.6.x> * VirtualMailManager/EmailAddress.py: VMM/EmailAddress: reworked once more. - moved EmailAddress.__chkLocalpart() -> __module__.check_localpart() - renamed EmailAddress.__chkAddress() -> EmailAddress._chk_address() - attributes domainname and localpart are no longer protected - added missing doc strings. [6c06edb5b2d2] <v0.6.x>2010-02-08 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/EmailAddress.py: VMM/EmailAddress: rework EmailAddress class. [a259bdeaab5c] <v0.6.x>2010-02-07 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Handler.py: VMM/Handler: fixed a SyntaxError. Oops [0854fb9f3bc5] <v0.6.x> * VirtualMailManager/Handler.py: VMM/Handler: __mailDirMake() add warning for skipped mailboxes. - domainInfo() removed old deprecated warning. - fixed PEP8 warnings. [db77501aeaed] <v0.6.x> * VirtualMailManager/Handler.py, VirtualMailManager/cli/Handler.py: VMM/{,cli/}Handler: reverted most of cs cf1b5f22dbd2 added a cli handler. Moved the interactive stuff from VMM/Handler to the derived VMM/cli/Handler. [1903d4ce97d7] <v0.6.x>2010-02-06 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/cli/CliConfig.py, VirtualMailManager/cli/Config.py: moved VMM/cli/CliConfig to VMM/cli/Config [e63853509ad0] <v0.6.x> * VirtualMailManager/Config.py, VirtualMailManager/Handler.py, VirtualMailManager/__init__.py, vmm: VMM/Handler: __init__ accepts now a config_type ('default'||'cli'). - fixed syntax errors, introduced with the last commit. VMM/Config: added Config.configure() -> NotImplementedError. VMM/__init__: install gettext global, everything depends on it. [cf1b5f22dbd2] <v0.6.x> * VirtualMailManager/Config.py, VirtualMailManager/Handler.py, VirtualMailManager/__init__.py, VirtualMailManager/cli/CliConfig.py: VMM/{,cli/Cli}Config: Moved interactive stuff to new CliConfig class. Renamed Config.getsections() to Config.sections(). Small cosmetics. [38b9a9859749] <v0.6.x>2010-02-05 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Handler.py, VirtualMailManager/cli/handler.py: moved VMM/cli/handler to VMM/Handler [18757fd45e60] <v0.6.x> * VirtualMailManager/Account.py, VirtualMailManager/Alias.py, VirtualMailManager/AliasDomain.py, VirtualMailManager/Config.py, VirtualMailManager/Domain.py, VirtualMailManager/EmailAddress.py, VirtualMailManager/MailLocation.py, VirtualMailManager/Relocated.py, VirtualMailManager/Transport.py, VirtualMailManager/__init__.py, VirtualMailManager/cli/handler.py, VirtualMailManager/ext/Postconf.py, vmm: VMM/*: Moved some methods from classes to modules __init__. - Adjusted many import statements. - Small adjustments and whitespace cosmetics in Config.py [6e1ef32fbd82] <v0.6.x>2010-02-04 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/VirtualMailManager.py, VirtualMailManager/cli/handler.py: moved VMM/VMM to VMM/cli/handler [d0425225ce52] <v0.6.x>2010-02-02 Pascal Volk <neverseen@users.sourceforge.net> * vmm: vmm: reworked subcommand/arguments mapping. [eb4c73d9d0a4] <v0.6.x>2010-02-01 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/VirtualMailManager.py: VMM/VMM: Allow version/help subcommands even with missing configuration options. [84811fcc3c69] <v0.6.x> * update_config.py: update_config: do not add options w/ default values. remove config.done [866a6d679fce] <v0.6.x> * VirtualMailManager/Config.py, VirtualMailManager/VirtualMailManager.py, man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst, vmm: VMM/Config: dropped option config.done [f8279c90e99c] <v0.6.x>2010-01-30 Pascal Volk <neverseen@users.sourceforge.net> * man/de/man1/vmm.1.rst, man/de/man5/vmm.cfg.5.rst, man/man1/vmm.1.rst, man/man5/vmm.cfg.5.rst, man/substitute_links.rst, man/substitute_links_1.rst, man/substitute_links_5.rst, po/de.po: man: updated documentation … [3d09c657e9e5] <v0.6.x>2010-01-29 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py, po/de.po, po/vmm.pot: po: Quick refresh - for documentation purpose. [9480f2b15129] <v0.6.x>2010-01-26 Pascal Volk <neverseen@users.sourceforge.net> * man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst: man/{,de/}man5: added a note about how to use default settings. man/de/man5: s/Abschnitt*/Sektion*/g [ec2e1df8bb10] <v0.6.x>2010-01-25 Pascal Volk <neverseen@users.sourceforge.net> * man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5.rst, vmm.cfg: man: Added used default values to manual. [cc0d79842fdf] <v0.6.x>2010-01-24 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py, VirtualMailManager/VirtualMailManager.py, vmm: VMM/VMM: allow configure subcommand also with missing settings. Removed method VirtualMailManager.setupIsDone() VMM/Config: Config.load() added 'finally' clause. [b241272eb1bd] <v0.6.x> * VirtualMailManager/Config.py, VirtualMailManager/VirtualMailManager.py, VirtualMailManager/__init__.py, vmm: VMM/Config: reworked configuration handling. Implemented LazyConfig(RawConfigParser) and LazyConfigOption(object) Rewrote Config class: * use default values and added some validation stuff * removed attributes: __VMMsections and __changes * replaced methods __chkSections() and __chkOptions() with __chkCfg VMM/VMM: Adjusted to reworked Config class. * removed attribute __cfgSections * removed methods: cfgGetBoolean(), cfgGetInt(), cfgGetString() * added methods: cfgDget(), cfgPget(), cfgSet() VMM/__init__: added function get_unicode() vmm: Adjusted to replaced methods in VMM/VMM. [974bafa59330] <v0.6.x>2010-01-22 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py: branch merge [c0e2c7687dd3] <v0.6.x> * VirtualMailManager/Config.py: VMM/Config: Fixed error handling of missing sections in vmm.cfg. [6526072ec709] * VirtualMailManager/Config.py: VMM/Config: Fixed error handling of missing sections in vmm.cfg. [6f8ac86d1611] <v0.6.x>2010-01-18 Pascal Volk <neverseen@users.sourceforge.net> * TODO, man/de/man5/vmm.cfg.5, man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5, man/man5/vmm.cfg.5.rst: man: reworded some parts. [d9ca5c46c1fa] <v0.6.x> * man/de/man5/vmm.cfg.5, man/de/man5/vmm.cfg.5.rst, man/man5/vmm.cfg.5, man/man5/vmm.cfg.5.rst: man: updated man/{de/,}man5/vmm.cfg.5, using reStructuredText now [a72908248153] <v0.6.x>2010-01-14 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py, VirtualMailManager/VirtualMailManager.py, update_config.py, vmm, vmm.cfg: vmm.cfg: a few re-renamed configuration options. old new -------------------------------------------------- account.password_len -> account.password_length domain.force_del -> domain.force_deletion misc.base_dir -> misc.base_directory misc.dovecot_vers -> misc.dovecot_version [fd496561acc6] <v0.6.x>2010-01-13 Pascal Volk <neverseen@users.sourceforge.net> * install.sh, update_config.py, update_config_0.4.x-0.5.py, upgrade.sh: update_config.py: adjusted functions stuff to renamed settings. Finally renamed update_config_0.4.x-0.5.py to update_config.py - no more version information in the filename. *.sh: removed .svn directory exclusion from find command. [bb58aedefa3a] <v0.6.x> * VirtualMailManager/Config.py, VirtualMailManager/VirtualMailManager.py, vmm, vmm.cfg: vmm.cfg: dealt with the most overdue section/option renaming. Added new options. Details: old new ------------------------------------------------------------ domdir.mode -> domain.directory_mode domdir.delete -> domain.delete_directory domdir.base -> misc.base_dir domdir -> _section domdir deleted_ maildir.mode -> account.directory_mode maildir.diskusage -> account.disk_usage maildir.delete -> account.delete_directory misc.forcedel -> domain.force_del misc.passwdscheme -> misc.password_scheme misc.dovecotvers -> misc.dovecot_vers services.smtp -> account.smtp services.pop3 -> account.pop3 services.imap -> account.imap services.sieve -> account.sieve services -> _section services deleted_ _NEW_.random_password -> account.random_password _NEW_.password_len -> account.password_len _NEW_.auto_postmaster -> domain.auto_postmaster [b152ad5c7071] <v0.6.x>2010-01-04 Pascal Volk <neverseen@users.sourceforge.net> * INSTALL: INSTALL: Adapted pgsql configuration steps to that in the wiki. (Closes: #2922030) [7e50e4c49ed7] <v0.6.x>2010-01-02 Pascal Volk <neverseen@users.sourceforge.net> * install.sh, upgrade.sh: *.sh: Added --force option to python setup.py install call. upgrade.sh: Removed old cleanup code. [67dc18294de6] <v0.6.x> * setup.py: setup.py: Fixed a UserWarning that may occur with older Python. [1981f285f0c0] <v0.6.x> * COPYING, VirtualMailManager/Account.py, VirtualMailManager/Alias.py, VirtualMailManager/AliasDomain.py, VirtualMailManager/Config.py, VirtualMailManager/Domain.py, VirtualMailManager/EmailAddress.py, VirtualMailManager/Exceptions.py, VirtualMailManager/MailLocation.py, VirtualMailManager/Relocated.py, VirtualMailManager/Transport.py, VirtualMailManager/VirtualMailManager.py, VirtualMailManager/__init__.py, VirtualMailManager/constants/ERROR.py, VirtualMailManager/constants/EXIT.py, VirtualMailManager/constants/VERSION.py, VirtualMailManager/constants/__init__.py, VirtualMailManager/ext/Postconf.py, VirtualMailManager/ext/__init__.py, man/de/man1/vmm.1, man/de/man5/vmm.cfg.5, man/man1/vmm.1, man/man5/vmm.cfg.5, po/de.po, setup.py, update_config_0.4.x-0.5.py, vmm: Updated copyright notices to include the year 2010. Also corrected the name of the copyright holder and updated the e-mail address. [0ac9ef587769]2009-12-27 Pascal Volk <neverseen@users.sourceforge.net> * .hgtags: Removed the svn-ish tag trunk [b62aa4aabcd0]2009-10-23 Pascal Volk <neverseen@users.sourceforge.net> * create_optional_types_and_functions-dovecot-1.2.x.pgsql, create_optional_types_and_functions.pgsql, create_tables- dovecot-1.2.x.pgsql, create_tables.pgsql, pgsql /create_optional_types_and_functions-dovecot-1.2.x.pgsql, pgsql/create_optional_types_and_functions.pgsql, pgsql /create_tables-dovecot-1.2.x.pgsql, pgsql/create_tables.pgsql, pgsql/update_tables_0.4.x-0.5.pgsql, pgsql/update_tables_0.5.x_for_dovecot-1.2.x.pgsql, pgsql/update_types_and_functions_0.5.x_for_dovecot-1.2.x.pgsql, update_tables_0.4.x-0.5.pgsql, update_tables_0.5.x_for_dovecot-1.2.x.pgsql, update_types_and_functions_0.5.x_for_dovecot-1.2.x.pgsql: *.pgsql: moved to pgsql/ [639cf4003965]2009-10-22 Pascal Volk <neverseen@users.sourceforge.net> * install.sh, pgsql-relocated_maps.cf, pgsql- smtpd_sender_login_maps.cf, pgsql-transport.cf, pgsql- virtual_alias_maps.cf, pgsql-virtual_gid_maps.cf, pgsql- virtual_mailbox_domains.cf, pgsql-virtual_mailbox_maps.cf, pgsql- virtual_uid_maps.cf, postfix/pgsql-relocated_maps.cf, postfix/pgsql- smtpd_sender_login_maps.cf, postfix/pgsql-transport.cf, postfix /pgsql-virtual_alias_maps.cf, postfix/pgsql-virtual_gid_maps.cf, postfix/pgsql-virtual_mailbox_domains.cf, postfix/pgsql- virtual_mailbox_maps.cf, postfix/pgsql-virtual_uid_maps.cf, upgrade.sh: Moved Postfix PostgreSQL client configuration files into the postfix directory. [78b6b06188d3] * VirtualMailManager/VirtualMailManager.py, VirtualMailManager/constants/ERROR.py: VMM: Don't prompt endless for a password. Stop after 3rd failure. [6949f6eaf26e]2009-10-20 Pascal Volk <neverseen@users.sourceforge.net> * po/vmm.pot, vmm: vmm: plan_a_b s/address/object/ [eb3ccf9484b3] * VirtualMailManager/Account.py, VirtualMailManager/VirtualMailManager.py, po/vmm.pot, vmm: Added comments for the Translation Project. Updated PO template. [a849843115e9]2009-10-19 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/Alias.py, VirtualMailManager/AliasDomain.py, VirtualMailManager/Domain.py, VirtualMailManager/EmailAddress.py, VirtualMailManager/Relocated.py, VirtualMailManager/VirtualMailManager.py, VirtualMailManager/ext/Postconf.py, vmm: Fixed some grammar errors and typos. (Reported by Clytie Siddall) [eb866ebb9f2e]2009-10-11 Pascal Volk <neverseen@users.sourceforge.net> * po/vi.po: Added the Vietnamese translation to the repository. Many thanks to Clytie Siddall from the Translation Project for the work. [6e6488722807]2009-09-29 Pascal Volk <neverseen@users.sourceforge.net> * po/nl.po: Updated Dutch translation (translated by Erwin Poeze). [f0386ee0c7e8]2009-09-10 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/__init__.py: Ignore unsupported locale setting and silently fall back to 'C'. [3dbee02711cd]2009-09-09 Pascal Volk <neverseen@users.sourceforge.net> * .hgtags: Added tag vmm-0.5.2 for changeset 3e972996da7f [350488efe67d] * ChangeLog, NEWS, VirtualMailManager/constants/VERSION.py, setup.py: Released vmm-0.5.2 [3e972996da7f] [vmm-0.5.2]=== 0.5.2 ===2009-09-09 Pascal Volk <neverseen@users.sourceforge.net> * vmm: Improved error handling in vmm's {alias}domaininfo. [581a5680d0ef] [tip]2009-09-08 Pascal Volk <neverseen@users.sourceforge.net> * po/nl.po, setup.py: Added the Dutch translation to the repository. Many thanks to Erwin Poeze from the Translation Project for the work. [e574f5dedb60] * VirtualMailManager/Alias.py, vmm: Improved error handling in vmm's {user,alias,relocated}info. Removed some comparisons of string and Unicode. [e3fd0b67ae50]2009-09-07 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Alias.py: Alias.__init__(): Check really if the given address is not used. [a08d78344706] * VirtualMailManager/Account.py: Sort alias addresses in Account.getAliases() / vmm userinfo. [ead2a7e9f8be]2009-09-05 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/Alias.py: Small optimizations in Account.getAliases() and Alias.getInfo(). [4c6aa6c29dd7] * VirtualMailManager/VirtualMailManager.py: Code cleanup/optimization in VMM's idn2ascii() and ace2idna(). [16542519a5a8]2009-09-04 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Domain.py, vmm: Reduced the mixing/concatenating of str and unicode objects. Optimized list generation in Domain class. [28f26f7f3d8f] * VirtualMailManager/__init__.py: Small optimization in w_std()/w_err() 'avoid the dot'. [ecd6a379e523]2009-09-03 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/VirtualMailManager.py: Code cleanup/optimization in VirtualMailManager's __getSalt(). [ffac064bd728]2009-09-02 Pascal Volk <neverseen@users.sourceforge.net> * po/fr.po, setup.py: Added the French translation to the repository. Many thanks to Dimitri Duc from the Translation Project for the work. [7f6911bd11cd] * VirtualMailManager/Account.py, VirtualMailManager/Alias.py, VirtualMailManager/AliasDomain.py, VirtualMailManager/Config.py, VirtualMailManager/Domain.py, VirtualMailManager/EmailAddress.py, VirtualMailManager/Exceptions.py, VirtualMailManager/MailLocation.py, VirtualMailManager/Relocated.py, VirtualMailManager/Transport.py, VirtualMailManager/VirtualMailManager.py, VirtualMailManager/__init__.py, VirtualMailManager/ext/Postconf.py, vmm: Reorganized module import. Dropped the import of constants.VERSION, when it wasn't really needed. Centralized the import of os, re and locale in VirtualMailManager/__init__.py. Also moved w_std() and w_err() from vmm to the __init__.py. [617f27715b01]2009-09-01 Pascal Volk <neverseen@users.sourceforge.net> * vmm: Don't crash if the date format not only consists of ASCII signs. Added also the u stringprefix to translatable strings where it was missing. [fc09f657082d]2009-08-31 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py, VirtualMailManager/VirtualMailManager.py, vmm: Reorganized imports, eliminated a potential UnicodeEncodeError. Removed double definition of function w_std() in Config class. [fb61f64e6351]2009-08-25 Pascal Volk <neverseen@users.sourceforge.net> * INSTALL, UPGRADE: Updated documentation [32ad0c79a6ef] * VirtualMailManager/Account.py: Fixed a Python2.4.4 SyntaxError [6ca3d22e5dd0] * VirtualMailManager/Account.py, VirtualMailManager/Alias.py, VirtualMailManager/AliasDomain.py, VirtualMailManager/Config.py, VirtualMailManager/Domain.py, VirtualMailManager/EmailAddress.py, VirtualMailManager/MailLocation.py, VirtualMailManager/Relocated.py, VirtualMailManager/VirtualMailManager.py, VirtualMailManager/ext/Postconf.py, man/de/man1/vmm.1, man/man1/vmm.1, po/de.po, po/vmm.pot, vmm: Replaced angle quotes by quotation marks. [2d5c4745efec]2009-08-23 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/VirtualMailManager.py, po/de.po, po/vmm.pot: Added a deprecated warning for managesieve. Updated translation. [fa22bd13b4d1]2009-08-22 Pascal Volk <neverseen@users.sourceforge.net> * INSTALL, UPGRADE: Updated documentation [2b8154cc7ebe] * update_config_0.4.x-0.5.py: avoid error message if used with version 0.5.2 [9dca3e898ddb]2009-08-21 Pascal Volk <neverseen@users.sourceforge.net> * .hgignore, VirtualMailManager/Alias.py, po/de.po, po/vmm.pot: Updated translation. [4ffb50de00d5] * INSTALL, UPGRADE, VirtualMailManager/Account.py, VirtualMailManager/Config.py, VirtualMailManager/Transport.py, VirtualMailManager/VirtualMailManager.py, VirtualMailManager/constants/ERROR.py, VirtualMailManager/ext/Postconf.py: Converted VirtualMailManager and Postconf to new-style classes. A few small cleanups. [cf8116625866] * INSTALL, UPGRADE: Updated documentation [97a9f6dd954b] * update_tables_0.5.x_for_dovecot-1.2.x.pgsql: removed GRANT statement. It's mentioned in UPGRADE [3643a0777e77] * update_tables_0.5.x_for_dovecot-1.2.x.pgsql: Removed the currently not needed WHERE clause from the VIEW. [988b9a719929] * create_optional_types_and_functions-dovecot-1.2.x.pgsql, create_tables-dovecot-1.2.x.pgsql: Added create SQL scripts for Dovecot v1.2.x [68af38212ff5] * update_tables_0.5.x_for_dovecot-1.2.x.pgsql, update_types_and_functions_0.5.x_for_dovecot-1.2.x.pgsql: Added update SQL scripts for Dovecot v1.2.x [626c008a4a04]2009-08-20 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Alias.py, VirtualMailManager/AliasDomain.py, VirtualMailManager/Domain.py, VirtualMailManager/MailLocation.py, VirtualMailManager/Relocated.py: Converted to new-style class, added __slots__. [30abf0abf8f8] * VirtualMailManager/Account.py: Converted to new-style class, added __slots__, updated queries. Use the _uid attribute in queries whenever it is possible. [7ccc05774118] * VirtualMailManager/Config.py: Comments updated. [928659c8ee9f] * VirtualMailManager/VirtualMailManager.py, update_config_0.4.x-0.5.py: Small code cleanups (replaced dir+'/'+file by os.path.join()). [014335f38962]2009-08-19 Pascal Volk <neverseen@users.sourceforge.net> * update_config_0.4.x-0.5.py, upgrade.sh: Rewrote upgrade script and config update script [cf85d78486ce] * setup.py: Updated long_description, download_url and platforms. Dropped VirtualMailManager.constants.VERSION import - error-prone. [c96b5768c76d]2009-08-18 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/EmailAddress.py: Fixed a logical mistake in EmailAddress.__ne__() (not used), small code cleanups. [949c5db6447a] * VirtualMailManager/Account.py, VirtualMailManager/VirtualMailManager.py, vmm: Added sieve/managesieve switching stuff, depending on the used Dovecot version. [21f264a88ab2] * VirtualMailManager/Account.py: Fixed a libpq.OperationalError in Account.delete() Passing only the object's address string to the 'alias delete' query, not the whole EmailAddress object. [e671210b04b8]2009-08-17 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/Config.py, VirtualMailManager/VirtualMailManager.py, man/de/man1/vmm.1, man/de/man5/vmm.cfg.5, man/man1/vmm.1, man/man5/vmm.cfg.5, vmm, vmm.cfg: Config: renamed services.managesieve to services.sieve, added misc.dovecotvers [e35755191ff3] * VirtualMailManager/Config.py: Hopefully the final UnicodeDecodeError fix for the Config class Added a global w_std() function and replaced all print statements. [d1f345f91e1c]2009-08-16 Pascal Volk <neverseen@users.sourceforge.net> * ChangeLog: Added the essential changes since vmm-0.4. Partly reformatted. [50ff50f5055e]2009-08-14 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Domain.py, VirtualMailManager/Transport.py: Transport: converted to new-style class; Domain: query reduction VirtualMailManager/Transport.py: * added: __slots__ * implemented: __eq__(), __ne__() and __str__() VirtualMailManager/Domain.py (updateTransport()): * reduced db lookups/update [cb8b2f6a5fca] * VirtualMailManager/VirtualMailManager.py: VMM: Fixed an AttributeError, caused by the last commit. Class EmailAddress has no __dict__ anymore. [766299a8639d]2009-08-13 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/EmailAddress.py: VMM.EmailAddress: Added __slots__ aka post-sf.net-hg-update-commit [fb88585f17fe]=== 0.5.1 ===2009-08-12 Pascal Volk <neverseen@users.sourceforge.net> * .hgtags: Added tag vmm-0.5.1 for changeset dc98cc162c66 [e98a0fdf1266] * NEWS, UPGRADE, VirtualMailManager/constants/VERSION.py: Released vmm-0.5.1 [dc98cc162c66] [vmm-0.5.1] * pgsql-relocated_maps.cf, pgsql-smtpd_sender_login_maps.cf, pgsql-transport.cf, pgsql-virtual_alias_maps.cf, pgsql-virtual_gid_maps.cf, pgsql-virtual_mailbox_domains.cf, pgsql-virtual_mailbox_maps.cf, pgsql-virtual_uid_maps.cf: Set default value of hosts to localhost Updated comments 2009-08-09 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py: Replaced the last non encoded print statement. * install.sh, upgrade.sh: Do now strict POSIX compliant string comparison in expressions. Fixed a typo in upgrade.sh. * nearly all files: Removed the subversion keywords $Date$, $Id$ and $Rev$ from all files.2008-12-27 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py: Config.configure(): Eliminated another UnicodeEncodeError. * vmm.cfg: removed single quotes around bin.postconf Thanks to samfisch for reporting both bugs2008-12-23 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py: fixed parenthesis in Config.configure() * setup.py: adjusted long_description updated url to http://vmm.localdomain.org/ * vmm: fixed UnicodeDecodeError, that could occur with German locale2008-12-08 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/VirtualMailManager.py,VirtualMailManager/Config.py: Added support for variable "vmm.cfg" location in /root:/usr/local/etc:/etc=== 0.5 ===2008-11-26 Pascal Volk <neverseen@users.sourceforge.net> * NEWS: Added to repository. News (enhancements, bug fixes) for non programmers * VirtualMailManager/constants/VERSION.py: Updated version from 0.5-dev to 0.52008-09-16 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/ext/Postconf.py: Added to repository to read some Postfix settings2008-09-09 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Domain.py, vmm, VirtualMailManager/VirtualMailManager.py: Added relocated stuff2008-09-08 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/EmailAddress.py: Added to repository, to simplify/reduce address validation2008-09-01 Pascal Volk <neverseen@users.sourceforge.net> * create_optional_types_and_functions.pgsql: Added to repository, for faster database lookups2008-08-29 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/VirtualMailManager.py: Fixed DIGEST-MD5 hash generation.2008-08-23 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Exceptions.py: Fixed AttributeError in class VMMException on older Python installations. (VMMException instance has no attribute 'message')2008-08-22 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Domain.py, VirtualMailManager/AliasDomain.py VirtualMailManager/VirtualMailManager.py: did some alias domain modifications/enhancements * vmm: Implemented w_std() to write encoded output to stdout2008-08-19 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Config.py. VirtualMailManager/VirtualMailManager.py, vmm: Renamed class VMMConfig -> Config Adjusted Config import2008-08-16 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/VirtualMailManager.py, VirtualMailManager/Domain.py: Added alias domain stuff2008-08-14 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/Domain.py: adjusted to modified database layout * create_tables.pgsql, update_tables_0.4.x-0.5.pgsql: modified database layout2008-08-07 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py: Account.getInfo() added i18n stuff2008-08-06 Pascal Volk <neverseen@users.sourceforge.net> * vmm (_getOrder): Respect vmm.cfg/maildir/diskusage settings * VirtualMailManager/VirtualMailManager.py: Adds a warning if a directory not exists: VirtualMailManager.__getDiskUsage() VirtualMailManager.__maildirdelete() VirtualMailManager.__domdirdelete() Implemented: VirtualMailManager.__isdir() VirtualMailManager.cfgGetBoolean() VirtualMailManager.cfgGetInt() VirtualMailManager.cfgGetString() * po/vmm.pot, po/de.po: Updated2008-06-17 Pascal Volk <neverseen@users.sourceforge.net> * install.sh, upgrade.sh: fixed $MANDIR * vmm: removed BEL escape sequences2008-06-11 Pascal Volk <neverseen@users.sourceforge.net> * install.sh: removed verbose stuff fixed (multilingual) man pages installation stuff * man/man1/vmm1, man/man5/vmm.cfg.5: moved to sub folders2008-05-25 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/VirtualMailManager.py (VirtualMailManager): Renamed: __idn2ascii() -> idn2ascii() __ace2idna() -> ace2idna() Implemented domain_list() some small code cleanups * vmm: Implemented domain_list() some small code cleanups * VirtualMailManager/Domain.py: Implemented search()2008-05-18 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py, VirtualMailManager/Alias.py, VirtualMailManager/Config.py, VirtualMailManager/Domain.py, VirtualMailManager/MailLocation.py, VirtualMailManager/Transport.py, VirtualMailManager/VirtualMailManager.py, po/de.po, po/vmm.pot, vmm: completed gettext support2008-05-15 Pascal Volk <neverseen@users.sourceforge.net> * vmm.cfg: now vmm.cfg conforms to example in INSTALL.2008-05-13 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Alias.py, VirtualMailManager/MailLocation.py, VirtualMailManager/Account.py, VirtualMailManager/Transport.py, VirtualMailManager/VirtualMailManager.py, VirtualMailManager/Config.py, VirtualMailManager/Domain.py, vmm: Added i18n (gettext) support * install.sh: Install message objects2008-05-10 Pascal Volk <neverseen@users.sourceforge.net> * install.sh: Should now also work on all *BSDs2008-05-01 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/VirtualMailManager.py (VirtualMailManager.__chkenv()): Create the base directory with correct access mode and gid, ifit does not exist yet. * update_config_0.3.x-0.4.py, update_tables_0.3.x-0.4.py, UPGRADE, upgrade.sh: removed because vmm 0.4 was released=== 0.4-r41 ===2008-05-01 Pascal Volk <neverseen@users.sourceforge.net> * create_tables.pgsql: fixed typo in CREATE TABLE users * install.sh, upgrade.sh: Added again $PF_GID (was removed with r19)2008-04-30 Pascal Volk <neverseen@users.sourceforge.net> * UPGRADE: added hint for virtual_mailbox_domains in UPGRADE=== 0.4 ===2008-04-30 Pascal Volk <neverseen@users.sourceforge.net> * vmm.1, vmm.cfg.5: Reworded some parts. * vmm: Added function _getOrder() for a (hopefully) better structured output from the domaininfo, userinfo and getuser subcommands.2008-04-28 Pascal Volk <neverseen@users.sourceforge.net> * vmm.cfg: * update_config_0.3.x-0.4.py: * VirtualMailManager/VirtualMailManager.py: * VirtualMailManager/Config.py: Moved option 'base' from section 'maildir' to section 'domdir' * VirtualMailManager/Account.py (Account._setAddr()): Removed parameter 'address' * VirtualMailManager/Domain.py (Domain.getAccounts(), Domain.getAliases()): Added 'ORDER BY' clause in queries. + setup.py: Adjusted trove classifiers.2008-04-21 Pascal Volk <neverseen@users.sourceforge.net> * create_tables.pgsql (table users): Replaced column 'disabled' with columns smpt, pop3, imap and managesieve * create_tables.pgsql (view dovecot_password): updated view, added service columns smpt, pop3, imap and managesieve * update_tables_0.3.x-0.4.py: Updated to consider the points above mentioned * vmm.cfg: Added section »services« with options: smtp, pop3, imap and managesieve * update_config_0.3.x-0.4.py, VirtualMailManager/Config.py: Updated, to add new section »services« * VirtualMailManager/Account.py (Account._switchState(), Account.enable(), Account.disable(), Account.save(), Account.getInfo()), VirtualMailManager/VirtualMailManager.py (VirtualMailManager.user_add(), VirtualMailManager.user_disable(), VirtualMailManager.user_enable()), vmm (usage(), user_disable(), user_enable()): Modified, to fit new database structure * UPGRADE, INSTALL: Updated information * update_tables_0.4-dev_r24.py: Added temporary to the repository2008-04-18 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py: Implemented getAccountByID() * VirtualMailManager/VirtualMailManager.py (VirtualMailManager): * vmm: Implemented user_byID()2008-04-15 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py (Account.modify()): * vmm (main): Added code for modify user's transport * VirtualMailManager/VirtualMailManager.py: Implemented VirtualMailManager.user_transport() * VirtualMailManager/VirtualMailManager.py (VirtualMailManager.domain_transport()): * vmm: * VirtualMailManager/Domain.py (Domain.updateTransport()): Added code to optional force new transport for all existing accounts.2008-04-14 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/VirtualMailManager.py: Implemented: VirtualMailManager.__getSalt(), VirtualMailManager.__pwCrypt(), VirtualMailManager.__pwSHA1(), VirtualMailManager.__pwMD5() and VirtualMailManager.__pwMD4() updated VirtualMailManager.__pwhash() * VirtualMailManager/constants/VERSION.py: Set Version to 0.4-dev * INSTALL: Added hint for python-crypto, fixed user_query2008-04-10 Pascal Volk <neverseen@users.sourceforge.net> * update_tables_0.3.x-0.4.py: Replaced view dovecot_user * create_tables.pgsql (VIEW: dovecot_user): Added extra field mail * UPGRADE: fixed filename, hint for view permissions and user_query * INSTALL: Replaced mail_extra_groups with mail_privileged_group, updated user_query2008-04-06 Pascal Volk <neverseen@users.sourceforge.net> * install.sh: Removed $PF_GID * INSTALL: Added hints for pyPgSQL and smtpd_recipient_restrictions * update_config_0.3.x-0.4.py: * upgrade.sh: * UPGRADE: Added to repository * VirtualMailManager/VirtualMailManager.py (VirtualMailManager.__init__): Don't call VirtualMailManager.__chkenv() if vmm is started with option configure. * VirtualMailManager/VirtualMailManager.py (VirtualMailManager.__chkenv): Added value for placeholder in error message.2008-03-05 Pascal Volk <neverseen@users.sourceforge.net> * create_tables.pgsql: Removed unneeded newlines from views dovecot_user and postfix_uid * update_tables_0.2.x-0.3.pgsql: Removed from repository * update_tables_0.3.x-0.4.py: Added to repository2008-03-04 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Alias.py: * VirtualMailManager/VirtualMailManager.py: * vmm: Now it's possible to delete an alias with a specific destination2008-03-03 Pascal Volk <neverseen@users.sourceforge.net> * pgsql-virtual_mailbox_domains.cf: Added to repository * INSTALL: fixed postfix docu2008-03-02 Pascal Volk <neverseen@users.sourceforge.net> * create_tables.pgsql: Added view vmm_domain_info * VirtualMailManager/Alias.py: Removed attribute Alias._aid Removed parameter basedir from Alias.__init__() and Alias._setAddr() * VirtualMailManager/MailLocation.py: Fixed typo in MailLocation.__init__() * VirtualMailManager/Account.py: Integrated Transport- and MailLocation-stuff Removed attributes: Account._base and Account._home * VirtualMailManager/VirtualMailManager.py: some small fixes * VirtualMailManager/Domain.py: Added Transport-stuff * vmm.cfg: Added option transport in section misc * pgsql-transport.cf: changed query for new table layout * pgsql-smtpd_sender_login_maps.cf: added missing single quote in query2008-02-02 Pascal Volk <neverseen@users.sourceforge.net> * create_tables: Renamed table maildir to maillocation Added transport id to table domains, for default transport * VirtualMailManager/Transport.py: * VirtualMailManager/MailLocation.py: Added to repository * VirtualMailManager/constants/ERROR.py: Added error codes for MailLocation and Transport classes * VirtualMailManager/Exceptions.py: Added exception classes for MailLocation and Transport2008-01-18 Pascal Volk <neverseen@users.sourceforge.net> * create_tables.pgsql: Removed unneeded sequences 'alias_id' and 'relocated_id'. Removed unneeded column 'id' from table 'alias' and 'relocated'.2008-01-15 Pascal Volk <neverseen@users.sourceforge.net> * create_tables.pgsql: Redesign of table layout, create separate tables for maildir-folder and transport. Also assign transport to users not to domains2008-01-11 Pascal Volk <neverseen@users.sourceforge.net> * vmm (usage): Fixed a syntax error.2008-01-09 Pascal Volk <neverseen@users.sourceforge.net> * install.sh: Also install docs * VirtualMailManager/Account.py: * VirtualMailManager/Alias.py: * VirtualMailManager/Config.py: * VirtualMailManager/Domain.py: * VirtualMailManager/Exceptions.py: * VirtualMailManager/VirtualMailManager.py: * setup.py: * vmm: Included global version number. * VirtualMailManager/constants/VERSION.py: Added to repository.2008-01-09 Pascal Volk <neverseen@users.sourceforge.net> * VirtualMailManager/Account.py: * VirtualMailManager/Alias.py: * VirtualMailManager/Domain.py: * VirtualMailManager/VirtualMailManager.py: * vmm: Replaced email with e-mail. Corrected opening/closing quotation marks («word» -> »word«). * VirtualMailManager/VirtualMailManager.py: Renamed VirtualMailManager.__chkEmailadress to VirtualMailManager.__chkEmailAddress. * ChangeLog: Added to repository.=== 0.3.1 ===2008-01-08 Pascal Volk <neverseen@users.sourceforge.net> * vmm (getVMM): Fixed names names of excepted errors. * VirtualMailManager/VirtualMailManager.py (VirtualMailManager.__init__): activated check for missing sections/options * vmm-0.3.1.tar.bz2: It's really bzip2 compressed. ;-)