Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

raulrola's avatar

Laravel installer vs composer create-package

Documentation is not clear about differences between both installation methods. I'm using latest laragon (which includes php 7.1.7) for my development environment over Win 10.

Laravel new is installing 'older' doctrine/instantiator 1.0.5 and composer create-project is installing 1.1.0 version.

I'm working in a document about laravel and can't guess why this difference is happening, but it seems composer is getting newer components than laravel official installer. Maybe someone can put some light on this? Thank you

0 likes
3 replies
ejdelmonico's avatar

@raulrola Personally, I use the installer on a Mac. Most folks that I know use composer on Windows machines. The reason that there is probably a difference is that the installer is only updated with a new version of Laravel unless there is a problem. I am guessing but I am sure that is where the difference is.

This is what the latest installer pulls down: wget https://github.com/laravel/laravel/archive/master.zip

You can find the repo here: https://github.com/laravel/installer

Or, it could a newer version of a dependency that is requiring a newer version of doctrine/instantiator because I don't see that dependency in laravel/laravel or laravel/framework

1 like
raulrola's avatar

Reading the installer code and looking inside the latest.zip downloaded by it, I can see that there's a composer.lock file which is being using over at installation. Running composer update after 'laravel new' installator fixes this inconsistency.

Nevertheless there are two more files with differences (public/.htaccess and config/cache.php). As I can see at github, those files have been updated at master branch, but they're not updated at the latest tag 'v5.5.0' of laravel/laravel.

I can't find in any place information about which branch is composer using at create-project, but it seems that uses the latest tag 5.5.0 while the laravel installer zip is based on master branch (I'm just guessing). This can be making the differences.

If that is the case, which are the pros and cons between getting v5.5.0 or master as the base configuration?

jlrdw's avatar

Just pull master, change your dev to match then run composer update, I do this every few days.

Please or to participate in this conversation.