[dovecot/core] 2335ab: push-notification: Small optimization - don't look...

GitHub noreply at github.com
Tue Apr 26 08:30:15 UTC 2016


  Branch: refs/heads/master-2.2
  Home:   https://github.com/dovecot/core
  Commit: 2335ab1f90e1e2ecdb856c0d18f5d823011c301e
      https://github.com/dovecot/core/commit/2335ab1f90e1e2ecdb856c0d18f5d823011c301e
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/plugins/push-notification/push-notification-txn-msg.c

  Log Message:
  -----------
  push-notification: Small optimization - don't lookup uidvalidity for each message.


  Commit: 2f1be1ff67f5a30a6ae3e3536f570b52a6378828
      https://github.com/dovecot/core/commit/2f1be1ff67f5a30a6ae3e3536f570b52a6378828
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-http/http-client-private.h
    M src/lib-http/http-client-request.c
    M src/lib-http/http-client.h

  Log Message:
  -----------
  lib-http: Include information about number of request attempts and its timing in response reason.

Because the reason is usually logged as part of the error string, this
causes all of the error messages to include the attempts count and how long
the requests took in total. This should make it easier to understand problems
in error logs.

http_client_request_set_preserve_exact_reason() can be used to disable
modifying the reason string. This may also apply to other reason
modifications that may be done in the future.


  Commit: de73aa2bdf45647d3d8bb00f045840f9dafc6861
      https://github.com/dovecot/core/commit/de73aa2bdf45647d3d8bb00f045840f9dafc6861
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-ssl-iostream/iostream-openssl-common.c

  Log Message:
  -----------
  lib-ssl-iostream: Return stacked errors as single combined string.

Instead of logging stacked errors as separate log lines, which don't provide
any context of what created them.


  Commit: 06c326243f9d65fd18b6fa1ca99d46c7f7113f98
      https://github.com/dovecot/core/commit/06c326243f9d65fd18b6fa1ca99d46c7f7113f98
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib/test-var-expand.c
    M src/lib/var-expand.c

  Log Message:
  -----------
  lib: var_expand() now expands %{nonexistent} to UNSUPPORTED_VARIABLE_nonexistent

Earlier it was expanded to "nonexistent}", which looked more like a bug.
This change hopefully makes it clear enough to understand when a variable isn't
supported.


  Commit: bdff78333837f45abc804ca49ad1156e8ee4066c
      https://github.com/dovecot/core/commit/bdff78333837f45abc804ca49ad1156e8ee4066c
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-fs/Makefile.am
    M src/lib-fs/fs-api-private.h
    M src/lib-fs/fs-api.c
    A src/lib-fs/fs-test.c
    A src/lib-fs/fs-test.h

  Log Message:
  -----------
  lib-fs: Added fs-test backend for helping with creation of fs-wrapper unit tests.


  Commit: 5c201395ff5bf096b341581d31b0e507aa47b2cc
      https://github.com/dovecot/core/commit/5c201395ff5bf096b341581d31b0e507aa47b2cc
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-fs/Makefile.am
    A src/lib-fs/test-fs-metawrap.c

  Log Message:
  -----------
  lib-fs: Added initial fs-metawrap unit test.


  Commit: 973c6d6d86b84541c195c01ae32778444884d401
      https://github.com/dovecot/core/commit/973c6d6d86b84541c195c01ae32778444884d401
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-fs/fs-metawrap.c

  Log Message:
  -----------
  lib-fs: fs-metawrap stat() and get_metadata(): use existing istream if possible

This may reduce reads from parent fs, but it's at least required for the
following commit.


  Commit: 412fb67b918c4511f54a621fcb20bb3130e95682
      https://github.com/dovecot/core/commit/412fb67b918c4511f54a621fcb20bb3130e95682
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/doveadm/dsync/dsync-brain-mailbox-tree.c
    M src/doveadm/dsync/dsync-mailbox-tree-sync.c
    M src/doveadm/dsync/dsync-mailbox-tree.h

  Log Message:
  -----------
  dsync: Fixed crash when rename algorithm thinks it has gone to infinite loop.

