2015-08-11  Timo Sirainen  <tss@iki.fi>

	* profile.conf, src/profile-parse.c, src/profile.c, src/profile.h:
	Renamed username_prefix to username_format in profile.conf This
	allows using e.g. %03n to add zero-padding.
	[61a65f9492ba] [tip]

	* src/imaptest.c, src/settings.h, src/user.c:
	Added users=n and domains=n parameters. So they're no longer
	hardcoded to 99.
	[b56a96ba4fbe]

2015-08-09  Timo Sirainen  <tss@iki.fi>

	* src/tests/fetch-binary-mime-base64, src/tests/fetch-binary-mime-qp:
	tests: Fixed BINARY tests to not use <partial> without the ".size"
	suffix. I seem to have always assumed that the .size was optional.
	[57b702d14d32]

2015-06-19  Timo Sirainen  <tss@iki.fi>

	* src/test-parser.c:
	test-parser: Allow giving full paths to test=directory. Patch by
	Bron Gondwana
	[e7465271b498]

	* src/commands.c:
	Send CRLF instead of just LF after {literal+}
	[336b3b7224b5]

2015-06-12  Timo Sirainen  <tss@iki.fi>

	* src/client.c, src/client.h, src/imaptest-lmtp.c, src/imaptest-
	lmtp.h, src/imaptest.c:
	Fixes to ctrl-c handling. We need to stop only when there are no
	IMAP and no LMTP clients. Also don't wait forever if there aren't
	actually any IMAP or LMTP clients at all at the time of ctrl-c.
	[b9210f560bf4]

	* src/profile.c:
	profile: Timeout was sometimes forgotten and nothing was happening
	afterwards.
	[17d868be5499]

2015-06-04  Timo Sirainen  <tss@iki.fi>

	* src/imaptest.c:
	imaptest: Show earlier if some commands are stalling for over 3
	secs.
	[8bbe916aa377]

	* src/test-exec.c:
	Fixed test=<dir> - we need to free users between tests to reset
	mailbox_sources. This is a bit kludgy fix. I'm still not sure what's
	the right way to handle multiple mailbox_sources.
	[b0117171bf9f]

	* src/user.c, src/user.h:
	Added users_free_all()
	[7c9641125bb3]

	* src/mailbox-source.c, src/mailbox-source.h, src/mailbox.c,
	src/user.c:
	mailbox_source refcounting fix.
	[6227ba410930]

	* src/mailbox-source.c:
	Minor cleanup
	[f689f139f12f]

2015-06-03  Timo Sirainen  <tss@iki.fi>

	* src/client.c, src/mailbox-source.c:
	Give names to iostreams.
	[c3570e2e8170]

	* src/test-exec.c:
	imaptest: Fixed test=<dir> to not complain about unexpected BYE
	[f8936aaff698]

	* src/client-state.c, src/client.c, src/client.h, src/imaptest.c,
	src/profile.c, src/profile.h, src/test-exec.c, src/user.c,
	src/user.h:
	Fixed test=<dir> to append mails from the correct source mbox.
	[f5f85d31f96b]

2015-05-24  Timo Sirainen  <tss@iki.fi>

	* src/imaptest.c:
	imaptest: If secs=n timeout triggers twice, stop immediately.
	[debe0f3ec089]

2015-05-20  Timo Sirainen  <tss@iki.fi>

	* src/profile.c:
	profile: Avoid excessive sorting of users.
	[5dab867bc39e]

2015-05-19  Timo Sirainen  <tss@iki.fi>

	* src/imaptest.c:
	Free profile timeout at deinit
	[f5cafd08d480]

	* src/profile.c, src/profile.h, src/user.c, src/user.h:
	Avoid using one timeout per user - it was using way too much CPU.
	Simply tracking the next global timestamp (practically the next
	second always) and then sorting through the users seems to be fast
	enough.
	[d370c756ee61]

	* src/user.c:
	Free user timeouts at deinit
	[563aaa0cb1d9]

2015-05-18  Timo Sirainen  <tss@iki.fi>

	* src/user.c:
	Fixed non-profile imaptest runs.
	[598e47d35cb6]

	* src/client-state.c:
	imap: Fixed unnecessary "Unexpected BYE" warnings
	[3a0affe7a5c1]

2015-05-17  Timo Sirainen  <tss@iki.fi>

	* src/user.c:
	profile: Enforce connection_max_count setting
	[1e4a071cd74d]

	* src/client.c, src/imaptest.c, src/profile.c, src/user.c, src/user.h:
	profile: Fixed rampup time handling.
	[27b5388317cb]

	* pop3-profile.conf, src/client-state.c, src/client.c, src/client.h,
	src/commands.c, src/imaptest.c, src/pop3-client.c, src/profile-
	parse.c, src/profile.c, src/profile.h, src/test-exec.c, src/user.c,
	src/user.h:
	Added login_interval setting to profile (especially for POP3 users).
	This also changes LMTP deliveries to be done to non-logged in users.
	[454f097910dd]

	* pop3-profile.conf, src/Makefile.am, src/client.c, src/client.h, src
	/imap-client.c, src/imaptest.c, src/pop3-client.c,
	src/pop3-client.h, src/profile-parse.c, src/profile.h,
	src/settings.h, src/user.c, src/user.h:
	Added POP3 client support. Currently it's expected to be used with
	the profile parameter. See the included pop3-profile.conf
	[4e96605776f0]

	* src/checkpoint.c, src/client-state.c, src/client-state.h,
	src/client.c, src/client.h, src/commands.c, src/commands.h, src
	/imap-client.c, src/imap-client.h, src/imaptest.c, src/mailbox-
	state.c, src/mailbox-state.h, src/profile.c, src/profile.h,
	src/search.c, src/search.h, src/test-exec.c, src/test-exec.h,
	src/user.c, src/user.h:
	Initial commit for splitting struct client into a generic client and
	imap_client. Allowing other protocols to be implemented later on.
	Most of the code is still very IMAP-specific, but this give a
	starting point.
	[51e5385105b7]

	* src/client.c, src/client.h:
	Removed unused code.
	[aecabb70e916]

2014-10-30  Timo Sirainen  <tss@iki.fi>

	* src/imaptest.c:
	Highlight latency lines if running on terminal.
	[4373c91b0b57]

2014-10-29  Timo Sirainen  <tss@iki.fi>

	* src/imaptest-lmtp.c:
	Fixed LMTP code to use the new lib-lda API.
	[cbfeefd0084b]

2014-09-26  Timo Sirainen  <tss@iki.fi>

	* src/profile.c:
	profile: Fixed to work with secs=n parameter
	[96b84885ccb2]

2014-09-25  Timo Sirainen  <tss@iki.fi>

	* src/imaptest.c:
	Ignore SIGPIPE instead of killing ourself.
	[a6c4c6f9bb86]

	* src/imaptest.c:
	Log some messages on Ctrl-C
	[075a865a5a0e]

	* src/tests/esearch-condstore:
	tests/esearch-condstore: We can't use ENABLE CONDSTORE in selected
	state
	[84a72b46a28c]

	* src/profile.c:
	profile: Don't go to rapid login+logout loop.
	[be8a3e460038]

2014-08-29  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	If COPY fails with NO [EXPUNGEISSUED], hide the error. Because it's
	not really an error, just expected behavior.
	[91b67d2730b1]

