===0.6.2===2014-02-01PascalVolk<user@localhost.localdomain.org>*UPGRADE:UPGRADE:Addedanoteaboutupgradingfrom0.6.1.[19184d1265e5][tip]*doc/web/source/conf.py,doc/web/source/download.rst,doc/web/source/features.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.2.[6c369b680ab0]*update_config.py:update_config:Updatedtoworkwithversion0.6.1.[9149e0249c25]2014-01-29PascalVolk<user@localhost.localdomain.org>*VirtualMailManager/domain.py:VMM/domain:RE_DOMAIN:CheckPunycodeTLDsmoreprecise.[ad15e89a93ec]2014-01-27PascalVolk<user@localhost.localdomain.org>*COPYING,VirtualMailManager/__init__.py,VirtualMailManager/account.py,VirtualMailManager/alias.py,VirtualMailManager/aliasdomain.py,VirtualMailManager/catchall.py,VirtualMailManager/cli/__init__.py,VirtualMailManager/cli/clihelp.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,pgsql/set-permissions.py,setup.py,update_config.py,vmm:Updatedcopyrightnoticestoincludetheyear2014.[58815c004a61]*VirtualMailManager/handler.py:VMM/handler:Improveddomaininfosubcommand.CheckalllabelsforASCII-compatibleencoding,notonlythefirstone.IfsomethingisinACEformat,convertittoIDNA.[01db2457bbed]2014-01-26PascalVolk<user@localhost.localdomain.org>*README,VirtualMailManager/domain.py:VMM/domain:AcceptalsoccTLDsand'new'gTLDs.[110491a871a7]2013-08-27PascalVolk<user@localhost.localdomain.org>*doc/web/source/_templates/layout.html:doc/web:Removedlayout.htmltemplate.[4c8e15c2f01b]2013-06-08PascalVolk<user@localhost.localdomain.org>*doc/web/source/ext_references.rst,doc/web/source/howto/manage_domains.rst,doc/web/source/installation/dovecot_configuration.rst,doc/web/source/installation/postfix_configuration.rst:doc/web:AddedanoteaboutusingDovecot's LMTP with Postfix. This solves issue #1. [61aaa7a98ec0]2013-01-05 Pascal Volk <user@localhost.localdomain.org> * COPYING, VirtualMailManager/__init__.py, VirtualMailManager/account.py, VirtualMailManager/alias.py, VirtualMailManager/aliasdomain.py, VirtualMailManager/cli/__init__.py, VirtualMailManager/cli/clihelp.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 2013. [d24f094d1cb5]2012-12-09 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/account.py: VMM/account: Fixed a typo in Account.delete(). Due to a wrong placed comma `userdelete … force'endedinaTypeError.[29295afafa91]2012-11-21PascalVolk<user@localhost.localdomain.org>*po/fi.po:po:UpdatedFinnishtranslation(translatedbyJormaKarvonen).[86c2ed36aba8]2012-11-03PascalVolk<user@localhost.localdomain.org>*doc/web/source/installation/prerequisites.rst:doc/web:UpdatedOpenBSD's package names. [54172669bbae]2012-10-31 Pascal Volk <user@localhost.localdomain.org> * doc/web/source/installation/postfix_configuration.rst: doc/web: Fixed a typo. [6f1aba75b693]2012-10-30 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/password.py: VMM/password: Added scheme SCRAM-SHA-1. [8ea32fbfc9df]2012-10-28 Pascal Volk <user@localhost.localdomain.org> * Configure.Dovecot_2, doc/web/source/_static/local.conf, doc/web/source/installation/dovecot_configuration.rst: Documentation: Fixed dictionary quota URI. [152ea3e3e955] * install.sh: install.sh: Don'tfailif$SYSCONFDIRdoesn't exist. [9b4d0e2c97d5]2012-10-24 Pascal Volk <user@localhost.localdomain.org> * doc/web/source/ext_references.rst: doc/web/ext_references: Fixed URL of pg_hba.conf. [c4c687668b6d]2012-10-19 Pascal Volk <user@localhost.localdomain.org> * README, doc/web/source/download.rst: doc/web: Added links to the Debian package and the git repos. README: Added git-URL. [8009e87c7a20]2012-10-03 Pascal Volk <user@localhost.localdomain.org> * .hgtags: Added tag vmm-0.6.1 for changeset 682431c45b24 [6463832d690e] * ChangeLog, NEWS, VirtualMailManager/constants.py, setup.py: Released vmm-0.6.1 [682431c45b24] [vmm-0.6.1]=== 0.6.1 ===2012-10-03 Pascal Volk <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: Updated documentation for vmm-0.6.1. [f151defe7078] [tip]2012-10-02 martin f. krafft <madduck@madduck.net> * man/de/man1/vmm.1, man/man1/vmm.1: Add list* commands to manpages [ac27f89fad86]2012-10-01 Pascal Volk <user@localhost.localdomain.org> * UPGRADE: UPGRADE: Added procedure for updating from v0.6.0. [e1fc4a3075de]2012-09-30 Pascal Volk <user@localhost.localdomain.org> * update_config.py: update_config: Updated to work with version 0.6.0. Fixed some PEP8 related issues. [d7101e496795]2012-09-29 Pascal Volk <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: Updated and extended documentation. Updated description of subcommands aliasdelete and catchalldelete. Added description of subcommands listaddresses, listaliases, listrelocated and listusers. [e60b8ed5fd35] * VirtualMailManager/cli/clihelp.py: VMM/cli/clihelp: Added missing help messages. Added descriptions of subcommands listaddresses, listaliases, listrelocated and listusers. [d8b60e53334f]2012-09-27 Pascal Volk <user@localhost.localdomain.org> * po/nl.po: po: Updated Dutch translation (translated by Erwin Poeze). [ca882a1ff90b] * VirtualMailManager/alias.py: VMM/alias: Load destination addresses sorted. This produces sorted output for the aliasinfo subcommand. [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: Accept multiple destinations. [d8736bb80bdc]2012-09-24 Pascal Volk <user@localhost.localdomain.org> * po/nl.po: po: Updated Dutch translation (translated by Erwin Poeze). [9eecf0160c39]2012-09-23 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/cli/main.py: VMM/cli/main: Check if we have warnings before exiting. If so, print them and exit afterwards. [996bfcae49b0]2012-09-16 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/domain.py: VMM/domain: Enabled transport-validation. Validate the transport also in Domain.set_transport() and Domain.update_transport(). [5882bfdf83e8] * VirtualMailManager/account.py, VirtualMailManager/common.py: VMM: Moved transport-validation to common. [1ec3497a6733]2012-09-15 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/account.py: VMM/account: Fixed account'stransportcheck.Makesurethat'virtual:'isn't used as transport when the mailbox- format is set to mdbox or sdbox. [7b3494f1a2ef]2012-09-12 Pascal Volk <user@localhost.localdomain.org> * po/nl.po: po: Updated Dutch translation (translated by Erwin Poeze). [924535664ecc]2012-09-05 Pascal Volk <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: Fixed all PEP8 related issues. [8e9b0046bc8f]2012-09-03 Pascal Volk <user@localhost.localdomain.org> * po/vmm.pot: po: Regenerated vmm.pot [b6c4e77046b9] * VirtualMailManager/cli/clihelp.py, VirtualMailManager/cli/subcommands.py, VirtualMailManager/common.py: Added a few comments for the Translation Project. [56ec275911f2] * VirtualMailManager/catchall.py, VirtualMailManager/cli/clihelp.py, VirtualMailManager/cli/subcommands.py, VirtualMailManager/ext/postconf.py: VMM: Corrected/updated some msgids. Unified some messages and corrected a few typos. [0ed93eb8b364]2012-09-02 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Corrected username'susagestring.username's name argument is optional. [46454ff9d441] * VirtualMailManager/cli/clihelp.py, VirtualMailManager/cli/subcommands.py: VMM/cli: Activated help subcommand. Implemented Command.help_(), which reads the command'shelpmessagefromcli.clihelp.[ab97727357a4]*VirtualMailManager/handler.py:VMM/handler:Fixeduser{quota,services,transport}subcommands.Thesubcommandsuser{quota,services,transport}actuallyfailedwiththearguments'<address> domain'.ThisispartIIofchangeseta75923ce2842[b994444f7dee]*doc/web/source/howto/manage_accounts.rst:doc/web:Addedmissinguserservicesdescription.Fixedorderofsubcommandlisting.[7fdc4b2d4640]*man/man1/vmm.1:man:Typo-fix.[981f02b2d4c5]*VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:Correctedtwousagestrings.domainnote's and usernote'snoteargumentisoptional.[af88f01e5bfa]2012-09-01PascalVolk<user@localhost.localdomain.org>*VirtualMailManager/cli/subcommands.py,VirtualMailManager/common.py:VMM:Decodelocalizednumberstothecurrentencoding.ThatavoidsUnicodeDecodeErrorssincelocale.format(%d)mayreturnlocalizednumbers,whichcontainNO-BREAKSPACEasthethousandsseparator.[463b10c258d9]2012-08-28PascalVolk<user@localhost.localdomain.org>*VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:Don't mark empty strings as translatable. gettext('') returns the header entry with meta information, not the empty string. [0571f45501da] * doc/web/source/upgrade/0.5-0.6.rst: doc/web: Added description 'UpgradetoDovecot≧v1.2.beta2'. [82e722f35aab]2012-08-27 Pascal Volk <user@localhost.localdomain.org> * pgsql/dovecot_update_v1.2+.pgsql: pgsql: Added dovecot_update_v1.2+.pgsql. Use this file when you are upgrading your Dovecot installation to a version >= 1.2.beta2. [bb23693e5fc9] * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Reverted accidentally committed help() code. [c79fdce49908] * VirtualMailManager/cli/subcommands.py, pgsql/create_tables.pgsql: pgsql/create_tables.pgsql: Eliminated two unnecessary differences. Yeah, cosmetic only. [607aa5c2acc4] * pgsql/create_tables.pgsql, pgsql/update_tables_0.5.x-0.6.pgsql: pgsql: Don'tselectservice_set.ssidindovecotpassword()unconditional.Thismaycauseanemptyresult,whichwillmakeloginsimpossible.[86b967c0f1a1]*VirtualMailManager/serviceset.py:VMM/serviceset:FixedaconditionalProgrammingError.AffectsonlysetupswithDovecot<v1.2.beta2.ActuallytheSQLqueryinmethodServiceSet._load_by_serviceswasn't updated. Removed unnecessary code, which would have also produced a ProgrammingError, if it would have been correct. [cdbe200c0ecc]2012-08-23 Pascal Volk <user@localhost.localdomain.org> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Added 'missing' newline below domain notes. This patch contains also a small code cleanup and PEP8-fix. [3dc1764c23d2]2012-08-19 Pascal Volk <user@localhost.localdomain.org> * doc/web/source/howto/manage_accounts.rst: doc/web: Added the transport filed to the usertransport example. [ef384bc8fde6]2012-08-12 Pascal Volk <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: Added the 'Howto'. The reStructuredText version of vmm.1, in multiple parts. [2b165e90e225] * man/de/man1/vmm.1, man/man1/vmm.1: man/{de/}man1: A few more corrections. [9d343514b832] * man/de/man1/vmm.1, man/man1/vmm.1: man/{de/}man1: Small corrections for domaininfo'sdescription.[60907fc875f7]*man/de/man5/vmm.cfg.5,man/man5/vmm.cfg.5:man/{de/}man5:s/Wiki/Homepage/g[dcde0010cdf8]2012-08-11PascalVolk<user@localhost.localdomain.org>*man/de/man1/vmm.1,man/man1/vmm.1:man/{de/}man1:s/Wiki/Homepage/g[8767ec854084]2012-08-08martinf.krafft<madduck@debian.org>*VirtualMailManager/common.py:VMM/common:Improvesearch_addresscomplexityCheckingthedictionary(ahash)forexistenceofakeyislikelytobeO(log(n)),whilecheckingalistisO(n).Therefore,toincreaseperformance,thispatchchangesthecheckaccordingly.[cd1200d06700]2012-08-07PascalVolk<user@localhost.localdomain.org>*doc/web/source/_static/vmm.cfg:doc/web:Refreshedvmm.cfg[ffd24974ed68]*vmm.cfg:vmm.cfg:Updated/improvedcomments.[f9a2327f57a6]2012-08-07martinf.krafft<madduck@debian.org>*VirtualMailManager/common.py:Ifanaliashasmultipledestinations,multiplerecordsexist,duetothenatureofthedatabase.address_listwouldthenreturnthesamealiasmultipletimes,whichdoesnotaddanyinformation,eatsscreenspaceandispotentiallyconfusing.Therefore,weSELECTDISTINCTlyfromthealiastable.Signed-off-by:martinf.krafft<madduck@debian.org>---VirtualMailManager/common.py|2+-1filechanged,1insertion(+),1deletion(-)[a479c38931c4]*VirtualMailManager/common.py:DuetotheUNIONqueryinaddress_list,theassumptionthatthelistofgidsreceivedfromthedatabasewouldbecontinuousdoesnothold.Topreventaddressesfordomainswithmultipleentrytypesfrombeinglisted,itisnecessarytocheckthelistofdomaingidsforeveryentry.Signed-off-by:martinf.krafft<madduck@debian.org>---VirtualMailManager/common.py|4+---1filechanged,1insertion(+),3deletions(-)[605f8c115711]2012-07-29PascalVolk<user@localhost.localdomain.org>*doc/web/source/installation/dovecot_configuration.rst,doc/web/source/installation/postgresql_configuration.rst:doc/web:EmphasizedafewlinesofDovecot/PostgreSQLconfigurationfileexcerpts.[9c138471d569]*.hgignore:.hgignore:"doc/build"isnolongerrequired.[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:Addedsourceofhttp://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:MovedAPIdocumentationtodoc/api.[20141b967c0b]2012-07-22PascalVolk<user@localhost.localdomain.org>*INSTALL:INSTALL:UpdatedPostgreSQLconfigurationURL.Use${sql}and${proxysql}expressionsinthemain.cfdescription.[4f9079dd4b65]2012-07-01PascalVolk<user@localhost.localdomain.org>*README:README:Substitutedafewwords.[0be27a75776a]2012-06-30PascalVolk<user@localhost.localdomain.org>*README:README:UpdatedURLofthehgrepository@sf.net.[f9e6e0a237f0]*man/man1/vmm.1:man:Deletederroneousplacedbackslash.[9acf628bf0be]2012-06-28PascalVolk<user@localhost.localdomain.org>*.hgtags:Addedtagvmm-0.6.0forchangeset3238c58d01ae[0643c25121b5]*ChangeLog,NEWS,VirtualMailManager/constants.py,setup.py:Releasedvmm-0.6.0[3238c58d01ae][vmm-0.6.0]===0.6.0===2012-06-28PascalVolk<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:Mergedchangesfromv0.6.x(28230a8230bf).[a4aead244f75][tip]*Closev0.6.xbranch.[28230a8230bf]<v0.6.x>*vmm:vmm:Don't insert the module directory into sys.path by default. Doesn'tmakemuchsense,ifthecodeisinstalledinsidesys.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:Updatedcopyrightnoticestoincludetheyear2012.[14abdd04ddf5]<v0.6.x>*TODO:TODO:Removed"listpwschemes"entry.Wasdonewithchangeseta64c1b5e08b4[11ed67ee7ebb]<v0.6.x>*UPGRADE:UPGRADE:Updateddocumentation.[007786e58fb7]<v0.6.x>*VirtualMailManager/cli/subcommands.py,man/de/man1/vmm.1,man/man1/vmm.1:VMM/cli/subcommands:Replacedthekeyword`default' by `domain'.PatchbyMartinF.Krafft[a75923ce2842]<v0.6.x>2012-06-27PascalVolk<user@localhost.localdomain.org>*Configure.Dovecot_2,INSTALL:INSTALL:Addeddescriptionhowtocreateadditionaldove*user/group.`doveauth' user and group for the authentication process and the group `dovemail'formailrelatedDovecotprocesses.[55148bc6348e]<v0.6.x>*INSTALL:INSTALL:Updateddocumentation.[b17a9d7a59ae]<v0.6.x>*Configure.Dovecot_2,install.sh,upgrade.sh:Configure.Dovecot_2:AddedconfigurationdocumentationforDovecot_2>=2.0.[b5bb7b34e831]<v0.6.x>*VirtualMailManager/account.py,VirtualMailManager/cli/subcommands.py:VMM:ThePython2.4.xcompatibilitycommit-partIII.[b0165b7af7a3]<v0.6.x>*VirtualMailManager/account.py:VMM/account:Checktheaccount's transport only when we have a transport. [2662f4e17eb4] <v0.6.x> * VirtualMailManager/account.py, VirtualMailManager/cli/subcommands.py, VirtualMailManager/handler.py: VMM: The Python 2.4.x compatibility commit. [cc0f67f99780] <v0.6.x>2012-06-14 Pascal Volk <user@localhost.localdomain.org> * pgsql/set-permissions.py: pgsql/set-permissions.py: Extended permissions. Postfix needs read access on the postfix_gid view. Dovecot needs read permissions on both mailboxformat columns. [2fcf12fdecc2] <v0.6.x> * VirtualMailManager/handler.py: VMM/handler: Restored method Handler.domain_transport(). It went somehow lost with changeset 5806fb74130b. [1498abbb6c91] <v0.6.x>2012-05-31 Pascal Volk <user@localhost.localdomain.org> * pgsql/set-permissions.py: pgsql: Added helper script: set-permissions.py. [fbbb16476c5b] <v0.6.x>2012-04-15 martin f. krafft <madduck@madduck.net> * TODO, VirtualMailManager/cli/handler.py, VirtualMailManager/cli/subcommands.py, VirtualMailManager/common.py, VirtualMailManager/constants.py, VirtualMailManager/handler.py: Provide list{addresses,aliases,users,relocated} subcommands The patch provides the list{addresses,aliases,users,relocated} subcommands to the UI. All commands actually take the same path in the code and only one query is run with different parameters for each case. There are still two shortcomings: 1. With alias domains, the output order is not as one might want it, e.g. foo@example.org bar@example.org foo@example.com bar@example.com when it should really be foo@ twice and then bar@ twice. I have not found a way to modify the SQL accordingly. 2. The SELECT queries for Accounts, Alias and Relocated are hard- coded in common.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: escape hyphens Hyphens inside words must be spelt \- instead of just -. This patch fixes up the manpages. * * * . [a93671970617] <v0.6.x> * man/de/man1/vmm.1, man/man1/vmm.1: man: add 'catchall' to domaininfo Since the addition of catchall, the domaininfo subcommand can also take 'catchall' as a [detail] to limit the output of details to the catch-all aliases. Also, the number of catch-all destinations is now included in the simple domaininfo output. [6f2c41c3c7d6] <v0.6.x>2012-04-15 Pascal Volk <user@localhost.localdomain.org> * man/de/man1/vmm.1, man/man1/vmm.1: man: vmm1: Use `fqdn'insteadof`domain' in catchall* descriptions. Fixed a typo s/cadd/cad/. Replaced double quotes by \(dq. [107f7a3be9f5] <v0.6.x> * VirtualMailManager/cli/subcommands.py: VMM/cli/subcommands: Use the `fqdn'argumentplaceholderalsoforcatch-allsubcommands.[62f2daff853e]<v0.6.x>2012-04-15martinf.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:Fixtransport_mapsfunctionfornon-existentdomainsThepostfix_transport_mapsfunctionhadabugcausing2012-04-1517:40:22CESTLOG:statement:SELECTtransportFROMpostfix_transport_map('logcheck','domine.madduck.net');2012-04-1517:40:22CESTERROR:queryreturnednorowswhenthedomainwasnotinthedatabase.ThiswouldmakedidbeNULLandmakethequeryfail.Thispatchmovesthetidqueryuntilafteracheckfordid.IfthelatterisNULL,thefunctionRETURNs(ratherthanfails).[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:RevertcachingofdestinationinterpolationSince'destination'comesfromthetableinthequery,itcannotbecachedacrossqueries!Doh![44a808af6cf4]<v0.6.x>2012-04-15PascalVolk<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_*:Addedmissing`NOT' to `… tid DROP NOT NULL;'.[92ef34f07da3]<v0.6.x>*pgsql/create_tables-dovecot-1.2.x.pgsql,pgsql/create_tables.pgsql:pgsql:Createcolumn`note' as text. [5020c56f9388] <v0.6.x>2012-04-15 martin f. krafft <madduck@madduck.net> * VirtualMailManager/common.py: Add docstring for common.format_domain_default [79f09cdd1a21] <v0.6.x>2012-04-14 martin f. krafft <madduck@madduck.net> * man/de/man1/vmm.1, man/man1/vmm.1: Document domainnote in manpages 5806fb74130b did not contain this, so I must have forgotten it. Oops. [47254b46c361] <v0.6.x> * TODO: Remove domain/account notes from TODO [ff805bd17817] <v0.6.x> * VirtualMailManager/account.py: Include account note in getuser output Modify the getuser output to include an account note, if one is present [1b3bdce0bf87] <v0.6.x> * VirtualMailManager/cli/subcommands.py: Display formatted notes in info output If the user/domain object has an attached note, this patch makes the userinfo/domaininfo output print the note, wrapped to the terminal size. [c3b98364f03d] <v0.6.x> * .hgignore: Ignore *.egg-status build directory created by setuptools [a582f1452bc0] <v0.6.x> * man/de/man1/vmm.1, man/man1/vmm.1: Add user/domainnote commands to manpages [a8ee0328f908] <v0.6.x> * VirtualMailManager/account.py, VirtualMailManager/cli/subcommands.py, VirtualMailManager/domain.py, VirtualMailManager/handler.py: Add note field to Account/Domain and CLI [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: Modify SQL to add note field to domain_data and users [1f9ea5658627] <v0.6.x>2012-04-14 Pascal Volk <user@localhost.localdomain.org> * man/de/man1/vmm.1, man/man1/vmm.1: man: vmm.1: subcommand'snameargumentisoptionalnow.Basedonmartinf.krafft's v2 of changeset c340ba4bd544. [9a23043b0530] <v0.6.x>2012-04-14 martin f. krafft <madduck@madduck.net> * VirtualMailManager/cli/subcommands.py, VirtualMailManager/handler.py, man/de/man1/vmm.1, man/man1/vmm.1: Allow username to take no argument to erase value Once a username has been set, it could not be removed via the UI. Now, if no argument is passed to username, the value stored is replaced with NULL. [c340ba4bd544] <v0.6.x> * README: Add inheritance as a feature to README [e956ddc868c0] <v0.6.x> * VirtualMailManager/domain.py, man/de/man1/vmm.1, man/man1/vmm.1: Change 'force' argument to reset user records for tid/ssid/qid If domain{quotalimit,transport,serviceset} are run with 'force' and settings are inheritable from the domain, then rather than to copy the ID to the user table, the affected field in the user records should be set to NULL so that the domain default is used. [6a27c7529cd7] <v0.6.x> * VirtualMailManager/cli/subcommands.py, VirtualMailManager/handler.py, man/de/man1/vmm.1, man/man1/vmm.1: Change UI to accept 'default' to restore inherited values Instead of explicit values for tid/ssid/qid, the UI now accepts 'default', which removed user-pecific settings and hence causes domain defaults to be used. [2676dbf43e1c] <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. [2bb40aaef94e] <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.[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:ModifySQLupdatescripttoacceptNULLfieldsforusersThevalueNULLintheqid/ssid/tidfieldsoftheusertablemeansthatthevaluefromtheassociateddomainrecordshouldbeusedinstead.ThispatchmodifiesthePL/pgSQLfunctionsusedbyDovecotandPostfixaccordingly.[95dd123b552e]<v0.6.x>*man/de/man1/vmm.1,man/man1/vmm.1:man:Addexamplesforuserservices[916b468cf994]<v0.6.x>2012-04-14PascalVolk<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:Revertedpreviousthreechangesets(e09139525580,85517c8fde36,3acbff727626)[4b8c3f51d7da]<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.[e09139525580]<v0.6.x>*VirtualMailManager/account.py:ModifyAccountclasstohandleNULLreferencesThispatchmodifiestheAccountclasstodefertousingtheassociateddomain's tid/ssid/qid fields if the per-instance fields are None/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: 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. [3acbff727626] <v0.6.x>2012-04-14 martin f. krafft <madduck@madduck.net> * TODO: Add list* subcommands to TODO [3ffe4ee3740f] <v0.6.x> * TODO: add domain/account notes to TODO [f494a593c674] <v0.6.x>2012-04-13 martin f. krafft <madduck@madduck.net> * TODO: Add my WIP items to the TODO list [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: Cache interpolated destination Instead of running the string modification function for destination interpolation twice, store the result once and use the stored result subsequently. [75d1c0d6bb8f] <v0.6.x>2012-04-12 Pascal Volk <user@localhost.localdomain.org> * man/man1/vmm.1: man: Use example.com in catchallinfo example output. [a0a27688e616] <v0.6.x> * README: README: reStructuredText fix: ERROR/3 and WARNING/2. [b1fd6f08f369] <v0.6.x>2012-04-11 martin f. 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: Enable interpolation of alias destinations This patch modifies the virtual_alias_maps function so that the destination address is parsed for the place holders %n, %d and %=, which are replaced with the localpart, the domain or the full address with '@' replaced by '=' of the queried key. In combination with alias domains, this allows for domain-specific recipients. E.g. given example.org and its alias domain example.com, defining an alias postmaster@example.org → postmaster+%d@example.org will cause mail to postmaster@example.*com* to go to postmaster+example.*com*@example.org. [5ec2068d02af] <v0.6.x> * README: Add catch-all aliases to README/features [88466a6ba3ae] <v0.6.x>2012-04-10 martin f. krafft <madduck@madduck.net> * man/de/man1/vmm.1, man/man1/vmm.1: Add catchall subcommands to manpages [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: Include catch-all count in domaininfo output [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: Make PL/pgSQL function feed back identity for mailboxes/relocated when there are catchall destinations. Without catchall aliases, if no virtual_alias matches, the query can just return NULL and Postfix will later check mailboxes/relocated for the address to rewrite. However, since virtual aliases are handled long before mailboxes/relocated, a catchall alias would also catch mail to mailboxes and relocated addresses, which we do not want. The way to tell postfix to keep delivering is for the virtual alias map to return the search key itself (identity function). This patch changes the postfix_virtual_alias_maps Pl/pgSQL function to do exactly that, but only if there are catchall destinations defined for the domain in question — otherwise it returns NULL when no match is found. [d863a44a6353] <v0.6.x> * VirtualMailManager/catchall.py: Fix syntax errors [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: Modify virtual_alias_maps function to check mailboxes/relocated first [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: Make virtual_alias_maps function search catchall when no aliases are found [0244f1344b04] <v0.6.x> * VirtualMailManager/cli/subcommands.py, VirtualMailManager/domain.py, VirtualMailManager/handler.py: Add catchall info to domain_info output [1fa354bbdb90] <v0.6.x> * VirtualMailManager/catchall.py: Correct syntax errors [1a9247e9763f] <v0.6.x>2012-04-09 martin f. krafft <madduck@madduck.net> * VirtualMailManager/handler.py: Fixup catchall_info to return iterator, not self [18870919ec48] <v0.6.x> * VirtualMailManager/catchall.py: Correct syntax errors [2aae58cddfa9] <v0.6.x> * VirtualMailManager/cli/subcommands.py: Teach CLI about catchall* commands [fb0ffde628d6] <v0.6.x> * VirtualMailManager/handler.py: Provide catchall_* methods to the Handler class [3da8c919584f] <v0.6.x> * VirtualMailManager/catchall.py: First version of a CatchallAlias class I based the CatchallAlias class in catchall.py heavily on the Alias class, but by copy, not deriving. The two are functionally related, but the implementations are too different because CatchallAliases have no localpart. [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: Add database table for catchall destinations Catch-all aliases are stored for a domain. Since there can be multiple destinations per domain, this is done using a 1:n relation on the gid. This commit extends the SQL schema definition and also provides appropriate upgrade DDL. [492c179094c9] <v0.6.x>2012-04-08 Pascal Volk <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: Merged types and functions into the create_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: Removed VIEW-based comments from configuration files. [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: Removed most of the VIEWs. There are only two views left for now: - postfix_gid - vmm_domain_info All other views have a faster replacement: plpgsql functions. [5ccc9c6e5193] <v0.6.x>2012-04-08 martin f. krafft <madduck@madduck.net> * .hgignore: Ignore even more Debian-build-related files [23d04d1f29e8] <v0.6.x> * .hgignore: Ignore more Debian-build-related files Debian produces log and debhelper files in debian/* 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'sdistutilbuildsthepackageinto./build/,whichcanandshouldbeignoredwithrespecttotherepository.Thispatchsimplyaddstheappropriatelineto.hgignore.[2c5e2613eca8]<v0.6.x>2012-04-06PascalVolk<user@localhost.localdomain.org>*VirtualMailManager/handler.py:VMM/handler:Createdomaindirectorywithumask0022.[30365a87650d]<v0.6.x>2012-04-07martinf.krafft<madduck@madduck.net>*VirtualMailManager/domain.py:Modifyaddresscheckquerytoobtainwell-definedresultThewayinwhichUNIONdoesnotyieldthedesiredresult,because(a)UNIONmergesresultsand(b)theresultorderisundefined.Thispatchchangesthequerytoselectthecountsascolumnsandhenceprovidesawell-definedorder.[e5c2b3647971]<v0.6.x>2012-04-06PascalVolk<user@localhost.localdomain.org>*postfix/pgsql-smtpd_sender_login_maps.cf:postfix:Uncommentedthequeryinpgsql-smtpd_sender_login_maps.cf.[320531aa1280]<v0.6.x>*postfix/pgsql-transport.cf,postfix/pgsql-transport_maps.cf:postfix:Renamedpgsql-transport.cftopgsql-transport_maps.cf.Nowitmatchespgsql-${postfix-parameter}.cf.[9cdc6ef83265]<v0.6.x>2012-03-29PascalVolk<user@localhost.localdomain.org>*po/fr.po:po:UpdatedFrenchtranslation(translatedbyDimitriDuc).[e0441b07bccc]<v0.6.x>2012-03-13PascalVolk<user@localhost.localdomain.org>*po/fi.po:po:UpdatedFinnishtranslation(translatedbyJormaKarvonen).[b8d5564b4e42]<v0.6.x>2011-12-13PascalVolk<user@localhost.localdomain.org>*VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:FixedaTypeErrorinuser_info().[fb0af82ab4af]<v0.6.x>2011-12-05PascalVolk<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:Usepgsqlfunctionsinquerytemplateswherepossible.[ccdfbbb1bb01]<v0.6.x>*pgsql/create_optional_types_and_functions-dovecot-1.2.x.pgsql,pgsql/create_optional_types_and_functions.pgsql:pgsql:Updatedrequiredprivilegesforfunctiondovecotpassword.[10e9b4855173]<v0.6.x>2011-11-27PascalVolk<user@localhost.localdomain.org>*README:README:Addedsection`InstallationPrerequisites'. 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'tacceptsomething@localhostasdestination.[099de308fd98]<v0.6.x>*man/de/man1/vmm.1,man/man1/vmm.1:man1:Updatedconfigurationrelateddescriptions/examples,accordinglytocommit4ff0fa3ba0fa.[b33bdc0c3669]<v0.6.x>2011-11-12PascalVolk<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:Updatedtheauthor'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-10PascalVolk<neverseen@users.sourceforge.net>*man/de/man1/vmm.1,man/man1/vmm.1:man1:Copiednewformatted/translatedcommandoutputintotheexamples.[e321b764268e]<v0.6.x>2011-11-09PascalVolk<neverseen@users.sourceforge.net>*VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:Smallimprovementofdomaininfo'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).Markedversion()'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':oldnew------------------------------------------------------------account.imap->domain.imapaccount.pop3->domain.pop3account.sieve->domain.sieveaccount.smtp->domain.accountmisc.quota_bytes->domain.quota_bytesmisc.quota_messages->domain.quota_messagesmisc.transport->domain.transport[4ff0fa3ba0fa]<v0.6.x>*VirtualMailManager/__init__.py:VMM:Showawarningwhenaunsupportedlocalesettingwasdetected.[2019aa415dcd]<v0.6.x>*VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:Smallimprovementindomain_add().Informtheadmin,whenthepostmasteraccountwillbeauto-created.[7847f949d0a2]<v0.6.x>*VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:Fixedasmallfailureinalias_info().[b15960e9c53c]<v0.6.x>*TODO:TODO:updated…[7d27627c7fb0]<v0.6.x>*VirtualMailManager/domain.py:VMM/domain:ExtendedDomain._chk_state()tosupportbothstates.[f2934105181b]<v0.6.x>2011-11-04PascalVolk<neverseen@users.sourceforge.net>*VirtualMailManager/constants.py:VMM/constants:Clearedoutobsoleteerrorcodes.[63ae77f05088]<v0.6.x>*VirtualMailManager/account.py:VMM/account:Removedunusedimport.[2408a3cd4bea]<v0.6.x>*VirtualMailManager/maillocation.py,VirtualMailManager/quotalimit.py:VMM/{maillocation,quotalimit}:Unifiedobjectinitializationcode.SimplyraiseaValueErrorforwrongvalues(unknownIDs).[fd4aa073015f]<v0.6.x>*VirtualMailManager/errors.py,VirtualMailManager/transport.py:VMM/transport:ReworkedTransportinitialization.Setthetransportidonlyifwecouldfindatransportwiththatid.RaiseaValueErrorinsteadofatranslatableTransportError(VMMError).VMM/errors:DeletedclassTransportError,itisnolongerneeded.[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',nolonger`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'.Movedcolumns`smtp', `pop3'`imap' and `sieve'fromthe`users' table to the new `service_set'table.[9823548b2717]<v0.6.x>2011-10-26PascalVolk<neverseen@users.sourceforge.net>*update_config.py:update_config:Setdatabase.moduletopyPgSQLonlywhenpsycopg2isunavailable.[d296a020f440]<v0.6.x>*README:README:Addedcontet.[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:RemovedreStructuredTextfiles.[3ca31d080432]<v0.6.x>*man/de/man1/vmm.1,man/de/man5/vmm.cfg.5:man:Reworked/updatedGermanmanualpages.[c2543ddde9f5]<v0.6.x>2011-10-25PascalVolk<neverseen@users.sourceforge.net>*man/man1/vmm.1:man:Addedmissing`.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'sdictionary.[8394e222aba3]<v0.6.x>*VirtualMailManager/alias.py:VMM/alias:Alias._load_dests()useclassDestinationEmailAddressfordestinationaddresses,insteadofclassEmailAddress.[46c296c6e231]<v0.6.x>2011-07-31PascalVolk<neverseen@users.sourceforge.net>*VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:user_add()showonlygeneratedpasswords-notthegiven.[a43a2e20de71]<v0.6.x>2011-03-10PascalVolk<neverseen@users.sourceforge.net>*VirtualMailManager/cli/handler.py,VirtualMailManager/ext/postconf.py,VirtualMailManager/handler.py,VirtualMailManager/mailbox.py:VMM:Deletedafewunusedvariables.[33a45e4c80c4]<v0.6.x>2011-03-05PascalVolk<neverseen@users.sourceforge.net>*VirtualMailManager/network.py:VMM/network:Addednewmodulenetwork.[ff2a61e155db]<v0.6.x>2011-02-27PascalVolk<neverseen@users.sourceforge.net>*VirtualMailManager/cli/main.py,VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:Addedfunctionupdate_cmd_map().Sotheitemswillbeaddedtothecmd_mapwhengettext'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"outputalittlebit.[e5b3b225bd5b]<v0.6.x>*man/man5/vmm.cfg.5,man/man5/vmm.cfg.5.rst:man/man5:Reworked/updatedvmm.cfg.5.Removedvmm.cfg.5.rst.[65687300ba19]<v0.6.x>*man/man1/vmm.1:man/man1:Smallsyntaxfixesinvmm.1.[1ca025a5ce0c]<v0.6.x>2011-02-21PascalVolk<neverseen@users.sourceforge.net>*man/man1/vmm.1,man/man1/vmm.1.rst:man/man1:Reworked/updatedvmm.1.Removedvmm.1.rst.reStructuredTextwasnicetoeditbutthegeneratedoutput…[2bc9c36c1387]<v0.6.x>2011-02-18PascalVolk<neverseen@users.sourceforge.net>*VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:UpdatealsotheRunContext's subcommand if 'planA' 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 'quotausage' from userinfo subcommand into 'quotastorage' and 'quotamessages'. [00a8c12a3da3] <v0.6.x> * VirtualMailManager/quotalimit.py: VMM/quotalimit: Don'tfailinQuotaLimit.__init__,ifwegetthedeafultmisc.quota_bytesvalue:'0'.[0512d940918f]<v0.6.x>*VirtualMailManager/common.py:VMM/common:Reworkedhuman_size()oncemore.Returnbytesw/oprefix.Usetranslatable$FOO_bibyteprefixes,e.g.,MiB.[fb22773f7a85]<v0.6.x>*VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:Addedquotalimit/usageoutputto{domain,user}infosubcommands.[3e5ed678d535]<v0.6.x>2011-02-11PascalVolk<neverseen@users.sourceforge.net>*VirtualMailManager/cli/subcommands.py:VMM/cli/subcommands:config_get:Printconfiguredmisc.quota_bytesinhumanreadableformat.[cf661a40266d]<v0.6.x>*VirtualMailManager/common.py:VMM/common:human_size()sizeargumentcanbealsoastring.Becausethedefaultvalueofmisc.quota_bytesis'0',astringinordertoacceptalsosettingslike'500M'.[7f931c1ca059]<v0.6.x>*VirtualMailManager/common.py:VMM/common:human_sizeacceptalso0assize.[0a13849243f2]<v0.6.x>*VirtualMailManager/common.py:VMM/common:Smallcodecleanupinhuman_size().[d3a3c6155879]<v0.6.x>*VirtualMailManager/common.py:VMM/common:Addedfunctionhuman_size().[fb2ba1456bc5]<v0.6.x>2011-02-10PascalVolk<neverseen@users.sourceforge.net>*VirtualMailManager/domain.py:VMM/domain:AdjustedDomain.get_info()totheupdatedvmm_domain_infoview.[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:Updatedviewvmm_domain_info.Nolongerselectdatawehavealready.[8217ddd5220d]<v0.6.x>*VirtualMailManager/account.py,VirtualMailManager/domain.py,VirtualMailManager/handler.py:VMM/{account,domain,handler}:Addedquotalimitsupport.AfewsmallmodificationsinclassAccount.[660b42391c8e]<v0.6.x>2011-02-09PascalVolk<neverseen@users.sourceforge.net>*VirtualMailManager/account.py:VMM/account:RemovedunusedmethodAccount.set_transport().[5f7e9f778b29]<v0.6.x>2011-02-08PascalVolk<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:Addedquotalimit'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}'sforeign-keyconstraintfkey_userquota_uid_users.[05dc4e1f8dff]<v0.6.x>2011-02-07PascalVolk<neverseen@users.sourceforge.net>*VirtualMailManager/mailbox.py:VMM/mailbox:Addedmissingdummytranslator(_)andcommentformethodMailbox._add_boxes.[b7854259ad74]<v0.6.x>*VirtualMailManager/quotalimit.py:VMM/quotalimit:Addednewmodulequotalimittotherepository.[0cae9989395b]<v0.6.x>2011-02-06PascalVolk<neverseen@users.sourceforge.net>*VirtualMailManager/config.py,man/de/man5/vmm.cfg.5.rst,man/man5/vmm.cfg.5.rst,vmm.cfg:VMM/config:Addedquota_bytesandquota_messagessettings.Updated…/man5/vmm.cfg.5andvmm.cfg.[d3a97f7fb98a]<v0.6.x>2011-02-04PascalVolk<neverseen@users.sourceforge.net>*VirtualMailManager/common.py:VMM/common:Addedfunctionsize_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. ;-)