ctx->brain was NULL, so trying to access it crashed.


  Commit: 66da5866eb19271378d62facf4a1fea0059e9e72
      https://github.com/dovecot/core/commit/66da5866eb19271378d62facf4a1fea0059e9e72
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/doveadm/dsync/dsync-mailbox-tree-sync.c

  Log Message:
  -----------
  dsync: Determine better when rename-algorithm might have gotten stuck.

A hardcoded value of 100 isn't necessarily enough if there are a lot of
mailboxes with a lot of renames. Base the max count on the total number
of mailboxes on both local and remote. And just in case multiple it by 3.
Probably smaller number would be fine too.


  Commit: ff1f5155e8707fdff18f4311ce6c901a1de4e769
      https://github.com/dovecot/core/commit/ff1f5155e8707fdff18f4311ce6c901a1de4e769
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/doveadm/dsync/dsync-mailbox-tree-sync.c
    M src/doveadm/dsync/test-dsync-mailbox-tree-sync.c

  Log Message:
  -----------
  dsync: Fixed assert-crash in rename algorithm

Fixes a crash:
Panic: file dsync-mailbox-tree-sync.c: line 1308 (sync_mailbox_child_dirs): assertion failed: (!node_is_existent(local_node))


  Commit: 55a79cff0ce0d9703fd718a28d0fef2d4a0fcaea
      https://github.com/dovecot/core/commit/55a79cff0ce0d9703fd718a28d0fef2d4a0fcaea
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-mail/message-parser.c
    M src/lib-mail/test-message-parser.c

  Log Message:
  -----------
  lib-mail: Fixed handling duplicate boundary prefixes.

If inner MIME part had the same --boundary prefix as its parent(s) and
the MIME part body started with the inner --boundary prefix, we didn't yet
have it in the list of valid boundaries, so we thought that the outer
boundary was found and the MIME headers were truncated. But due to an extra
bug we still treated it as if it were the inner boundary, except the MIME
part sizes/offsets were set wrong.

This for example fixes a situation where FETCH [1.2.MIME] returns an extra
newline before the actual headers.


  Commit: 80622816d4f381c01b764f38cd32a34c7e7f8925
      https://github.com/dovecot/core/commit/80622816d4f381c01b764f38cd32a34c7e7f8925
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-mail/message-parser.c
    M src/lib-mail/test-message-parser.c

  Log Message:
  -----------
  lib-mail: Fixed inner MIME part boundary being a prefix of outer boundary.


  Commit: c6f44125b64cb29ed767fefdcb4c08ff4efe299d
      https://github.com/dovecot/core/commit/c6f44125b64cb29ed767fefdcb4c08ff4efe299d
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-mail/test-message-parser.c

  Log Message:
  -----------
  lib-mail: Improved test-message-parser further


  Commit: ed2e2ac2629955c12a3a8037412a7465266479ea
      https://github.com/dovecot/core/commit/ed2e2ac2629955c12a3a8037412a7465266479ea
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/doveadm/doveadm-auth.c

  Log Message:
  -----------
  doveadm user: Code cleanup - move field printing to its own function.

No functional changes.


  Commit: cfb90f18ea813be72db99a8e8fe9bfa4dcd50976
      https://github.com/dovecot/core/commit/cfb90f18ea813be72db99a8e8fe9bfa4dcd50976
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/doveadm/doveadm-auth.c

  Log Message:
  -----------
  doveadm user: Added -e <value> parameter to expand %variables in <value>

This allows expanding any %variable that the mail processes normally expand.
For example:

% doveadm user -e "%u's home is %h" testuser at example.com
testuser at example.com's home is /var/mail/testuser at example.com


  Commit: bfbb24b9faba009c2cb79b3a38995acf2621f49b
      https://github.com/dovecot/core/commit/bfbb24b9faba009c2cb79b3a38995acf2621f49b
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M configure.ac
    M src/Makefile.am
    A src/lib-dict-extra/Makefile.am
    A src/lib-dict-extra/dict-fs.c
    A src/lib-dict-extra/dict-register.c
    M src/lib-dict/Makefile.am
    R src/lib-dict/dict-fs.c
    R src/lib-dict/dict-register.c
    M src/lib-dovecot/Makefile.am

  Log Message:
  -----------
  Split parts of lib-dict into lib-dict-extra.

Otherwise there's a circular dependency because lib-dict/dict-fs.c depends
on lib-fs, while lib-fs/fs-dict.c depends on lib-dict. This becomes a problem
when compiling --without-shared-libs, although for some reason it works for
me while linking the Dovecot core, but not when linking external plugins.


  Commit: 2a81294e43c85d034acfb897e2532b38b9c06e7c
      https://github.com/dovecot/core/commit/2a81294e43c85d034acfb897e2532b38b9c06e7c
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/Makefile.am
    M src/lib-dict-extra/Makefile.am
    A src/lib-dict-extra/dict-ldap-settings.c
    A src/lib-dict-extra/dict-ldap-settings.h
    A src/lib-dict-extra/dict-ldap.c
    M src/lib-dict/Makefile.am
    R src/lib-dict/dict-ldap-settings.c
    R src/lib-dict/dict-ldap-settings.h
    R src/lib-dict/dict-ldap.c

  Log Message:
  -----------
  lib-dict: Moved dict-ldap to lib-dict-extra

This also allows moving lib-ldap away from LIBDOVECOT_SUBDIRS in
src/Makefile.am, which was wrong because it's not really part of
libdovecot.la.


  Commit: 4968bfaf02745ee8215e03d1effbc95bfa6cdeda
      https://github.com/dovecot/core/commit/4968bfaf02745ee8215e03d1effbc95bfa6cdeda
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M configure.ac
    M src/lib-dovecot/Makefile.am

  Log Message:
  -----------
  lib-dovecot: Avoid duplication of listing *.la in both Makefile.am and configure


  Commit: 0bbaf397a41a89d35f795b51d6e871613712b006
      https://github.com/dovecot/core/commit/0bbaf397a41a89d35f795b51d6e871613712b006
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-sql/Makefile.am
    M src/lib-sql/driver-cassandra.c

  Log Message:
  -----------
  cassandra: Added num_threads, connect_timeout and request_timeout settings.


  Commit: b7d31e7e72c591364ea7e9cf096ce8ff78db9453
      https://github.com/dovecot/core/commit/b7d31e7e72c591364ea7e9cf096ce8ff78db9453
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-fs/fs-posix.c

  Log Message:
  -----------
  fs-posix: Minor code cleanup - removed unnecessary code.

If success==TRUE, temp_path==NULL always also.


  Commit: e534a82dc63ad78d9a0aec777193c6a1433289a8
      https://github.com/dovecot/core/commit/e534a82dc63ad78d9a0aec777193c6a1433289a8
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-fs/fs-posix.c

  Log Message:
  -----------
  fs-posix: If link() fails, preserve its errno through the following unlink()


  Commit: c7ea86d2595e597f03dc1e1bae54d93a8578c8ca
      https://github.com/dovecot/core/commit/c7ea86d2595e597f03dc1e1bae54d93a8578c8ca
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-storage/mail-storage-service.c

  Log Message:
  -----------
  lib-storage: Don't use same session ID for multiple mail_storage_service_next() calls.

dsync does multiple mail_storage_service_next() calls for the same
mail_storage_service_user. This causes stats plugin to send the same
session ID to stats process, which complains about duplicates. Solved this
in a generic way by having the following mail_storage_service_next() calls
append :counter to session ID.


  Commit: 69811d9c7f9306a517a6ce5f5aca2bb9d9e74351
      https://github.com/dovecot/core/commit/69811d9c7f9306a517a6ce5f5aca2bb9d9e74351
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/doveadm/dsync/dsync-mailbox-import.c

  Log Message:
  -----------
  dsync: Improved detecting state state string.


  Commit: da0b62ea32c74994171054f9cb551dee49e122d0
      https://github.com/dovecot/core/commit/da0b62ea32c74994171054f9cb551dee49e122d0
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/doveadm/dsync/dsync-brain.c

  Log Message:
  -----------
  dsync: If full resync is requested, return empty state string.