2014-07-10  Phil Carmody  <phil@dovecot.fi>

	* src/client-state.c:
	imap-test: client-state - balance appends and deletes If you have a
	high Dele=, then you'll delete messages way quicker than you can
	append them, and will never reach the target mailbox size.

	Similarly, if Dele= is too low, you'll sit at the target mailbox
	size and almost never actually append any new messages.

	This patch balances the number of messages deleted against the
	rarity of deletion (rarer => delete more each time), and the
	frequency of appending (rarer => don't delete as many). In order to
	bounce around the target, rather than always staying short,
	appending must be permitted to over-fill the message box. The new
	append-blocking state is 14% over the target (8/7ths), in tests, it
	never gets anywhere near that high, no matter the parametrisation.

	This will eventually hone in on the target size even in extreme
	corner cases of Appe=1 Dele=1, Appe=1 Dele=100, and App=100 Dele=1,
	as well as the default Appe=100 Dele=100.

	More noise (and therefore a wider test of the functionality) is seen
	when Dele= is very low.

	Signed-off-by: Phil Carmody <phil@dovecot.fi>
	[fcc8f4625f9a]

	* src/client-state.c:
	Revert "Improve average milliseconds/command timer calculations with
	command pipelining." This reverts changeset: 340:148a66b602dd

	It doesn't distinguish between these cases (+=start, -=stop)

	+B +A +C +D +E +F +G +H +I +J -B -C -D -E -F -G -H -I -A -J server
	time = 1*17s + 2*10s + 7*9s, average time = 10s, metric calls it 19s

	+B +A +C -B +D -C +E -D +F -E +G -F +H -G +I -H +J -I -A -J server
	time = 1*17s + 9*3s, average time =4.4s, metric calls it 19s

	Effectively long jobs (+A..-A) mask much of the information about
	what happens between their start and their end.
	[45ac65f74adc]

2014-06-02  Phil Carmody  <phil@dovecot.fi>

	* configure.ac, configure.in:
	rename configure.in to configure.ac

	Autotools want the "ac" suffix, and would previously throw up
	warnings when you do ./autogen.sh
	[5d4b518ad7d5]

2014-03-21  Teemu Huovila  <teemu.huovila@dovecot.fi>

	* src/client.c, src/client.h, src/test-exec.c:
	Enable scripted tests to run on a PREAUTH connection. PREAUTH also
	works for profile and plan based non-scripted testing, when the
	number of connecting clients does not exceed 1. Also added stricter
	banner checking.
	[70f6a022afe0]

2014-06-25  Timo Sirainen  <tss@iki.fi>

	* src/tests/esearch, src/tests/esearch-condstore,
	src/tests/esearch.mbox:
	tests: Added ESEARCH tests
	[07640a4569f9]

2014-05-26  Phil Carmody  <phil@dovecot.fi>

	* src/user.c:
	user: skip past {PLAIN} in password fields

	This lets us share dovecot passwd files and imaptest userfiles.
	[799fa0fb33cc]

2014-05-20  Timo Sirainen  <tss@iki.fi>

	* src/tests/append-binary:
	tests: append-binary should still send headers with CRLF linefeeds
	[b5efe5ea45d9]

	* src/client-state.c:
	Another "no disconnect on missing text on resp-text" change
	[3d00d597c595]

	* src/client-state.c:
	Don't disconnect if resp-text is missing the "text" part (i.e.
	missing space)
	[31448ca7a364]

2014-05-15  Timo Sirainen  <tss@iki.fi>

	* src/client.c, src/mailbox-state.c:
	Use T_BEGIN/T_END instead of t_push()/t_end() The removed
	t_push/t_pop pair was completely unnecessary.
	[5d753f478a26]

2014-05-07  Timo Sirainen  <tss@iki.fi>

	* src/tests/atoms:
	tests: Make sure server doesn't return BAD for valid atoms
	[4fc384089dce]

2014-05-05  Timo Sirainen  <tss@iki.fi>

	* src/tests/search-partial:
	tests: Updated search-partial test
	[4aa3cfe04f58]

2014-05-02  Timo Sirainen  <tss@iki.fi>

	* src/tests/id:
	tests: Added "id" test, which tests that the server can accept 30 x
	1024 bytes parameters.
	[509a70fc1ea1]

	* src/test-parser.c:
	Fixed parsing long lines from tests.
	[a30606f7d102]

2014-03-27  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	Improve average milliseconds/command timer calculations with command
	pipelining. I'm not entirely sure how correct this is, but seems to
	work..
	[148a66b602dd]

2014-03-23  Timo Sirainen  <tss@iki.fi>

	* src/client.c:
	If client gets disconnected without LOGOUT, reconnect the same user.
	This emulates the real client for example on server crash.
	[8d0315168900]

	* src/client-state.h, src/imapurl.c:
	Compiler warning fixes
	[b77468f68428]

	* src/commands.h:
	Compile fix for some OSes (at least OSX).
	[c2b96e7d2321]

2013-12-05  Timo Sirainen  <tss@iki.fi>

	* src/mailbox-state.c:
	imaptest: Another NIL fix
	[f5438a319450]

2013-11-23  Timo Sirainen  <tss@iki.fi>

	* src/profile.c:
	profile: Use more distributed values for initial command start
	times.
	[7c63941f6c03]

2013-11-19  Timo Sirainen  <tss@iki.fi>

	* src/mailbox-state.c:
	BODY[1] value is nstring, not astring.
	[8fc81f2e1470]

2013-11-16  Timo Sirainen  <tss@iki.fi>

	* src/mailbox-state.c:
	Fixed message-id=NIL in ENVELOPE
	[6c8a7fbd6574]

	* src/client.c, src/test-exec.c:
	Fixed wrong "Unexpected BYE" handling
	[078d01cda02f]

2013-11-03  Timo Sirainen  <tss@iki.fi>

	* src/test-parser.c, src/tests/nil:
	NIL fixes
	[0538bd223955]

2013-11-02  Timo Sirainen  <tss@iki.fi>

	* src/tests/nil, src/tests/nil.mbox:
	tests: Added a couple of "NIL" tests.
	[339aefff141e]

2013-10-21  Timo Sirainen  <tss@iki.fi>

	* src/user.c:
	profile: Fixed crash when trying to append a message when not logged
	in.
	[c1a5c5dea7f7]

	* profile.conf, src/profile-parse.c, src/profile.c, src/profile.h:
	profile: Added rampup_time setting
	[1bf6cff8cb1f]

	* src/client-state.c:
	Fixed crash when IDLE + APPEND were used close to each others.
	[eaf6991beadd]

	* src/client-state.c, src/client-state.h, src/commands.c,
	src/commands.h, src/imaptest-lmtp.c, src/imaptest.c:
	Show how many milliseconds commands take on average.
	[accb69b05934]

	* profile.conf, src/imaptest-lmtp.c, src/imaptest-lmtp.h, src/profile-
	parse.c, src/profile.c, src/profile.h:
	profile: Added lmtp_max_parallel_count setting.
	[1807dae5b6b3]

	* src/client-state.c, src/client-state.h, src/client.c, src/client.h,
	src/commands.c, src/imaptest-lmtp.c, src/imaptest.c, src/profile-
	parse.c, src/profile.c:
	profile updates/fixes
	[9d579e6cd398]

	* .hgignore:
	.hgignore: Added "compile" script
	[f8d8bd4eb0c9]

	* src/tests/pipeline:
	tests: Added a simple initial pipeline test. We could maybe try out
	some ambiguity handling here as well.
	[28aef026821e]

	* profile.conf, src/client.c, src/client.h, src/imaptest-lmtp.c, src
	/imaptest-lmtp.h, src/imaptest.c, src/profile-parse.c,
	src/profile.c, src/profile.h, src/user.c, src/user.h:
	profile updates
	[b143bbd00035]

2013-10-11  Timo Sirainen  <tss@iki.fi>

	* src/test-exec.c:
	Crashfix for running tests.
	[8ae5383744be]

2013-10-19  Timo Sirainen  <tss@iki.fi>

	* profile.conf, src/client-state.c, src/profile-parse.c,
	src/profile.c, src/profile.h, src/user.h:
	profile: Implemented features a bit further.
	[4b316da8896b]

2013-10-11  Timo Sirainen  <tss@iki.fi>

	* src/imaptest-lmtp.c:
	imaptest: Another crashfix to failed LMTP connect
	[2fc9fbf410c4]

	* src/imaptest-lmtp.c:
	profile: Fixed sending messages via LMTP if connection failed.
	[900144cb4a92]

	* src/profile.c:
	profile: Don't do work unless the client is idling. (Or most
	importantly, it must already be logged in.)
	[4ec03f56e053]

	* src/profile.c:
	profile: Fixed weighted randomness generation.
	[60543c769ff2]

2013-10-10  Timo Sirainen  <tss@iki.fi>

	* src/client.c, src/client.h, src/imaptest.c:
	Don't confuse hangs in LOGIN and BYE.
	[85763021565c]

2013-10-09  Timo Sirainen  <tss@iki.fi>

	* src/imaptest-lmtp.c:
	lmtp: Connect to IP address instead of doing another DNS lookup
	[809111aafc11]

	* src/profile-parse.c:
	Continuing previous commit
	[526ac61c4575]

	* Makefile.am:
	Makefile: Added profile.conf to distribution
	[ef834d543b58]

	* src/profile-parse.c:
	Don't require Dovecot API changes after all for parsing settings.
	[be71fd869339]

	* profile.conf, src/Makefile.am, src/imaptest-lmtp.c, src/imaptest-
	lmtp.h, src/profile-parse.c, src/profile.c, src/profile.h:
	profile: Deliver new mails via LMTP.
	[ce726a9e7dd4]

	* profile.conf, src/Makefile.am, src/client-state.c, src/client-
	state.h, src/client.c, src/client.h, src/commands.c, src/imaptest.c,
	src/profile-parse.c, src/profile.c, src/profile.h, src/test-exec.c,
	src/user.c, src/user.h:
	Added initial code for more real-world IMAP client testing by using
	client/user profiles. Usage: imaptest profile=profile.conf
	[80a40574b8b8]

