BookStackApp / BookStack

A platform to create documentation/wiki content built with PHP & Laravel
https://www.bookstackapp.com/
MIT License
15.34k stars 1.91k forks source link

[Support Request]: Unable to update to latest version #3184

Closed plummerr closed 2 years ago

plummerr commented 2 years ago

Attempted Debugging

Searched GitHub Issues

Describe the Scenario

Hello, I am running Bookstack 21.04.3 on Ubuntu 18.04.6 LTS, all patches up to date. PHP ver. 8.0.14 When I run git pull origin release && composer install --no-dev && php artisan migrate, I get the following: remote: Enumerating objects: 1074, done. remote: Counting objects: 100% (979/979), done. remote: Compressing objects: 100% (431/431), done. remote: Total 1074 (delta 632), reused 769 (delta 545), pack-reused 95 Receiving objects: 100% (1074/1074), 1.13 MiB | 10.63 MiB/s, done. Resolving deltas: 100% (661/661), completed with 117 local objects. From https://github.com/BookStackApp/BookStack

I had read that this could be resolved by a git reset, which I have tried. After running the reset and trying to update however, I get a wall of red highlighted text, and Bookstack (or Apache) stops and won't start again. I end up having to restore from a snapshot. I also read that this might have something to do with commiting changes prior to updating, but I'm uncertain on how to do that. Any help would be greatly appreciated

Exact BookStack Version

21.04.3

Log Content

No response

PHP Version

8.0.14

Hosting Environment

Ubuntu 18.04.6 LTS, using the installation script. No proxies VM machine hosted in VSphere environment

ssddanbrown commented 2 years ago

Hi @plummerr, This could likely be caused by permissions causing confusing in the version control system. If so, this can be easily solved but could you provide the output of the below command so we can verify that causation? Just run this from within your BookStack install folder:

git diff LICENSE
plummerr commented 2 years ago

diff --git a/LICENSE b/LICENSE old mode 100644 new mode 100755

ssddanbrown commented 2 years ago

@plummerr Thanks, Looks like this is permissions. You can run the following, from your bookstack install folder, to ensure permissions won't affect code control:

git config core.fileMode false

After that you can try updating again, hopefully now with success.

plummerr commented 2 years ago

Well, making some progress...but now I get this

Deprecation Notice: Required parameter $path follows optional parameter $schema in /usr/share/php/JsonSchema/Constraints/UndefinedConstraint.php:62 Deprecation Notice: Required parameter $path follows optional parameter $schema in /usr/share/php/JsonSchema/Constraints/UndefinedConstraint.php:108 Deprecation Notice: Method ReflectionParameter::getClass() is deprecated in /usr/share/php/Composer/Repository/RepositoryManager.php:129 Deprecation Notice: Method ReflectionParameter::getClass() is deprecated in /usr/share/php/Composer/Repository/RepositoryManager.php:129 Cannot create cache directory /home/administrator/.cache/composer/repo/https---packagist.org/, or directory is not writable. Proceeding without cache Cannot create cache directory /home/administrator/.cache/composer/files/, or directory is not writable. Proceeding without cache

In ArrayLoader.php line 44:

Unknown package has no name defined ([{"name":"aws\/aws-sdk-php","version":"3.178.6","versi
on_normalized":"3.178.6.0","source":{"type":"git","url":"https:\/\/github.com\/aws\/aws-sdk
-php.git","reference":"0aa83b522d5ffa794c02e7411af87a0e241a3082"},"dist":{"type":"zip","url
":"https:\/\/api.github.com\/repos\/aws\/aws-sdk-php\/zipball\/0aa83b522d5ffa794c02e7411af8
7a0e241a3082","reference":"0aa83b522d5ffa794c02e7411af87a0e241a3082","shasum":""},"require"
:{"ext-json":"","ext-pcre":"","ext-simplexml":"*","guzzlehttp\/guzzle":"^5.3.3|^6.2.1|^7.
0","guzzlehttp\/promises":"^1.4.0","guzzlehttp\/psr7":"^1.7.0","mtdowling\/jmespath.php":"^

This is just a snippet of it, and it's the red highlighted text that I mentioned earlier.

ssddanbrown commented 2 years ago

Hi @plummerr, Is sounds like you might be using an out of date version of composer relative to your PHP version, possibly the composer package provided in Ubuntu. If that's in use I'd advise removing that (sudo apt remove composer). Then follow the composer site to setup the latest version: https://getcomposer.org/download/

Note the sudo mv composer.phar /usr/local/bin/composer command they show to globally install it.

plummerr commented 2 years ago

I don't know how I screwed up the composer install the first time, so I started all over like you suggested. We are good to go! I appreciate all your help

HendrikFagel commented 5 months ago

Thank you for this helpful post, I had the same problem. This has helped me. Thank you very much.