If the state is wrong, it's better to fully resync all the mailboxes rather
than just the one where a problem was noticed.


  Commit: 7919e9560109928bd980b4c71ee4a34b51bd4ccd
      https://github.com/dovecot/core/commit/7919e9560109928bd980b4c71ee4a34b51bd4ccd
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/doveadm/dsync/dsync-brain-mailbox.c
    M src/doveadm/dsync/dsync-brain-mails.c
    M src/doveadm/dsync/dsync-mailbox-import.c
    M src/doveadm/dsync/dsync-mailbox-import.h

  Log Message:
  -----------
  dsync: If state is invalid, exit with code 2 instead of tempfail.

We'll have dsync_mailbox_import_*() just return success to everything until
_deinit() is called. The _deinit() will return a failure and set "resync
needed"-flag, which caller will know how to handle.


  Commit: 30ad986a3ff70921ba116f8a732466a25cc4691d
      https://github.com/dovecot/core/commit/30ad986a3ff70921ba116f8a732466a25cc4691d
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-mail/test-istream-header-filter.c

  Log Message:
  -----------
  lib-mail: Code cleanup to istream-header-filter unit test

The exclude_headers arrays were used in a confusing way. The X-Drop header
wasn't actually even used in the exclude_headers.


  Commit: d7524cf81328d1f16a9651a1b17b5038d53ea46d
      https://github.com/dovecot/core/commit/d7524cf81328d1f16a9651a1b17b5038d53ea46d
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-mail/istream-header-filter.c
    M src/lib-mail/test-istream-header-filter.c

  Log Message:
  -----------
  lib-mail: istream-header-filter didn't limit memory usage.

A large header was always added to hdr_buf, ignoring any max_buffer_size
limits.


  Commit: 5fdca8ef228a5dda223aeb3c4b7a51f3e533cb93
      https://github.com/dovecot/core/commit/5fdca8ef228a5dda223aeb3c4b7a51f3e533cb93
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-mail/test-istream-header-filter.c

  Log Message:
  -----------
  lib-mail: Improved istream-header-filter unit test.

Existing code already assumes that the callback is called for all the header
data. So it's not used just for filtering headers but also parsing the
header contents. Make this assumption now explicit as a unit test.


  Commit: ad09af2c9157fbb20c5d2e588f1fac61d87b1b44
      https://github.com/dovecot/core/commit/ad09af2c9157fbb20c5d2e588f1fac61d87b1b44
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-mail/istream-header-filter.c
    M src/lib-mail/test-istream-header-filter.c

  Log Message:
  -----------
  lib-mail: More fixes to istream-header-filter with large input.

Don't assume that when reading the header the second time we'll get exactly
the same header blocks as the first time.

This commit also prevents the filter callback from switching the
matching-decision on non-first header line. This shouldn't be needed and it
could just cause confusion. (It also made it a bit easier to implement this
fix.)


  Commit: 70d210336de9e682a5f4ffd504b269c7be176fda
      https://github.com/dovecot/core/commit/70d210336de9e682a5f4ffd504b269c7be176fda
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/plugins/fts-lucene/lucene-wrapper.cc

  Log Message:
  -----------
  fts-lucene: Cleanup - move code to a separate function


  Commit: 53d07fbebf837bf3dd621f89a0b46ed528198e43
      https://github.com/dovecot/core/commit/53d07fbebf837bf3dd621f89a0b46ed528198e43
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/plugins/fts-lucene/lucene-wrapper.cc

  Log Message:
  -----------
  fts-lucene: Rescan skipped namespace roots.


  Commit: 6956285ba13bf2604ab1345df4516f5fee69bd84
      https://github.com/dovecot/core/commit/6956285ba13bf2604ab1345df4516f5fee69bd84
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-04-26 (Tue, 26 Apr 2016)

  Changed paths:
    M src/lib-sql/Makefile.am

  Log Message:
  -----------
  lib-sql: Fixed building Cassandra as plugin


Compare: https://github.com/dovecot/core/compare/11c704a3d321...6956285ba13b


More information about the dovecot-cvs mailing list