2013-09-25  Timo Sirainen  <tss@iki.fi>

	* src/tests/fetch-body:
	fetch-body test: Check behavior with duplicate header fields.
	[cc81ee4aaee7]

2013-06-16  Timo Sirainen  <tss@iki.fi>

	* src/settings.h:
	Increased initial maximum client count to 100. Perhaps could even be
	removed? Originally this was added because Dovecot was slowly
	starting up new processes for new connections, but that was a bad
	idea for it and no longer happens.
	[ed0f37720946]

2013-05-29  Timo Sirainen  <tss@iki.fi>

	* src/imaptest.c, src/test-exec.c, src/test-parser.c, src/test-
	parser.h:
	test=path parameter can now also be a file instead of a directory.
	[740377ad25eb]

	* src/tests/urlauth2:
	tests: Added urlauth2 to test URLFETCH as another user
	[6a7b39d9b832]

	* src/client-state.c, src/client.c, src/client.h, src/imaptest.c,
	src/settings.h, src/test-exec.c, src/test-parser.c, src/test-
	parser.h:
	Test scripts can now log in as multiple different users. The user is
	specified with a "user <connection>: <username>" header, where a
	special $user2 value is expanded to "user2" command line parameter's
	value. If the user2 parameter isn't given, tests using it will be
	skipped.

	Currently the automatic imaptest mailbox create/delete is done only
	for the first user.

	Example:

	connections: 2 user 2: $user2 state: auth

	1 ok create $mailbox 2 "" delete $mailbox 2 ok create $mailbox

	1 ok select $mailbox 2 ok select $mailbox

	2 ok delete $mailbox
	[0a18a0e9d8d9]

	* src/test-exec.c, src/test-parser.c, src/test-parser.h:
	Added support for command pipelining in test scripts. This is done
	by prefixing the command with tag<n>, for example:

	tag1 status ${mailbox} (messages) tag2 status ${mailbox}2 (messages)
	* status ${mailbox} (messages 0)
	* status ${mailbox}2 (messages 0) tag1 ok tag2 ok
	[92d48bfa9583]

	* m4/dovecot.m4:
	dovecot.m4 updated
	[03154fe5c800]

2013-04-18  Timo Sirainen  <tss@iki.fi>

	* src/tests/uidplus:
	Added UIDPLUS test.
	[848ba9fc5820]

2013-04-04  Timo Sirainen  <tss@iki.fi>

	* src/client.c:
	Updated for new lib-ssl-iostream API
	[ae413ef7efc1]

2013-03-20  Timo Sirainen  <tss@iki.fi>

	* src/client.c:
	Delay initializing SSL context until it's actually needed.
	[06c24f17871b]

2013-02-24  Timo Sirainen  <tss@iki.fi>

	* src/checkpoint.c, src/test-exec.c, src/test-parser.c:
	Use UINT_MAX instead of -1U.
	[1613d500cd81]

2013-01-11  Timo Sirainen  <tss@iki.fi>

	* src/test-parser.c:
	assert-crashfix
	[33348574faf4]

2012-11-28  Timo Sirainen  <tss@iki.fi>

	* src/tests/fetch-binary-mime-base64, src/tests/fetch-binary-mime-qp,
	src/tests/fetch-body:
	Updated tests to remove extra CRs which are no longer needed.
	Previously they were because i_stream_next_line() stripped away
	them, but the new code doesn't use it anymore. It's also cleaner to
	assume that all newlines need to be LFs.
	[7f8f3d5c34c7]

	* src/tests/append-binary:
	Added BINARY APPEND test.
	[9274ce1e286a]

	* src/commands.c, src/commands.h, src/test-exec.c, src/test-parser.c,
	src/test-parser.h:
	Allow NULs in IMAP commands.
	[a01a31b4cacd]

2012-10-23  Timo Sirainen  <tss@iki.fi>

	* src/test-exec.c:
	Added $user, $username and $domain variables already used by urlauth
	tests.
	[62ac822588f0]

	* src/tests/listext:
	listext test updated
	[07a05a60d816]

	* src/tests/urlauth, src/tests/urlauth-binary, src/tests/urlauth-
	binary.mbox:
	Added small URLAUTH and URLAUTH=BINARY tests.
	[437922399de7]

2012-10-13  Timo Sirainen  <tss@iki.fi>

	* src/client.c:
	Removed ssl-iostream specific input kludge. This is no longer needed
	with the new ssl-iostream code.
	[026ca55323d3]

2012-10-12  Timo Sirainen  <tss@iki.fi>

	* src/mailbox.c, src/settings.h:
	Updated to lastest Dovecot v2.2 API changes.
	[21fded1385a4]

2012-09-02  Timo Sirainen  <tss@iki.fi>

	* src/tests/catenate-multiappend:
	catenate-multiappend: Don't test what happens when saving only
	header. With Dovecot there's one LF difference between mbox format
	and others, which isn't really relevant to this test.
	[d6efca1d4f68]

	* src/client.c:
	Don't crash if we can't connect to server.
	[33ed8dcb0770]

2012-08-31  Timo Sirainen  <tss@iki.fi>

	* src/test-exec.c:
	Write failed tests to stderr, not to stdout.
	[7322fc53b0ac]

	* src/tests/catenate, src/tests/catenate-multiappend:
	Changed tests to always end mails with LF. Dovecot's mbox format at
	least has this limitation, and there's really no good reason to test
	against it.
	[78116a036c3f]

	* src/Makefile.am, src/client.c, src/imapurl.c, src/imapurl.h, src
	/test-exec.c, src/tests/catenate, src/tests/catenate-multiappend:
	Use $mailbox_url for in mailbox URLs.
	[84762660fcac]

2012-08-29  Timo Sirainen  <tss@iki.fi>

	* src/tests/catenate:
	CATENATE test update with empty URL part
	[2c02b48c506a]

	* src/test-parser.c:
	tests: Fixed handling APPEND literal body check
	[9b18cd1e6e73]

	* src/tests/append, src/tests/catenate, src/tests/catenate-
	multiappend:
	Added CATENATE tests. Check [TRYCREATE] for APPEND.
	[b98aa1b41481]

	* src/test-exec.c, src/test-parser.c, src/test-parser.h:
	tests: Support APPENDs with the actual message body parameter.
	[f7dce257fc41]

	* src/commands.c:
	Added better support for sending commands with literals. Although
	still works only with LITERAL+
	[d18a1b646f7a]

	* src/client.c:
	Client deinit didn't do things in proper order.
	[9f2b760b7794]

	* src/client-state.c, src/client.c, src/client.h, src/commands.c:
	Use iostream-rawlog to provide better working rawlogs.
	[e7b1c65b3734]

2012-08-20  Timo Sirainen  <tss@iki.fi>

	* src/imaptest.c:
	Another hash table API update.
	[d5bb4df232bf]

2012-08-19  Timo Sirainen  <tss@iki.fi>

	* src/client.c, src/mailbox.c:
	Updated for new Dovecot v2.2 callback/context APIs.
	[cf17152cd1ea]

	* src/checkpoint.c, src/client.c, src/client.h, src/mailbox-source.c,
	src/mailbox-source.h, src/mailbox.c, src/mailbox.h, src/test-exec.c,
	src/test-parser.h:
	Updated for new Dovecot v2.2 array API.
	[f9d256319338]

	* src/mailbox-source.c, src/mailbox.c, src/test-exec.c:
	Changed to use the new v2.2 hash_table_create() API.
	[e213706861c0]

2012-08-17  Timo Sirainen  <tss@iki.fi>

	* src/tests/fetch-body-message-rfc822-x2, src/tests/fetch-body-
	message-rfc822-x2.mbox:
	Added fetch-body-message-rfc822-x2 test
	[c5a00e1c1ab6]

	* src/tests/fetch-body-message-rfc822:
	fetch-body-message-rfc822: [1.1] is apparently valid also.
	[bfcb6b170057]

	* src/tests/fetch-body-message-rfc822-mime, src/tests/fetch-body-
	message-rfc822-mime.mbox:
	Added fetch-body-message-rfc822-mime test
	[c29f8a8672a8]

	* src/tests/fetch-body-message-rfc822, src/tests/fetch-body-message-
	rfc822.mbox:
	Added fetch-body-message-rfc822 test
	[191e7c11d02e]

