Skip to content

v0.99.49

Compare
Choose a tag to compare
@lkrms lkrms released this 10 Sep 08:01
· 366 commits to main since this release
v0.99.49
21e9dd1

Added

Contract

  • Add StreamWrapper, an abstraction of the streamWrapper prototype class described in the PHP manual

Curler

  • Add CurlerPageRequest and allow it to be returned from CurlerPagerInterface::getFirstRequest() to minimise query string deserialization between requests
  • Add CurlerPage methods getCurrent() and getTotal(), which return $current and $total values passed to __construct(), so progress can be tracked across responses if needed
  • Add AbstractRequestException and AbstractResponseException to API so middleware can extend them

Testing (new)

  • Add MockPhpStream
  • Add MockTarget (from Console)

Changed

Curler

  • In CurlerPagerInterface::getPage(), add $response and $query parameters to simplify pager code and improve consistency
  • Move isLastPage() and getNextRequest() from CurlerPageInterface to CurlerPageRequestInterface and extend the latter from the former
  • Replace isLastPage() with hasNextRequest()

Sli

  • Review sli subcommand names

Sync

  • Move SendHttpRequest from Sli to Sync, rename it to SendHttpSyncProviderRequest, and refactor for consistency
  • Rename GetSyncEntities to GetSyncEntity for consistency

Removed

Console

  • Remove ConsoleInvalidTargetException

Curler

  • Remove redundant HttpErrorExceptionInterface::getStatusCode() and isNotFoundError() methods

Fixed

Curler

  • Fix Curler issue where initial query is not passed to pagers
  • Fix Curler pagination issue where entities are returned with the same keys for each page of data

Sync

  • Fix SyncEntityProvider issue where upstream iterator keys are preserved unnecessarily, leading to possible data loss