First ever Github issue guys. Thanks for the software and sorry if this is mixed up/wrong.
Installing Shaarli 0.7.0 from the downloaded zip file fails. The shaarli web page is blank and this gets written in to the web server error log:
PHP Fatal error: require_once(): Failed opening required '/var/www/shaarli/vendor/autoload.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/shaarli/index.php on line 49
The autoload.php file does not exist. Neither does the "vendor" directory. I can work around the issue by creating the folder and an empty autoload.php file:
mkdir /var/www/shaarli/vendor
touch /var/www/shaarli/vendor/autoload.php
Version 0.6.5 did not have this error.
Environment: Debian 8, Apache 2.4, PHP 5.6.24. Composer not installed.
I think you installed the master branch tarball instead of 0.7.0 release. The master zip and git install now requires a composer install. See https://github.com/shaarli/Shaarli/wiki/Download-and-Installation
Although, we need to provide a proper error message for this.
That Download-and-Installation page says Composer is required only when installing via "git clone". I was not installing by git clone, but just by downloading the zip file linked on the project front page. (Md5sum: ffa801473e788c405fa66c0e657a4c35 master.zip). Is downloading the master branch tarball not a valid method of installation for Shaarli ?
The Download-and-Installation page seems to say that this is a valid method if installation, in the section entitled "Download as an archive".
The doc mentions the _stable_ and release zips, not the master one, which is the development branch. It could be clarified. The dev branch requires composer.
I'd suggest releasing 0.8.0 as-is so we have a first batch of full-featured zip/tar archives and Docker images, and the docs can be wholly updated to state which Shaarli versions require Composer.
Well, I believe an explicit error message may avoid noise here before releasing it.
What should it contain/display?
A simple check would be looking for the presence of an autoload file, and pointing the user towards the installation page w/ Composer installation instructions.
Note that this doesn't cover other cases, e.g. the autoload is present but there are missing or outdated dependencies.
I'll look at how we can check for dependency versions from within Shaarli so we can display a nice beefy warning message instead of having the application fail. Something in the lines of: _you need dependency D in revision R for feature F to work_.
What should it contain/display?
A simple check would be looking for the presence of an autoload file, and pointing the user towards the installation page w/ Composer installation instructions.
Yes, something very simple, like:
**Error:** Dependency not found.
If you installed Shaarli through git or using the development branch, please refer to the installation documentation [link] to install Composer dependencies.
I'll look at how we can check for dependency versions from within Shaarli so we can display a nice beefy warning message instead of having the application fail. Something in the lines of: you need dependency D in revision R for feature F to work.
I'm not sure you can easily do that, but go ahead if you find anything.
Thanks guys.
Now I understand. Sorry, bit of a Git noob. When I changed the branch to stable, the zip download link points to stable.zip, namely version 0.6.5. Yes, branch was "master" at the time of my first download (v 0.7.0).
While the master branch states its version is 0.7.0, it actually includes all changes in development made after the release. If you want the 0.7.0 release, refer to the release page.