2012-08-15  Timo Sirainen  <tss@iki.fi>

	* src/tests/thread-orderedsubject, src/tests/thread-
	orderedsubject.mbox, src/tests/thread-orderedsubject2, src/tests
	/thread-orderedsubject2.mbox:
	Added THREAD=ORDEREDSUBJECT tests
	[a8ec2b75e108]

	* src/tests/sort-partial:
	Fixed sort-partial test
	[72e12dcb2f6e]

	* src/tests/search-context-update, src/tests/search-context-update2,
	src/tests/search-context-update3:
	Improved CONTEXT=SEARCH tests.
	[0f328f09b2db]

2012-08-12  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c, src/client.c, src/client.h:
	Don't send APPEND output before literal +OK is received
	[33b4f8974803]

	* src/client.c:
	Fixed crash with non-SSL connections.
	[ca5d0e731d74]

	* m4/dovecot.m4, src/Makefile.am, src/client.c, src/client.h:
	Added support for SSL connections.
	[2dc8beaac2e8]

	* src/test-parser.c:
	Don't fail test if LOGOUT replies aren't received exactly as we want
	for multiple connections.
	[61a7d16f32fe]

	* src/tests/fetch-binary-mime, src/tests/fetch-binary-mime-base64,
	src/tests/fetch-binary-mime-base64.mbox, src/tests/fetch-binary-
	mime-qp, src/tests/fetch-binary-mime-qp.mbox, src/tests/fetch-
	binary-mime.mbox:
	Added FETCH BINARY/BINARY.SIZE tests.
	[c395154fd5d3]

	* src/tests/fetch-body, src/tests/fetch-body-mime, src/tests/fetch-
	body-mime.mbox:
	Updated FETCH BODY[] tests.
	[737727d24d59]

	* src/test-parser.c:
	test-parser can now handle ~{{{ binary data }}} where CRs have to be
	explicit.
	[6b831e1fc747]

	* src/client.c:
	Allow literal8 input.
	[3e84297f0eb7]

	* src/client-state.c, src/mailbox.c, src/search.c:
	Use Dovecot v2.2 API
	[92f4288d049a]

	* src/test-parser.c, src/tests/fetch-body:
	tests: Change {{{ ... }}} to literals.
	[ca79b1640ab6]

	* src/tests/move:
	move test should of course depend on MOVE capability, not
	THREAD=REFERENCES
	[3b7b2d354fa0]

	* src/tests/move, src/tests/mutf7:
	Added move and mutf7 tests
	[67e206e78717]

	* src/commands.c, src/mailbox.c:
	Fixed crash on after unselect.
	[adbc24bd3a7f]

	* src/test-exec.c:
	tests: $mailbox broke after another mailbox was selected.
	[fcfaa3e18f13]

	* src/test-exec.c:
	Test parser: Allow '_' in $variable names
	[a3da38c21b96]

2012-05-04  Timo Sirainen  <tss@iki.fi>

	* src/imaptest.c, src/mailbox-source.c:
	Don't complain about missing input files if they're not needed.
	[594df009d023]

2012-04-11  Timo Sirainen  <tss@iki.fi>

	* src/commands.c, src/mailbox.c, src/mailbox.h:
	Follow which mailbox's state we should be tracking, and clear the
	state on DELETE/RENAME.
	[0bfadf38b79f]

	* src/client.c, src/imaptest.c, src/mailbox.c, src/mailbox.h:
	Fixed mailbox tracking to work with multiple users.
	[8b929b62a6a1]

	* src/test-exec.c:
	Changed i_info()s to printf()s so that the output goes to stdout.
	[cb4b379cbbd4]

2012-01-28  Timo Sirainen  <tss@iki.fi>

	* src/client.c:
	Compile fix for non-gcc.
	[7e490e59f1ee]

2011-11-18  Timo Sirainen  <tss@iki.fi>

	* src/client.c, src/test-parser.c:
	Use Dovecot v2.1 APIs.
	[167ae7021a41]

2011-11-16  Timo Sirainen  <tss@iki.fi>

	* src/client.c, src/mailbox-state.c:
	Removed unnecessary code.
	[7b407fb3f632]

	* src/client-state.c, src/settings.h:
	Get hierarchy separator for CREATE/DELETE command from macro instead
	of hardcoded. Based on patch by Matthew Via / Rackspace.
	[dcabcf5ec3ba]

2011-06-08  Timo Sirainen  <tss@iki.fi>

	* Makefile.am:
	Makefile fix for last change.
	[9571b61c2709]

2011-06-07  Timo Sirainen  <tss@iki.fi>

	* AUTHORS, COPYING, COPYING.LGPL, COPYING.MIT:
	Changed license from LGPLv2 to MIT.
	[c2d680c3f0ac]

2011-03-26  Timo Sirainen  <tss@iki.fi>

	* m4/dovecot.m4:
	dovecot.m4 updated.
	[7989763006a4]

2010-09-21  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	Try to avoid sending too large STORE .. +FLAGS \Deleted commands.
	[4769ec15d98d]

2010-07-22  Timo Sirainen  <tss@iki.fi>

	* src/mailbox-state.c:
	Removed accidentally committed debug code.
	[03f12875cd04]

2010-06-29  Timo Sirainen  <tss@iki.fi>

	* src/mailbox-state.c:
	State tracker was still parsing Message-IDs wrong from ENVELOPE.
	[3414644d296d]

2010-06-28  Timo Sirainen  <tss@iki.fi>

	* src/imaptest.c:
	Give a better error if server isn't disconnecting after sending BYE.
	[97519d53f103]

2010-06-18  Timo Sirainen  <tss@iki.fi>

	* src/client.c:
	When using %d in username, randomly use the same user consecutively.
	This kind of emulates when a real client creates multiple
	connections.
	[e6d8bdf1ff2f]

	* src/client.c, src/imaptest.c, src/settings.h:
	If host resolves to multiple IPs, use all of them in round robin.
	[3370b9f954c8]

2010-06-17  Timo Sirainen  <tss@iki.fi>

	* src/Makefile.am:
	Fixed tarball creation.
	[26d11ac35773]

2010-06-16  Timo Sirainen  <tss@iki.fi>

	* src/mailbox-state.c:
	Fixed message state tracking.
	[f57e4ab51ea0]

	* src/tests/broken/search-intdate, src/tests/broken/search-
	intdate.mbox, src/tests/search-intdate, src/tests/search-
	intdate.mbox:
	Moved search-intdate* tests to broken/ directory, since they work
	only with EEST timezone
	[79dbccaa5773]

	* src/tests/search-header, src/tests/search-header.mbox:
	Added test for search header searching from multiple headers.
	[593cc3b421cc]

2010-06-13  Timo Sirainen  <tss@iki.fi>

	* src/Makefile.am:
	Makefile: Added fetch-body.mbox to distibution.
	[277fcd36509e]

2010-05-13  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	Fixed APPENDing for servers without LITERAL+ support.
	[07ac8694c99a]

	* src/client-state.c:
	no_tracking now doesn't complain about UIDVALIDITY changes either
	[fd42962aa314]

	* .hgignore, Makefile.am, autogen.sh, configure.in, m4/dovecot.m4:
	Distribute with dovecot.m4
	[dd875a0d3c95]

2010-04-08  Timo Sirainen  <tss@iki.fi>

	* src/Makefile.am, src/client-state.c, src/client.c, src/mailbox-
	state.c, src/search.c, src/test-exec.c, src/test-parser.c:
	Updated to build with latest v2.0.
	[b7e5a158bb0d]

	* autogen.sh, configure.in:
	configure: Use dovecot.m4.
	[f0e8e11c7954]

2010-02-20  Timo Sirainen  <tss@iki.fi>

	* src/tests/esort, src/tests/search-context-update, src/tests/search-
	context-update2:
	tests: Fixed esort and search=context tests.
	[2e1c09ad6e32]

2010-02-09  Timo Sirainen  <tss@iki.fi>

	* src/client.c:
	Don't crash if imap input line parsing fails with invalid input.
	[5198c171321e]

2010-01-24  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c, src/client.c, src/client.h, src/mailbox-state.c,
	src/search.c:
	Changed some errors to warnings.
	[a924c344820b]

	* src/client.c, src/client.h, src/test-exec.c:
	Handle disconnections better.
	[d4f3d6637fef]

	* src/client-state.c:
	Error message fix.
	[9c95010d59cd]

2009-10-22  Timo Sirainen  <tss@iki.fi>

	* src/settings.h:
	Reverted accidentally changed default username. It's now again
	getenv("USER")
	[8bd480513605]

2009-10-18  Timo Sirainen  <tss@iki.fi>

	* src/tests/sort-display-from, src/tests/sort-display-from.mbox,
	src/tests/sort-display-to, src/tests/sort-display-to.mbox:
	Added SORT=DISPLAY tests.
	[be020b016c3a]

