Releases: emersion/go-imap
Releases · emersion/go-imap
2.0.0-beta.7
go-imap v2.0.0-beta.7
COD3HUNT3R (1):
imapclient: fix nil options in DialInsecure and DialTLS
Jebbs (1):
imapclient: fix fetchLiteralReader deadlock
Simon Ser (1):
imapclient: drop useless nil check in Options.tlsConfig
2.0.0-beta.6
Breaking changes:
- 191dd53:
CapAuthPlainhas been removed,AuthCap("PLAIN")can be used instead - 231f7ff:
Client.Renamenow takes an options struct for future extensibility. - a1e4f0b:
SearchData.UIDhas been removed.
Full commit log:
Dejan Štrbac (3):
imapclient: correct missing NIL atom instead of ()
imapserver: add support for SPECIAL-USE
imapserver: include CHILDREN capability
Fabian Holler (2):
ci: adapt dovecot config file to version 2.4
imapclient: make net.Dialer configurable
Simon Ser (12):
imapclient: drop TestFetch_closedConn
imapclient: add basic Client.Authenticate test
imap: drop SearchData.UID
imap: add RenameOptions
imapserver: add comments to explain what the various cap lists are
imapserver: fix SEARCH NEW criteria
imapserver: skip RECENT in SELECT for IMAP4rev2-only servers
imapclient, imapserver: make capabilities case-insensitive
imapmemserver: add stub for STATUS RECENT
imapserver: add SelectData.FirstUnseenSeqNum
imapmemserver: add support for SelectData.FirstUnseenSeqNum
Drop CapAuthPlain
fox.cpp (1):
imapserver: Support RECENT for IMAP4rev1 servers
snekROmonoro (1):
imapclient: use dialer in DialInsecure
2.0.0-beta.5
Breaking change for clients (b4bb320): FetchMessageBuffer.BodySection and FetchMessageBuffer.BinarySection are now slices instead of maps. The new helpers FetchMessageBuffer.FindBodySection and FetchMessageBuffer.FindBinarySection can be used to find a section.
Full commit log:
Jebbs (1):
Allow continuous SP between CAPABILITY items
Simon Ser (17):
imapclient: add basic FETCH test
imapclient: add closed conn FETCH test
imapclient: add basic SEARCH test
Remove .DS_Store
imapserver: add ExtractBodySection helper
imapmemserver: don't encode envelope fields
imapserver: add ExtractEnvelope helper
imapserver: add ExtractBodyStructure helper
iampserver: fix literal8 in APPEND
imapserver: fix FetchResponseWriter.WriteBinarySectionSize arg type
imapserver: add BINARY helpers
imapmemserver: implement FETCH BINARY
imapmemserver: decode header fields during search
imapmemserver: decode body during search
imapserver: limit command size
imapclient: add helpers to match FETCH response sections
imapclient: use slice instead of map for FetchMessageBuffer sections
Zhi Qu (1):
Support IMAP server response token case-insensitively (#656)
2.0.0-beta.4
go-imap v2.0.0-beta.4
Alireza Ghasemi (1):
imapclient: fixup fetch BINARY.SIZE decode bug
Ksenia Roshchina (6):
imap: add ACL types
imapclient: add MYRIGHTS command
imapclient: add SETACL command
imapclient: add GETACL command
imapclient: turn on ACL extension for Dovecot
imapclient: add ACL tests
Simon Ser (7):
imapclient: add timeout to Client.Caps
readme: drop CI badge
imapclient: fix missing UIDPLUS metadata in MOVE fallback
imap: add a few recently standardized capabilities
imapclient: add EXPUNGE test
imapclient: avoid leaking cmd.Wait method
imapclient: handle nil literals
Zhi Qu (4):
imapclient: add support for ID
Ignore space before first item in flag list
imapwire: allow closing bracket in astring
imapclient: remove outer parentheses in SEARCH criteria
2.0.0-beta.3
go-imap v2.0.0-beta.3
Conrad Hoffmann (1):
imapclient: add DialInsecure() for plain-text IMAP
Simon Ser (25):
imapclient: treat io.ErrClosedPipe as net.ErrClosed
imapclient: stop IdleCommand.run when connection is closed
imapclient: allow IdleCommand.Wait to be called before Close
imapclient: add Create test
imapclient: UTF-7-encode pattern in List
utf7: use named field in struct literal
utf7: accept raw UTF-8 when decoding
utf7: add AcceptUTF8Encoding
imapwire: don't encode UTF-8 in mailboxes with UTF8=ACCEPT
imapclient: add Create test with UTF-8 characters
utf7: simplify implementation
utf7: drop repl
Upgrade github.com/emersion/go-message
imapclient: fix data race with Command.tag
imapclient: add basic SELECT test
imapclient: fix race condition in test initialization
imapserver: fix race condition in Server.Close
imapclient: add STARTTLS test
imapclient: wait for handshake to complete during STARTTLS
imapclient: document upgradeStartTLS
imapclient: use defer to close startTLSCommand.upgradeDone
imapclient: add STATUS test
imapclient: add LIST test
imapclient: set separator to "/" in Dovecot tests
imapclient: fix timeout for initial greeting
2.0.0-beta.2
go-imap v2.0.0-beta.2
Ksenia Roshchina (1):
imapclient: handle nil options in Client.Status
Shugyousha (1):
imapclient/search: handle UID SEARCH results without hits
Simon Ser (11):
imapclient: add NewStartTLS
imapclient: ensure nil Options are correctly handled
imapclient: accept IMAP4rev2 in ENABLE command
imapclient: set debug writer when running verbose tests
imapclient: use IMAP command to append test data
imapclient: add env var to run tests with Dovecot
ci: run client tests with Dovecot
imapclient: set default dial timeout to 30s
imapclient: fix missing SelectCommand.Wait call in Idle example
imapclient: add basic ESEARCH test
imapclient: turn on IMAP4rev2 for imapmemserver
jebbs (1):
imapwire: accept trailing space in CAPABILITY/SEARCH responses
2.0.0-beta.1
go-imap v2.0.0-beta.1
This is the first beta release. The API hasn't stabilized yet but no
more major/invasive changes are expected.
Diana F (1):
imapclient: fix deadlock on error before greeting
Matthieu Rakotojaona (1):
Write all found params keys in lowercase, mime-decode values
Simon Ser (23):
imapserver: fix encoding ESEARCH response with no result
imapmemserver: fix dynamic NumSet handling in nested search criteria
imapserver: add support for SEARCHRES
imapmemserver: implement SEARCHRES
Decode In-Reply-To and Message-ID
imapwire: add -1 workaround for body-fld-octets
imapwire: limit max list nesting depth
imapclient: add Options.TLSConfig
imapclient: check for nil in Options.tlsConfig
imapclient: unexport Client.StartTLS
imapclient: keep track of enabled capabilities
imapclient: add basic support for UTF8=ACCEPT
imap: QRESYNC implicitly advertises CONDSTORE
imapclient: only allow users to enable supported extensions
imapclient: omit CHARSET in SEARCH when UTF8=ACCEPT is enabled
imapserver: add support for UTF8=ACCEPT
imap: UTF8=ONLY implies UTF8=ACCEPT
imapclient: drop GetMetadataData.EntryList
imapclient: add UnilateralDataHandler.Metadata
imapclient: handle split METADATA responses
imapclient: improve METADATA routing robustness
imapserver: add BINARY support
imapclient: add TODO for the APPEND side of BINARY
2.0.0-alpha.8
go-imap v2.0.0-alpha.8
This release introduces a new UID type, as well as separate types for
message sequence number sets and UID sets. SeqSet now contains only
sequence numbers, and the new UIDSet type contains only UIDs. The NumSet
type is used when both SeqSet and UIDSet are accepted. Client.UID*
methods have been removed (the non-UID variant now accepts UIDSet).
Alexander Kazantsev (1):
imapmemserver: fix usage NumUnseen instead of NumDeleted
Diana F (3):
add rfc 8457 mailbox attr
imapclient: fix closing unread Fetch body
imapclient: Close returned err.NetClosed after Logout
Matthieu Rakotojaona (1):
imapclient: allow NIL Content-Transfer-Encoding in body structure
Simon Ser (26):
imap: add examples for SearchCriteria.Not and Or
imapclient: accept missing message and text fields in body structure
imapclient: move examples to example_test.go
imapclient: add basic login test
imapclient: add basic idle test
imapclient: fix panic on nil options in Fetch
imapclient: make encoding errors fatal
imapclient: add invalid fetch command test
Introduce a UID type
imapwire: add dedicated UID functions
Rename SeqSet to NumSet
Rename Seq to NumRange
Move NumSet parsing to imapwire
ci: add gofmt check
imapclient: fix routing for FETCH responses to STORE commands
imapclient: add STORE test
imapclient: fix net.ErrClosed decoder check
Upgrade dependencies
imapclient: add Fetch example which parses the body
imap: add a few examples to FetchItemBodySection docs
imapclient: fix typo in example name
imapclient: remove outdated TODO
imapclient: ensure SEARCH ALL set is not dynamic
imapclient: ensure COPYUID set is not dynamic
imapclient: add basic Append test
Add SeqSet and UIDSet
2.0.0-alpha.7
go-imap v2.0.0-alpha.7
Simon Ser (13):
imapclient: add CONDSTORE
imapserver: add UNAUTHENTICATE support
imapclient: drop special case for BYE response-data handling
imapclient: fix stalled commands on readResponseTagged() error
imapclient: relax text requirements for resp-cond-bye
imapclient: relax text requirements for resp-cond-state
imapwire: accept trailing space before CRLF
imapclient: fix missing import in charset decoding docs
imapclient: simplify charset instructions
imapclient: drop unused Client.unregisterContReq
imap: add AuthCap
imapclient: add AUTHENTICATE example
imapclient: restart IDLE automatically
Tim Culverhouse (1):
imapclient: add SPECIAL-USE LIST option support
2.0.0-alpha.6
go-imap v2.0.0-alpha.6
Andrew Regner (1):
imapclient: fix FetchItems to end encoded list