Releases: Webklex/php-imap
Releases · Webklex/php-imap
4.1.2
4.1.1
Fixed
- Fix for extension recognition #325 (thanks @pwoszczyk)
- Missing null check added #327 (thanks @spanjeta)
- Leading white-space in response causes an infinite loop #321 (thanks @thin-k-design)
- Fix error when creating folders with special chars #319 (thanks @thin-k-design)
Client::getFoldersWithStatus()recursive loading fixed #312 (thanks @szymekjanaczek)- Fix Folder name encoding error in
Folder::appendMessage()#306 #307 (thanks @rskrzypczak)
4.1.0
4.0.2
4.0.1
Fixed
- Type casting added to several ImapProtocol return values #261
- Remove IMAP::OP_READONLY flag from imap_reopen if POP3 or NNTP protocol is selected #135 (thanks @xianzhe18)
- Several statements optimized and redundant checks removed
- Check if the Protocol supports the fetch method if extensions are present
- Detect
NONEXISTENTerrors while selecting or examining a folder #266 - Missing type cast added to
PaginatedCollection::paginate#267 (thanks @rogerb87) - Fix multiline header unfolding #250 (thanks @sulgie-eitea)
- Fix problem with illegal offset error #226 (thanks @szymekjanaczek)
- Typos fixed
4.0.0
Fixed
- PHP dependency updated to support php v8.0 #212 #214 (thanks @freescout-helpdesk)
- Method return and argument types added
- Imap
DONEmethod refactored - UID cache loop fixed
HasEvent::getEventreturn value set to mixed to allow multiple event types- Protocol line reader changed to
fread(stream_context timeout issue fixed) - Issue setting the client timeout fixed
- IMAP Connection debugging improved
Folder::idle()method reworked and several issues fixed #170 #229 #237 #249 #258- Datetime conversion rules extended #189 #173
Breaking changes
- No longer supports php >=5.5.9 but instead requires at least php v7.0.0.
HasEvent::getEventreturns a mixed result. Either anEventor a class string representing the event class.- The error message, if the connection fails to read the next line, is now
empty responseinstead offailed to read - connection closed?. - The
$auto_reconnectused withFolder::indle()is deprecated and doesn't serve any purpose anymore.
3.2.0
Fixed
- Fix attribute serialization #179 (thanks @netpok)
- Use real tls instead of starttls #180 (thanks @netpok)
- Allow to fully overwrite default config arrays #194 (thanks @laurent-rizer)
- Query::chunked does not loop over the last chunk #196 (thanks @laurent-rizer)
- Fix isAttachment that did not properly take in consideration dispositions options #195 (thanks @laurent-rizer)
- Extend date parsing error message #173
- Fixed 'Where' method replaces the content with uppercase #148
- Don't surround numeric search values with quotes
- Context added to
InvalidWhereQueryCriteriaException - Redundant
stream_set_timeout()removed
Added
- UID Cache added #204 (thanks @HelloSebastian)
- Query::class extended with
getByUidLower,getByUidLowerOrEqual,getByUidGreaterOrEqual,getByUidGreaterto fetch certain ranges of uids #201 (thanks @HelloSebastian) - Check if IDLE is supported if
Folder::idle()is called #199 (thanks @HelloSebastian) - Fallback date support added. The config option
options.fallback_dateis used as fallback date is it is set. Otherwise, an exception will be thrown #198 - UID filter support added
- Make boundary regex configurable #169 #150 #126 #121 #111 #152 #108 (thanks @EthraZa)
- IMAP ID support added #174
- Enable debug mode via config
- Custom UID alternative support added
- Fetch additional extensions using
Folder::query(["FEATURE_NAME"]) - Optionally move a message during "deletion" instead of just "flagging" it #106 (thanks @EthraZa)
WhereQuery::where()accepts now a wide range of criteria / values. #104
Breaking changes
- If you are using the legacy protocol to search, the results no longer return false if the search criteria could not be interpreted but instead return an empty array. This will ensure it is compatible to the rest of this library and no longer result in a potential type confusion.
Folder::idlewill throw anWebklex\PHPIMAP\Exceptions\NotSupportedCapabilityExceptionexception if IMAP isn't supported by the mail server- All protocol methods which had a
boolean$uidoption no longer support a boolean value. UseIMAP::ST_UIDorIMAP::NILinstead. If you want to use an alternative toUIDjust use the string instead. - Default config option
options.sequencechanged fromIMAP::ST_MSGNtoIMAP::ST_UID. Folder::query()no longer accepts a charset string. It has been replaced by an extension array, which provides the ability to automatically fetch additional features.
3.1.0-alpha
Fixed
- Fix attribute serialization #179 (thanks @netpok)
- Use real tls instead of starttls #180 (thanks @netpok)
- Allow to fully overwrite default config arrays #194 (thanks @laurent-rizer)
- Query::chunked does not loop over the last chunk #196 (thanks @laurent-rizer)
- Fix isAttachment that did not properly take in consideration dispositions options #195 (thanks @laurent-rizer)
Breaking changes
- Default config parameters no longer persist after being merged if the given array contains fewer elements
3.0.0-alpha
Fixed
- Extend date parsing error message #173
- Fixed 'Where' method replaces the content with uppercase #148
- Don't surround numeric search values with quotes
- Context added to
InvalidWhereQueryCriteriaException - Redundant
stream_set_timeout()removed
Added
- Make boundary regex configurable #169 #150 #126 #121 #111 #152 #108 (thanks @EthraZa)
- IMAP ID support added #174
- Enable debug mode via config
- Custom UID alternative support added
- Fetch additional extensions using
Folder::query(["FEATURE_NAME"]) - Optionally move a message during "deletion" instead of just "flagging" it #106 (thanks @EthraZa)
WhereQuery::where()accepts now a wide range of criteria / values. #104
Breaking changes
- All protocol methods which had a
boolean$uidoption no longer support a boolean. UseIMAP::ST_UIDorIMAP::NILinstead. If you want to use an alternative toUIDjust use the string instead. - Default config option
options.sequencechanged fromIMAP::ST_MSGNtoIMAP::ST_UID. Folder::query()no longer accepts a charset string. It has been replaced by an extension array, which provides the ability to automatically fetch additional features.