2009-10-01  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	LOGIN: str_escape() username and password.
	[8ea4200be060]

2009-09-30  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c, src/client.c, src/client.h, src/imaptest.c,
	src/settings.h:
	imaptest: Support reading users (and password) from a file.
	[aac4528a6d4d]

	* src/client-state.c, src/imaptest.c, src/settings.h:
	Added support for master user logins.
	[a2514fcfb325]

2009-09-06  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	Give an error if resp-text is missing the text part.
	[a4d744cdd2ea]

	* src/client.c:
	Don't crash if delay is added to an already disconnected client.
	[df24dbd43e66]

2009-06-16  Timo Sirainen  <tss@iki.fi>

	* src/imaptest.c:
	Fixed signal handler to work with new API.
	[e35cab86bed6]

2009-03-30  Timo Sirainen  <tss@iki.fi>

	* src/tests/fetch-envelope, src/tests/fetch-envelope.mbox:
	Fetch envelope test: Test empty groups.
	[939fa886391a]

	* src/tests/fetch-body, src/tests/fetch-body.mbox, src/tests/fetch-
	bodystructure, src/tests/fetch-bodystructure.mbox:
	Made fetch-body* tests a bit nicer to MS Exchange.
	[3dbf2b47fde1]

2009-03-18  Timo Sirainen  <tss@iki.fi>

	* src/tests/fetch-body:
	Added FETCH HEADER.FIELDS tests.
	[30c13b33f3ce]

	* src/test-parser.c:
	Added support for reading multi-line strings from test files.
	[bfac22380e6d]

2009-02-10  Timo Sirainen  <tss@iki.fi>

	* src/Makefile.am, src/client-state.c, src/client.c, src/imap-args.c,
	src/imap-args.h, src/mailbox-state.c, src/settings.h, src/test-
	exec.c:
	imap_args_to_str() is nowadays in Dovecot's imap-util.h.
	[a62613e356b9]

2009-02-04  Timo Sirainen  <tss@iki.fi>

	* src/test-exec.c:
	Added $tag variable for tests, containing the current command's tag.
	[2407ac5b3d03]

	* src/tests/esort, src/tests/search-partial, src/tests/search-
	partial.mbox, src/tests/sort-partial, src/tests/sort-partial.mbox:
	Added ESORT and SEARCH/SORT PARTIAL tests.
	[842e953dd3da]

	* src/client.c:
	Error crashfix
	[7c9a79d9d129]

2009-01-07  Timo Sirainen  <tss@iki.fi>

	* src/tests/sort-subject, src/tests/sort-subject.mbox:
	sort-subject: Added another test from Arnt.
	[eb958cbb1fbd]

2008-12-23  Timo Sirainen  <tss@iki.fi>

	* src/imaptest.c, src/mailbox-source.c, src/mailbox-state.c,
	src/mailbox.c, src/test-exec.c:
	hash_*() was renamed to hash_table_*(). Updated.
	[cdcef9580993]

2008-11-15  Timo Sirainen  <tss@iki.fi>

	* src/tests/expunge2:
	tests: Make sure FETCH, STORE or SEARCH doesn't trigger EXPUNGE
	replies.
	[7b0948edd2fe]

	* src/tests/search-sets:
	search-sets: Fix to previous change.
	[d85add774e00]

	* src/client.c, src/client.h, src/test-exec.c:
	tests: Fixed testing with servers that send untagged events
	immediately to clients.
	[daeb210532fa]

	* src/test-parser.c:
	tests: Send LOGOUT command from to all connections.
	[e14f601128fe]

	* src/tests/search-sets:
	search-sets test was supposed to test SEARCH UID, not SEARCH msn.
	[baa37f181802]

2008-11-01  Timo Sirainen  <tss@iki.fi>

	* src/tests/search-sets:
	Test for UID SEARCH n:4294967295
	[40ec4c124882]

2008-10-24  Timo Sirainen  <tss@iki.fi>

	* src/tests/uidvalidity-rename:
	Added a new test: Verify that RENAME doesn't break UIDVALIDITY.
	[1cc90b464d17]

	* src/test-exec.c, src/test-parser.c:
	Send and wait reply for LOGOUT command between tests.
	[1b91d7c590c8]

	* src/tests/sort-subject, src/tests/sort-subject.mbox:
	Added a new SORT SUBJECT test.
	[1896d495241f]

2008-10-23  Timo Sirainen  <tss@iki.fi>

	* src/tests/fetch-bodystructure, src/tests/fetch-bodystructure.mbox:
	Added fetch FETCH BODY test.
	[df0ee09d6e2f]

2008-10-11  Timo Sirainen  <tss@iki.fi>

	* src/tests/uidvalidity:
	Added test to verify that UIDVALIDITY changes if mailbox is
	recreated.
	[71e6d490a722]

2008-09-24  Timo Sirainen  <tss@iki.fi>

	* src/imaptest.c:
	Don't allow to use % in username unless no_tracking is set.
	[98757731fa3a]

2008-09-20  Timo Sirainen  <tss@iki.fi>

	* src/tests/list, src/tests/subscribe:
	LIST "" "" tests: Don't require the root parameter to be "".
	[ca5b7cf70a20]

	* src/test-exec.c:
	tests: Don't match the first untagged replies to internal LIST
	handlers.
	[9b36a909a23a]

	* src/test-exec.c:
	Show number of failed/tested commands separated to base and
	extensions.
	[72699a19ebcc]

2008-09-18  Timo Sirainen  <tss@iki.fi>

	* src/client.c:
	Changed default rawlog creation mode to 0644.
	[243e5e207df7]

2008-09-05  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c, src/client.c:
	disconnect_quit: Don't quit if we disconnected due to LOGOUT
	command.
	[1c0340ee7807]

	* src/tests/search-sets:
	search-sets: Commented out some potentially illegal tests.
	[ce4210e9d4fe]

	* src/tests/search-addresses, src/tests/search-addresses.mbox,
	src/tests/sort-subject, src/tests/sort-subject.mbox:
	A few more tests by Arnt Gulbrandsen.
	[c45c5bdbc4b4]

	* src/tests/fetch-envelope, src/tests/fetch-envelope.mbox:
	fetch-envelope test: Changed dates to be two-digits to work around
	aox differences.
	[22bc28f4b916]

2008-09-04  Timo Sirainen  <tss@iki.fi>

	* src/imaptest.c:
	Make sure user parameter doesn't have %d with test=dir.
	[ddcca027d085]

2008-08-30  Timo Sirainen  <tss@iki.fi>

	* src/client.c:
	Don't crash when seeing empty THREAD replies.
	[68b675672287]

2008-08-29  Timo Sirainen  <tss@iki.fi>

	* configure.in, src/Makefile.am, src/tests/Makefile.am:
	Don't put Makefiles in src/tests/ directory.
	[b5010aa7b2ca]

2008-08-28  Timo Sirainen  <tss@iki.fi>

	* src/tests/thread8, src/tests/thread8.mbox:
	Added thread8 test
	[2f24732ec8ec]

	* configure.in, src/Makefile.am, src/tests/Makefile.am:
	Add tests directory with make dist.
	[4d37a6bb7c8b]

2008-08-24  Timo Sirainen  <tss@iki.fi>

	* src/tests/fetch-envelope, src/tests/fetch-envelope.mbox:
	Weekday was wrong in Date: headers.
	[57d1fd2e595a]

2008-07-12  Timo Sirainen  <tss@iki.fi>

	* src/checkpoint.c, src/client-state.c, src/client.c, src/commands.c,
	src/imap-args.c, src/imaptest.c, src/mailbox-source.c, src/mailbox-
	state.c, src/mailbox.c, src/search.c, src/test-exec.c, src/test-
	parser.c:
	Updated copyright comments.
	[41b2bd4c4035]

	* .hgignore, AUTHORS, COPYING, COPYING.LGPL, Makefile.am:
	Added license.
	[435887766668]

2008-06-26  Timo Sirainen  <tss@iki.fi>

	* src/mailbox-state.c:
	BODY_NIL_REPLY had too many NILs.
	[5ceb8136af97]

	* .hgignore:
	Ignore rawlogs, since they're created all the time.
	[9b464e4760bf]

	* src/tests/thread7, src/tests/thread7.mbox:
	Added another THREAD test.
	[a5f817c21b29]

2008-06-24  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	qresync: enable it after login command pipelined.
	[1a2e5cfd1c08]

2008-06-17  Timo Sirainen  <tss@iki.fi>

	* src/client.c:
	Fixed checkpointing with clients disconnecting.
	[b275971e4c19]

	* src/tests/search-addresses.mbox:
	minor mbox cleanup
	[ad6abca0b9f8]

	* src/client.c:
	qresync logging fixes
	[c079569901cc]

2008-06-13  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	Don't complain so much with Zimbra/Archiveopteryx.
	[e917a6cd019f]

	* src/client.c:
	Don't crash if trying to expunge messages outside valid range.
	[30d5975ab22e]

	* src/tests/sort-addresses, src/tests/sort-addresses.mbox, src/tests
	/sort-arrival, src/tests/sort-arrival.mbox, src/tests/sort-date,
	src/tests/sort-date.mbox, src/tests/sort-size, src/tests/sort-
	size.mbox, src/tests/sort-subject, src/tests/sort-subject.mbox:
	Added test cases for SORT.
	[b54638d15c0e]

	* src/client-state.c, src/mailbox-source.c, src/mailbox-source.h:
	If APPEND sends INTERNALDATE send it using the same timezone as in
	mbox.
	[94eea173bb58]

2008-06-12  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	Don't crash in APPEND if rawlog isn't enabled.
	[d9411481f8f7]

	* src/client-state.c:
	Fixed MULTIAPPEND handling. Log a bit more when appending.
	[4c6f70e54124]

	* src/test-exec.c:
	tests: better error reporting.
	[eb442d0086a2]

	* src/client.c:
	Crashfix
	[57e4f41333aa]

2008-06-11  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c, src/mailbox.c:
	QRESYNC fixes.
	[838f5f527256]

	* src/client-state.c, src/client.c, src/client.h:
	QRESYNC: Log saved and restored states to rawlog.
	[a85d434140db]

	* src/mailbox.c, src/mailbox.h:
	Fixed QRESYNC state saving.
	[f18b81dc4ea1]

	* src/checkpoint.c:
	Removed accidentally committed debug code.
	[266b86dd12c4]

	* src/mailbox.c:
	Removed accidentally committed debug code.
	[a6824e412825]

	* src/checkpoint.c:
	checkpoint: "keywords differ" error message wrote wrong keywords.
	[050db89848d5]

	* src/mailbox-state.c, src/mailbox.c, src/mailbox.h:
	Fixes to own_msgs handling.
	[f6683e12e048]

	* src/checkpoint.c, src/client-state.c, src/client-state.h,
	src/client.c, src/client.h, src/mailbox-state.c, src/mailbox.c,
	src/mailbox.h, src/search.c, src/test-exec.c:
	Support testing SELECT QRESYNC.
	[8ec4cc9312c9]

	* src/client-state.c, src/client.c, src/client.h, src/imaptest.c, src
	/mailbox-state.c, src/settings.h:
	Added support for QRESYNC.
	[493f17dab61e]

	* src/checkpoint.c:
	Make sure that at checkpoint all modseqs match.
	[577e4b8b44a4]

	* src/mailbox-state.c:
	Make sure MODSEQ 0 isn't returned.
	[1608e46a8169]

	* src/client-state.c, src/client.h:
	If CONDSTORE capability exists, SELECT mailbox with it enabled.
	[5a63a9d7b7b1]

	* src/mailbox-state.c, src/mailbox.h:
	Added initial support for tracking modseqs.
	[ad498da9ac30]

	* src/tests/default.mbox, src/tests/search-context-update, src/tests
	/search-context-update2:
	Added CONTEXT=SEARCH test cases.
	[c0f0796d6351]

2008-05-30  Timo Sirainen  <tss@iki.fi>

	* src/imap-args.c:
	imap_args_to_str(): Don't crash if args contain literal sizes.
	[b4d3e4f1f50f]

2008-05-29  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	Add more randomness to SORT testing.
	[2c7db48fbca6]

	* src/client-state.c:
	"delay" state is now random 0..1000 milliseconds instead of 1
	second.
	[968b014bdea8]

	* src/client-state.c, src/client.h:
	Fixed a potential hang with MULTIAPPEND.
	[aa286ca0501f]

2008-05-25  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	Improved SORT stress testing.
	[1871f6da0781]

2008-05-24  Timo Sirainen  <tss@iki.fi>

	* src/tests/listext:
	Test fixes
	[8de3dc7817c1]

	* src/test-exec.c:
	Crashfix
	[d478ca1dea1a]

	* src/tests/listext, src/tests/thread5, src/tests/thread5.mbox,
	src/tests/thread6, src/tests/thread6.mbox:
	Added more tests
	[faef6f0537c0]

	* src/test-exec.c:
	Skips tests for which we don't have required capabilities.
	[942ad4fa7875]

	* src/client-state.c, src/client.c, src/client.h, src/test-exec.c:
	Keep better track of capabilities.
	[ab303697446c]

	* src/test-exec.c, src/test-parser.c:
	Added $!ban directive.
	[5733959efcda]

	* src/test-exec.c:
	Unsubscribe test mailboxes at startup.
	[a8566f4b3edc]

	* src/client.c, src/commands.h, src/test-exec.c:
	Allow tests to check for BAD replies.
	[2ecff94723a3]

2008-05-09  Timo Sirainen  <tss@iki.fi>

	* src/checkpoint.c, src/client.c, src/mailbox.c, src/mailbox.h:
	checkpoint: If thread != 0, check also that THREAD replies match.
	[d1a493b0f115]

2008-03-16  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	If FETCH-referenced messages get expunged, don't crash.
	[8e890a80887c]

2008-03-08  Timo Sirainen  <tss@iki.fi>

	* src/tests/thread, src/tests/thread.mbox:
	Fixed thread test
	[0aab570cbc4f]

	* src/search.c:
	Fixes to search conflict checking.
	[82e232ce0907]

	* src/mailbox-state.c, src/mailbox.h, src/search.c:
	Verify SEARCH TEXT/BODY.
	[fd880fea5e44]

	* src/search.c:
	Added more randomness to searches.
	[785bda3d27a3]

2008-03-07  Timo Sirainen  <tss@iki.fi>

	* src/tests/thread2, src/tests/thread2.mbox, src/tests/thread3,
	src/tests/thread3.mbox, src/tests/thread4, src/tests/thread4.mbox:
	Added more thread tests
	[0db81145953e]

	* src/tests/search-sets:
	More search tests
	[570ed69b9f8c]

2008-03-03  Timo Sirainen  <tss@iki.fi>

	* src/tests/copy, src/tests/expunge, src/tests/fetch, src/tests/fetch-
	envelope, src/tests/fetch-envelope.mbox, src/tests/list, src/tests
	/search-addresses, src/tests/search-addresses.mbox, src/tests
	/search-header, src/tests/search-sets, src/tests/store,
	src/tests/subscribe:
	Updated tests
	[cac06eb97c96]

	* src/test-exec.c:
	Quote mailbox names properly
	[b2f03d2ab784]

	* src/test-exec.c:
	Match fix
	[66ea9227f4a2]

	* src/commands.c:
	Convert literals to literal+ if possible.
	[46d59babfbed]

	* src/tests/append, src/tests/copy, src/tests/default.mbox,
	src/tests/expunge, src/tests/expunge2, src/tests/fetch, src/tests
	/fetch-body, src/tests/fetch-envelope, src/tests/fetch-
	envelope.mbox, src/tests/list, src/tests/search-addresses, src/tests
	/search-addresses.mbox, src/tests/search-body, src/tests/search-
	body.mbox, src/tests/search-date, src/tests/search-flags, src/tests
	/search-header, src/tests/search-header.mbox, src/tests/search-
	intdate, src/tests/search-intdate.mbox, src/tests/search-sets,
	src/tests/search-size, src/tests/search-size.mbox,
	src/tests/select.mbox, src/tests/store, src/tests/subscribe:
	Updated tests
	[bd81076f3733]

	* src/test-parser.c:
	Error handling fixes
	[8488cd110948]

	* src/test-exec.c:
	Allow matching a single untagged reply multiple times.
	[4cff53a08335]

	* src/test-parser.c:
	Error handling fix
	[6badd59a1abf]

	* src/test-exec.c:
	Test fix
	[ff90d138761c]

	* src/test-exec.c, src/test-parser.c, src/test-parser.h:
	Added messages header to specify how many messages to append to
	mailbox.
	[54ec59e31b40]

	* src/test-exec.c:
	Allow initial DELETE to fail
	[d56b5388a580]

	* src/test-parser.c:
	Added LSUB default directives.
	[6d4e87feec69]

	* src/test-exec.c, src/test-parser.c:
	Added $!ignore=n directive which can be used with $!noextra to allow
	a specific extra element to exist in the input list. Added
	$!ignore=\recent for FETCH FLAGS.
	[81b1024ced36]

	* src/tests/append, src/tests/copy, src/tests/list, src/tests/select,
	src/tests/subscribe:
	Don't delete mailboxes ourself, imaptest does it anyway now.
	[a82f3c48869f]

	* src/test-exec.c:
	Mailbox deletion fix and error handling improvement
	[62d2d88312f2]

	* src/test-exec.c, src/test-parser.c, src/test-parser.h:
	Added "created" and "appended" states. Make sure all imaptest-
	mailboxes are deleted at the beginning of the test.
	[e89c86668a71]

	* src/test-exec.c:
	Error handling fixes
	[9c14834966ba]

	* src/tests/append, src/tests/close, src/tests/copy,
	src/tests/default.mbox, src/tests/expunge, src/tests/expunge2,
	src/tests/list, src/tests/select, src/tests/subscribe:
	Updated tests
	[35ab03aebff9]

	* src/client-state.c:
	IBM Domino support
	[24ce803eadab]

	* src/Makefile.am, src/mailbox-source.c:
	mbox-from was moved to lib-mail.
	[5efe65224a9a]

	* src/test-exec.c, src/test-parser.c, src/test-parser.h:
	Added support for "untagged reply must not exist" lines.
	[0c9301f7b2ec]

	* src/test-exec.c:
	Variable expansion wasn't working right when the string didn't
	consist entire of the variable.
	[8dee9c3a1179]

2008-03-02  Timo Sirainen  <tss@iki.fi>

	* src/test-exec.c:
	More error handling fixes
	[cfb5da962293]

	* src/test-exec.c:
	Better error handling
	[f279c45a63ce]

	* src/client-state.c, src/client-state.h, src/imaptest.c, src/test-
	exec.c:
	Test execution fixes
	[2b0b45c35a4d]

	* src/client-state.c, src/client-state.h, src/mailbox-state.c,
	src/mailbox.h, src/test-exec.c:
	Always keep track of \Recent flags and complain if multiple sessions
	have it set.
	[1c27b9379169]

	* src/client-state.c:
	MULTIAPPEND got broken by previous commit
	[9ea8b76ba3f7]

	* src/test-exec.c:
	Removed unused code
	[d5846ea895a7]

	* src/client-state.c, src/client-state.h, src/client.c,
	src/commands.h, src/test-exec.c, src/test-parser.c, src/test-
	parser.h:
	Better test reporting. Better APPEND handling.
	[6b3354fe9452]

2008-02-29  Timo Sirainen  <tss@iki.fi>

	* src/mailbox.c:
	seq_range_array_add_range() can nowadays be used safely with large
	ranges.
	[9c13d5e7b18d]

	* src/mailbox-state.c, src/mailbox.c:
	Keyword memory handling fixes
	[a7c75773f00f]

	* src/imaptest.c, src/test-exec.c, src/test-exec.h:
	Cleanups + return with exit status 2 if any tests failed.
	[8d32af89bb0b]

	* src/tests/default.mbox, src/tests/expunge, src/tests/expunge2,
	src/tests/list, src/tests/select:
	Updated tests
	[bbb21f47a18b]

	* src/test-parser.c:
	Fixed parsing $!directives
	[7678ac8e9b1b]

	* src/test-exec.c:
	Show command tag in mismatches
	[9137422fcf44]

	* src/test-exec.c:
	Fixed expunge tracking
	[978e4201aa61]

	* src/test-exec.c:
	Better failure handling
	[03ce39806a55]

2008-02-28  Timo Sirainen  <tss@iki.fi>

	* src/test-exec.c, src/test-parser.c:
	Added support for $!extra and $!ordered directives.
	[b21213ddf5b7]

	* src/test-exec.c, src/test-parser.c:
	Added $!unordered and $!noextra directives to lists. They're also
	added by default for standard replies.
	[e17cd14fe6fa]

	* src/test-exec.c:
	Added support for sequence variables. $n now maps to sequence n at
	the beginning of the command. The sequences are updated if EXPUNGEs
	are received. If a sequence is expunged, its value changes to
	"<expunged>".
	[1ad12e48cf3e]

	* src/test-parser.c:
	Check missing command replies better.
	[6329bffb06e2]

	* src/tests/select:
	Allow DELETE to fail.
	[3feab309d419]

	* src/test-exec.c:
	Fixed ${var} handling
	[277799febc77]

	* src/tests/expunge:
	Updated
	[9ff7d892a537]

	* src/tests/default.mbox, src/tests/expunge:
	Added a simple expunge test
	[270f2ff72feb]

	* src/client.c, src/test-exec.c, src/test-parser.c:
	Fixes to handlig tests with multiple connections
	[f16c7b2ad959]

	* src/test-exec.c:
	Variable handling fixes
	[c9a01bbc30e0]

	* src/test-parser.c:
	Make sure command reply line is configured. Automatically grow
	connections if higher indexes are used in commands.
	[6607b8661002]

	* src/tests/select:
	Test also EXAMINE and verify results with STATUS.
	[d957f59bfed8]

	* src/tests/select, src/tests/select.mbox:
	Test SELECT replies.
	[5593963a2161]

	* src/test-exec.c:
	Added support for $variables in tests.
	[006bf4be3406]

	* src/Makefile.am, src/client-state.c, src/client-state.h,
	src/client.c, src/client.h, src/imaptest.c, src/mailbox-source.c,
	src/mailbox-source.h, src/mailbox.c, src/search.c, src/test-exec.c,
	src/test-exec.h, src/test-parser.c, src/test-parser.h, src/tests
	/search-date, src/tests/search-date.mbox, src/tests/search-intdate,
	src/tests/search-intdate.mbox, src/tests/thread,
	src/tests/thread.mbox:
	Added support for testing command/reply pairs from tests/ directory.
	Messages are now always sent using CR+LF linefeeds, even if mbox
	file doesn't contain them.
	[749d15a20e8b]

	* src/checkpoint.c, src/client-state.c, src/client-state.h,
	src/client.c, src/client.h, src/imaptest.c:
	Code cleanups. Allow overriding per-client command and untagged
	handling.
	[e94b0d439a04]

2008-02-27  Timo Sirainen  <tss@iki.fi>

	* src/checkpoint.c, src/client-state.c:
	Crashfixes
	[4fa8c120a41f]

	* src/checkpoint.c:
	Crashfix
	[3285d05c74fa]

2008-02-22  Timo Sirainen  <tss@iki.fi>

	* src/search.c:
	Generate a bit saner searches.
	[5fb33e6ebc7b]

2008-02-21  Timo Sirainen  <tss@iki.fi>

	* src/mailbox.c, src/mailbox.h, src/search.c:
	Support subject search checking.
	[6602147e991b]

	* src/commands.c:
	Added beginnings of trying to handle literals.
	[a7d39c66573b]

	* src/client-state.c:
	Compiler warning fix
	[08f2b7418d69]

	* src/mailbox.c, src/mailbox.h, src/search.c:
	Added SEARCH SENTBEFORE/ON/SINCE validation support.
	[0ae87a6cb06d]

2008-02-20  Timo Sirainen  <tss@iki.fi>

	* src/search.c:
	Use () around search query randomly.
	[b90132636b05]

	* src/mailbox-state.c, src/mailbox.h, src/search.c:
	Timezone fixes to SEARCH BEFORE/ON/SINCE checking.
	[17913f6af062]

	* src/Makefile.am, src/client-state.c, src/client-state.h,
	src/client.c, src/client.h, src/mailbox.c, src/mailbox.h,
	src/search.c, src/search.h:
	Initial support for building and verifying SEARCH queries.
	[5aba502cfcb5]

2008-02-17  Timo Sirainen  <tss@iki.fi>

	* src/mailbox-state.c:
	If keyword is used without it being in FLAGS, add it there instead
	of complaining about it forever.
	[bcec3b56e03c]

2008-02-16  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	Communigate Pro support for FETCHing/STOREing expunge failures
	[15b573ee0b73]

	* src/mailbox-state.c, src/mailbox.c, src/mailbox.h:
	Don't assert-crash if sequence <-> UID mapping breaks.
	[00785200bf5c]

2008-02-10  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c, src/client.c, src/client.h, src/imaptest.c,
	src/mailbox.c, src/mailbox.h:
	%u in mailbox name specifies a connection-specific mailbox to use.
	[af1c2b8712f3]

	* src/client-state.c:
	Added some #if 0 code, #if 1ing it can be used to easily test a
	specific command sequence.
	[b0a35fd77e11]

	* src/mailbox-state.c:
	Use case-insensitive comparisons for BODY, BODYSTRUCTURE and
	ENVELOPE expunged-NIL reply checks.
	[82f213aec22c]

