Releases: Webklex/php-imap
Releases · Webklex/php-imap
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
NONEXISTENT
errors 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
DONE
method refactored - UID cache loop fixed
HasEvent::getEvent
return 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::getEvent
returns a mixed result. Either anEvent
or a class string representing the event class.- The error message, if the connection fails to read the next line, is now
empty response
instead offailed to read - connection closed?
. - The
$auto_reconnect
used 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
,getByUidGreater
to 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_date
is 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::idle
will throw anWebklex\PHPIMAP\Exceptions\NotSupportedCapabilityException
exception if IMAP isn't supported by the mail server- All protocol methods which had a
boolean
$uid
option no longer support a boolean value. UseIMAP::ST_UID
orIMAP::NIL
instead. If you want to use an alternative toUID
just use the string instead. - Default config option
options.sequence
changed fromIMAP::ST_MSGN
toIMAP::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
$uid
option no longer support a boolean. UseIMAP::ST_UID
orIMAP::NIL
instead. If you want to use an alternative toUID
just use the string instead. - Default config option
options.sequence
changed fromIMAP::ST_MSGN
toIMAP::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.
2.7.2
2.7.1
2.7.0
Fixed
- Fixes handling of long header lines which are seperated by
\r\n\t
(thanks @Oliver-Holz) - Fixes to line parsing with multiple addresses (thanks @Oliver-Holz)
Added
- Expose message folder path #154 (thanks @Magiczne)
- Adds mailparse_rfc822_parse_addresses integration (thanks @Oliver-Holz)
- Added moveManyMessages method (thanks @Magiczne)
- Added copyManyMessages method (thanks @Magiczne)
2.6.0
Fixed
Added
- Added imap 4 handling. #146 (thanks @szymekjanaczek)
- Added laravel's conditionable methods. #147 (thanks @szymekjanaczek)