Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Declaration of Aws\S3\ObjectCopier::promise() must be compatible with GuzzleHttp\Promise\PromisorInterface::promise() #629

Closed
tcitworld opened this issue Nov 18, 2023 · 1 comment · Fixed by #630

Comments

@tcitworld
Copy link
Collaborator

tcitworld commented Nov 18, 2023

Steps to reproduce

  1. Install both richdocuments and nextcloud_sentry
  2. Try to save (or autosave) a document
  3. Document can't be saved

Server configuration

Operating system: Debian

Web server: nginx

Database: PostgreSQL

PHP version: 8.1

Version: (see admin page) 26.0.8

Updated from an older version or fresh install:

List of activated apps:

richdocuments: 8.0.6
sentry: 8.8.9

Logs

Server log (data/nextcloud.log)
{"reqId":"jKuSceM8SBZ6dMBmaGyn","level":3,"time":"2023-11-17T09:03:05+00:00","remoteAddr":"::ffff:5.9.69.82","user":"admin","app":"PHP","method":"POST","url":"/index.php/apps/richdocuments/wopi/files/288_ocioexg3r5rp/contents?access_token=YRfi4FqMMIGOOFqSPDcH6MX94pGnSZq5&access_token_ttl=1700247682000","message":"Declaration of Aws\\S3\\ObjectCopier::promise() must be compatible with GuzzleHttp\\Promise\\PromisorInterface::promise(): GuzzleHttp\\Promise\\PromiseInterface at /var/www/nc/nextcloud-26.0.8/3rdparty/aws/aws-sdk-php/src/S3/ObjectCopier.php#82","userAgent":"COOLWSD HTTP Agent 23.05.5.4","version":"26.0.8.2","data":{"app":"PHP"}}

Ran find . -name "PromisorInterface.php" into my install folder, returns:

./3rdparty/guzzlehttp/promises/src/PromisorInterface.php
./apps/sentry/vendor/guzzlehttp/promises/src/PromisorInterface.php

So I'm guessing this is very similar to #517. Funny to see it's broken since d650d43 and no one reported it. 🤔

Can we compose the dependencies with Mozart here too? Otherwise just pinning guzzlehttp/promises to 1.x versions should be fine for now.

@ChristophWurst
Copy link
Owner

Can we compose the dependencies with Mozart here too? Otherwise just pinning guzzlehttp/promises to 1.x versions should be fine for now.

Last time I tried it didn't work well with Guzzle and HTTPlug libraries unfortunately

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants