Skip to content

Version 21 Compatibility #224

Closed
Closed

Description

@sunjam

Please confirm e2e compatibility for version 21. Thanks!

Activity

  1. added
    0. Needs triagePending approval or rejection. This issue is pending approval.
    enhancementNew feature or request
    on Feb 24, 2021
  2. eibex commented on Apr 9, 2021

    @eibex

    Any ETA on this?
    Especially considering the confusion with the latest update nextcloud/server#26469

  3. bcutter commented on Apr 10, 2021

    @bcutter

    Even the app (v1.6.2) can be enabled/activated, E2EE won´t work. E. g. desktop client throws

    13:44:35||Encrypted/Test123.txt|8|1|1618062225||0||2|Server hat "409 Conflict" auf "PUT https://server.name/dav/files/Username/Encrypted/Test123.txt" geantwortet (Sabre\DAV\Exception\Conflict)|409|0|0|xxxxxxxx-c6cd-4484-xxxx-1591e96axxxx|

    when trying to sync a file. So there definitely needs some adjustments to be done within the E2EE app to work properly again with NC v21.

  4. bcutter commented on Apr 13, 2021

    @bcutter

    Managed to get it working. Enable app, restart desktop clients. I also changed maximum version in app setting temporarily, not sure if this is necessary.

  5. eibex commented on Apr 13, 2021

    @eibex

    @bcutter Do files get synced properly and do new files get encrypted properly too?

  6. bcutter commented on Apr 13, 2021

    @bcutter

    Yes for both. Latest v3.2.0 desktop client and latest mobile apps in use.

  7. robolange commented on Apr 15, 2021

    @robolange

    @bcutter Do you have a full list of changes you made to the source code? Was it only the maximum version number? Did you make changes against the latest master or against a v1.6.2 snapshot? It'd be nice to get a PR with minimal changes.

  8. szaimen commented on Apr 16, 2021

    @szaimen

    Maybe @tobiasKaminsky can answer to this issue since he is the co-maintainer of this app, afaik.

  9. eibex commented on Apr 17, 2021

    @eibex

    @robolange I simply clicked on enable untested app without modifying anything and everything is working just fine. Make sure you don't have PHP8 though.

  10. robolange commented on Apr 17, 2021

    @robolange

    @eibex Interesting... I'm running the nextcloud docker compose, freshly pulled today, nextcloud:fpm-alpine which is based on php:7.4-fpm-alpine3.13 (at least according to https://github.com/nextcloud/docker/blob/master/21.0/fpm-alpine/Dockerfile) and I still get the "An error occured during the request. Unable to proceed." message. Annoyingly, this is the only thing in the docker compose logs related to this error:

    app_1  | 172.18.0.4 -  17/Apr/2021:16:20:37 +0000 "POST /index.php" 500
    web_1  | 172.18.0.1 - - [17/Apr/2021:16:20:37 +0000] "POST /settings/apps/enable HTTP/2.0" 500 4006 "https://my.domain/settings/apps" "Mozilla/5.0 (X11; Linux x86_64; rv:87.0) Gecko/20100101 Firefox/87.0" "-"
    

    No stack trace or any other useful message :-(

  11. szaimen commented on Apr 17, 2021

    @szaimen

    and I still get the "An error occured during the request. Unable to proceed."

    And you are sure that this is related to the E2EE app?

  12. robolange commented on Apr 17, 2021

    @robolange

    When I click "Enable" for the "End-to-End Encryption" app, that error message appears and the app is not enabled. It would seem reasonable to assume so...

    I'm don't know much about PHP. Is there something I can do to enable debugging info or otherwise get more info?

  13. szaimen commented on Apr 17, 2021

    @szaimen

    Actually this is still most likely because of the incompatible release. On NC22 it will be possible to force the installation of any app (also incompatible ones) at least via OCC. But this is currently not yet possible. See nextcloud/server#26252

  14. robolange commented on Apr 17, 2021

    @robolange

    I don't think that this is merely an issue of needing to bump up the max-version variable. I'm going to publish, in excruciating detail, my experimental setup in the hopes that others can replicate it exactly.

    Okay, new experimental setup: I removed all docker containers, removed all container images, removed all docker volumes. Totally clean container infrastructure.

    I forked and modified end_to_end_encryption, changing only the version number and nextcloud max-version number. My fork can be found here: https://github.com/robolange/end_to_end_encryption/tree/nc21-1.6.2.1-test

    I built the tarball for that app locally from that fork using make.

    I used the docker-compose from here, making the necessary changes for domain name, etc: https://github.com/nextcloud/docker/tree/master/.examples/docker-compose/with-nginx-proxy/postgres/fpm

    This pulls in nextcloud:fpm-alpine, which is currently an alias for nextcloud:21.0.1-fpm-alpine, which is built on top of php:7.4-fpm-alpine3.13. Because I've cleaned my volumes, bringing this up results in a totally new environment. I created an admin account, allowed it to install the recommended apps, enabled the default encryption module, and enabled server side encryption.

    Then, from my host system, I went into the docker volume as root and untarred the customized end_to_end_encryption module into the custom_apps directory. (I then recursively chowned it to the same uid and gid as the rest of the nextcloud files.)

    To be extra safe, I shut down the nextcloud docker-compose services and brought them back up. Refreshing in my admin account in the browser, I saw that "End-to-End Encryption" with my custom verson number (1.6.2.1) had been added to "Your Apps", with the options Remove and Enable given. I clicked Enable...

    And I got the error message "An error occured during the request. Unable to proceed." Also, in the docker-compose logs, I saw:

    app_1  | 172.18.0.4 -  17/Apr/2021:17:54:49 +0000 "POST /index.php" 500
    web_1  | 172.18.0.1 - - [17/Apr/2021:17:54:50 +0000] "POST /settings/apps/enable HTTP/2.0" 500 4006 "https://my.domain/settings/apps" "Mozilla/5.0 (X11; Linux x86_64; rv:87.0) Gecko/20100101 Firefox/87.0" "-"
    

    So now I'm going to try to figure out how to make php give me more detailed logging, so I can see exactly why it is giving a 500 error. If anyone has any advice on that, I'd appreciate it. But from this, it doesn't seem that this is merely an issue with version numbers, nor does it appear to be (only) an issue with PHP8, as I am using PHP7.4.

  15. 8 remaining items

  16. ChristophWurst commented on Apr 19, 2021

    @ChristophWurst
    Member

    I wonder why he didn't create an issue in this repository...

    I occasionally make mistakes. Apparently my github search query didn't show usages in this repo.

  17. szaimen commented on Apr 19, 2021

    @szaimen

    I occasionally make mistakes. Apparently my github search query didn't show usages in this repo.

    All good! I didn't wanna make any accusation!

  18. robolange commented on Apr 19, 2021

    @robolange

    This issue (the DBAL Types change) was fixed in master in January. Unfortunately, there has been no formal release since then, which I assume is what triggers a new version to be pushed into the nextcloud app store. Then in February, the min-version in master got bumped up to v22, so even if a release had happened, I guess it wouldn't show up in the app store for v21 servers. i'm hoping that my patch (#230) can get accepted, and a new release cut, which should restore compatibility with v21 servers.

  19. nickvergessen commented on Apr 22, 2021

    @nickvergessen
    Member

    DBAL stuff I fixed with #218 before it was branched off, so that is fixed in stable21 as well.

    PHP8 testing is added in #232 and seems to pass
    it was backported to stable21 in #234

    Is someone willing to give a package a quick test before it's being put into the appstore?
    end_to_end_encryption-1.7.0-test.tar.gz

  20. brtptrs commented on Apr 22, 2021

    @brtptrs

    Installation on NC21.0.1 works!
    php7.4
    Have not tested the functionality yet

  21. added
    1. to developAccepted and waiting to be taken care of
    and removed
    0. Needs triagePending approval or rejection. This issue is pending approval.
    1. to developAccepted and waiting to be taken care of
    on Apr 22, 2021
  22. robolange commented on Apr 22, 2021

    @robolange

    I too can confirm that the stable21 branch works on NC21.0.1 (also PHP 7.4), both with and without server-side encryption enabled. The only minor suggestion I would make is to update the version tag in the Makefile so that the tarball it generates has the correct version number, but that doesn't affect the functionality of the package.

  23. nickvergessen commented on Apr 22, 2021

    @nickvergessen
    Member

    make appstore version=1.7.0 fixes the "number" issue.

  24. nickvergessen commented on Apr 22, 2021

    @nickvergessen
    Member
  25. szaimen commented on Apr 22, 2021

    @szaimen

    @nickvergessen it seems like I wasn't fast enough 😅
    Is my testing still needed then?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions