Newest symfony installer vs composer

前端 未结 3 1772
一个人的身影
一个人的身影 2021-02-05 16:02

I\'d like to know whats the difference when creating new symfony project with new symfony installer that has appeared last time and old-way composer.

I\'ve installed lat

相关标签:
3条回答
  • 2021-02-05 16:16

    As Leggendario already explained, the installer downloads the dist files from the website (a .tar.gz or .zip file). This speeds up the installation process quite a bit.

    However, when building the dist files, symfony.com uses a custom build script which removes some files and changes some things. On the other hand, composer simply downloads the repository for you.

    The main differences:

    • Composer downloads the latest dependencies (as Leggendario pointed out), while the build script contains the latest files at the moment of building.
    • Composer uses the dev versions and thus uses git clone to download the packages. The build script uses only stable packages, which will make Composer use the dist version. Some packages remove test and doc files from their dist files.
    • Composer contains all project related information, like a .gitignore. The build script previously assumed the person installing it didn't have git, so removed this file and other git related files like the .gitkeep files in app/cache and app/logs.

    I any case, both the installer and composer always give you a working version of the Symfony Standard Edition.

    At last, the build script was changed now the installer became the official way of installing. It'll now contain the git related files. On the other hand, it'll not contain the LICENSE file, UPGRADE-*.md files and README.md file. So in the end, we can say that the one installed by the installer is more usable, as it removes useless files.

    0 讨论(0)
  • 2021-02-05 16:17

    Did you update installer as well with :

    symfony self-update
    

    or in windows :

    php symfony.phar self-update
    

    As stated here ?

    That's perhaps one part of the answer. Among differences, the installer seems to deal better with different symfony versions.

    0 讨论(0)
  • 2021-02-05 16:30

    Symfony2 Installer will downloaded it from the web site ( in this case: http://symfony.com/download?v=Symfony_Standard_Vendors_2.6.1.zip ).

    To see the differences between symfony installer and the classic composer create-project is enough to take a look at both composer.lock: https://www.diffchecker.com/oig86oki

    On the left the composer.lock generated after composer create-project, on the right symfony installer. It was obvious to everyone that Symfony2 downloaded from an archive could not have the lastest packages. So, do the update with composer update.

    Again, on the left the composer.lock of composer create-project, on the right the new composer.lock after the update: https://www.diffchecker.com/lj5j2eap

    As we expected. But in the vendor dir there are not the same number of file. Some folders are not there. Some folders with functional tests are not downloaded with symfony installer. You need to force composer to update all packages, or reinstall them.

    0 讨论(0)
提交回复
热议问题