2008-01-12  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	Check STORE failures also for DELETE state. Also don't verify that
	FETCH FLAGS replies were sent if STORE failed.
	[6a06b24c25aa]

	* src/mailbox-state.c, src/mailbox.h:
	Complain only once if we see a keyword being non-permanent (not once
	per each session).
	[c762991de959]

2008-01-07  Timo Sirainen  <tss@iki.fi>

	* src/mailbox-state.c:
	Fixed FLAGS/PERMANENTFLAGS checks
	[c0420f36256f]

	* src/mailbox-state.c, src/mailbox.c:
	Fixed keyword refcounting (don't access freed memory).
	[15d13c37201f]

	* src/client-state.c, src/mailbox-state.c, src/mailbox.h:
	Make sure we complain if STORE doesn't return all flag replies.
	[844f436519d7]

	* src/client-state.c:
	Removed debug abort().
	[adccdf23c7bb]

	* src/mailbox.c, src/mailbox.h:
	own_msgs: Don't assign owners to uids that have already been
	expunged in other sessions. We can't trust that their flags don't
	change.
	[bbcd7f09917a]

	* src/client-state.c, src/client.c, src/client.h, src/mailbox-state.c:
	Use a non-disconnecting client_state_error() for reporting state
	errors.
	[e9c89191dc93]

	* src/client-state.c, src/mailbox-state.c, src/mailbox.c,
	src/mailbox.h:
	own_msgs: Make sure FETCH FLAGS has been received for STORE +-FLAGS
	and it contains the changes. Also log in errors messages whether
	message has been seen as expunged in other sessions.
	[fd7d4b617774]

	* src/client.c:
	If client is wanted to be disconnected by closing its input stream,
	don't hang.
	[c6dcfb4a4c1c]

	* src/imaptest.c:
	Show stalling state better.
	[bbc6d0587cd6]

2008-01-06  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	Added archiveopteryx checks.
	[d3f007758419]

	* src/client.c:
	IMAP_PARSE_FLAG_ATOM_ALLCHARS exists now in Dovecot, use it.
	[222cb73dafe8]

	* src/client-state.c, src/client.c:
	Catch if message is expunged while we're still referencing it with
	FETCH/STORE. Also some other fixes.
	[69c09eb70c36]

	* src/client-state.c, src/commands.c, src/commands.h:
	FETCH/STORE: Add the sequences to a seq_range and store it, so we
	don't have duplicates, the ranges are packed better and parsing is
	easier.
	[a98ee853f740]

	* src/client-state.c:
	More fixes to handling deleting all messages with checkpointing
	enabled.
	[4864aafb6bdf]

	* src/client-state.c:
	Another fix to ":" seqsets
	[cd1cdcc4b136]

	* src/client-state.c:
	Don't break with seqsets containing ":"
	[c383b2da07c6]

	* src/client-state.c:
	Don't crash if we send a seqset with "*"
	[a8fedf8345b6]

	* src/client-state.c:
	Fix to own_msgs.
	[58a0df9f82ca]

	* src/mailbox.c:
	own_flags crashfix
	[23be9be57a76]

	* src/mailbox.c:
	Return more flags in mailbox_view_get_random_flags().
	[f97630daa88b]

	* src/mailbox.c:
	Fix for assigning client id
	[c28390cbc919]

	* src/client-state.c, src/imaptest.c, src/mailbox-state.c,
	src/mailbox.c, src/mailbox.h, src/settings.h:
	Added own_flags setting, which assigns owner client for each flag
	and keyword. If non-owner changes them, error is logged.
	[def1f4444efd]

	* src/checkpoint.c, src/mailbox-state.c, src/mailbox.c, src/mailbox.h:
	Created a global struct mailbox_keyword_name for introduced
	keywords.
	[123442eedad9]

	* src/client-state.c, src/mailbox-state.c, src/mailbox.c,
	src/mailbox.h:
	Minor code cleanup
	[32f72591d481]

	* src/client-state.c, src/imaptest.c, src/mailbox.c, src/settings.h:
	Renamed setting own_flags -> own_msgs.
	[1232c1586768]

	* src/client-state.c, src/mailbox-state.c, src/mailbox.h:
	own_flags: Allow STORE to send multiple different FETCH FLAGS
	replies.
	[2d10168c5025]

	* src/client-state.c, src/client.c, src/client.h, src/imaptest.c, src
	/mailbox-state.c, src/mailbox.c, src/mailbox.h, src/settings.h:
	Added own_flags setting, which assigns an owner client for each
	message. If flags for the message are changed by non-owner session,
	error is logged.
	[63aaa1b06fe4]

	* src/client-state.c:
	Send all commands in one write().
	[6015f9494e76]

2007-12-29  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c:
	Always fetch UID and FLAGS when checkpointing. Fetch UID always when
	fetching message header/body.
	[d307f4c983b4]

	* src/checkpoint.c:
	error_quit should quit imaptest also if recent flags are wrong.
	[ecdbac27c5c7]

	* src/checkpoint.c:
	First log missing \Recent flags with their UIDs, only after that
	check RECENT counter. Otherwise we'd only get RECENT counter error
	and it's more difficult to debug the problem.
	[94f790fc6947]

	* src/mailbox-state.c:
	If message changes, log also its uid.
	[fc3b164fa6e0]

2007-12-23  Timo Sirainen  <tss@iki.fi>

	* src/client-state.c, src/settings.h:
	DELAY may be defined elsewhere already, renamed to DELAY_MSECS
	[d06cf3891ad1]

	* src/client-state.c:
	Fixed compiling with latest Dovecot sources.
	[eaf7e80a5f80]

2007-12-21  Timo Sirainen  <tss@iki.fi>

	* src/mailbox-state.c, src/mailbox.h:
	Keep track of meessage header/body/full/[1] sizes.
	[be3905f6b257]

	* src/client-state.c:
	FETCH RFC822 also
	[babcedaa44f3]

	* src/client-state.c:
	Don't give bad "APPEND failed" errors on normal disconnects.
	[18b6bb575328]

2007-12-14  Timo Sirainen  <tss@iki.fi>

	* src/client.c, src/client.h:
	Log partial lines by appending >> to then.
	[446d58a191d5]

	* src/client.c, src/client.h, src/commands.c:
	Log timestamps with rawlog.
	[98067aa4bdca]

	* src/mailbox-state.c:
	Assume RFC822.SIZE=0 means "message is expunged".
	[e790a3791603]

	* src/client-state.c:
	FETCH: Get RFC822.SIZE also randomly. FETCH2: Get one header/body
	randomly using different commands.
	[109c1b947596]

2007-12-10  Timo Sirainen  <tss@iki.fi>

	* src/checkpoint.c:
	Prefix checkpoint errors with "Checkpoint:".
	[8ee0696c3e53]

2007-12-09  Timo Sirainen  <tss@iki.fi>

	* src/checkpoint.c, src/client.c, src/imaptest.c, src/mailbox-state.c,
	src/settings.h:
	Added error_quit parameter.
	[26b907cd5fbe]

	* src/client-state.c:
	Don't assert-crash if it's time to disconnect but client is in the
	middle of APPEND.
	[9e14eb9c42b8]

	* src/checkpoint.c:
	Different sessions may have keywords in different order. Handle it.
	[379925278767]

2007-12-04  Timo Sirainen  <tss@iki.fi>

	* src/checkpoint.c:
	Fixed a hang in checkpointing.
	[c2af7cb5b7fb]

	* src/mailbox-state.c, src/mailbox.h:
	Keep track of keywords' permanent state and warn once if keyword is
	non-permanent.
	[03a0b7c14ad2]

2007-12-02  Timo Sirainen  <tss@iki.fi>

	* configure.in:
	AC_INIT update
	[f959caa5d5d5]

	* src/Makefile.am, src/checkpoint.c, src/checkpoint.h, src/client-
	state.c, src/client-state.h, src/client.c, src/client.h,
	src/commands.c, src/commands.h, src/imap-args.c, src/imap-args.h,
	src/imaptest.c, src/mailbox-source.c, src/mailbox-source.h, src
	/mailbox-state.c, src/mailbox-state.h, src/mailbox.c, src/mailbox.h,
	src/settings.h:
	Split functions to different files. Still could use some moving
	though.
	[901d2bb83c21]

2007-12-02  tss  <tss@syksy.dovecot.org>

	* configure.in:
	Use imaptest as the project name.
	[1995f77584db]

2007-12-02  Timo Sirainen  <tss@iki.fi>

	* .hgignore, AUTHORS, Makefile.am, NEWS, README, configure.in,
	src/Makefile.am, src/imaptest.c, stamp.h.in:
	Initial import
	[056a680613ce]

