History: Composer
Preview of version: 21
Composer
Composer is a Software Dependency Manager for PHP, which is heavily used by Tiki.
- Official website: https://getcomposer.org/
- Package repositories:
- Main: https://packagist.org/
- Secondary: https://asset-packagist.org (after considering other options)
- Tiki uses Composer to manage 125+ library dependencies in PHP and JavaScript, which are bundled as part of the regular Tiki install.
- Superfluous code is removed via CleanVendors
- Tiki18 has a web-based tool to install Packages, which permits to manage even more libraries.
- cweagans/composer-patches is used to patch dependencies. This is usually used until a patch is incorporated in a released version of a library
- the patches should be versioned as binary files, to avoid problems with line breaks
- The Tiki community runs its own instance of Satis, a Simple static Composer repository generator. Source: satis.json, web: http://composer.tiki.org
- Picking and maintaining dependencies is a critical skill because https://www.reddit.com/r/programming/comments/1z09jq/why_your_software_project_will_slowly_die_without/
- Developers coordinate here: https://dev.tiki.org/Composer
History
- Tiki started in 2002, and there was no such tool to manage dependencies
- The first release of Composer was in 2012.
- In 2013, Tiki started using Composer and progressively porting dependencies (instead using SVN externals)
- From 2014 to 2017: dependencies are progressively migrated to Composer
- In 2017, Composer usage in Tiki was revamped and a web-based Composer tool was added -> Packages
- In 2018, we added support for asset-packagist.org for when dependencies are not on Packagist.org but only NPM or Bower.
- In 2018, a simple way to install packages via FTP: https://packages.tiki.org/
- In 2021, we moved to Composer v2, in time for Tiki23 so it will be nice and robust for Tiki24LTS
Stats
History
Information | Version | |||||
---|---|---|---|---|---|---|
Marc Laporte | 41 | |||||
Marc Laporte | 40 | |||||
Marc Laporte | 39 | |||||
Marc Laporte We keep on refining :-) | 38 | |||||
Marc Laporte | 37 | |||||
Marc Laporte Complete shutdown of Composer 1.x metadata access on Packagist.org | 36 | |||||
Marc Laporte The Tiki 27 plus Build System | 35 | |||||
Marc Laporte | 34 | |||||
Marc Laporte | 33 | |||||
Marc Laporte | 32 | |||||
Marc Laporte composer.lock is useful as well | 31 | |||||
Bernard Sfez / Tiki Specialist Added link to troubleshooting Composer | 30 | |||||
Marc Laporte | 29 | |||||
Marc Laporte | 28 | |||||
Marc Laporte | 27 | |||||
Marc Laporte | 26 | |||||
Marc Laporte | 25 | |||||
Marc Laporte | 24 | |||||
Marc Laporte Switching some links to GitLab | 23 | |||||
Marc Laporte | 22 | |||||
Marc Laporte | 21 | |||||
Aris Bernotas CleanVendors was pointing to sourceforge dead link -> changed to gitlab | 20 | |||||
Marc Laporte Now 125+ ! It is 140 in the list but some are on the way out and only used for old versions of Tiki. | 19 | |||||
Fabio Montefuscolo | 18 | |||||
Fabio Montefuscolo | 17 | |||||
Marc Laporte | 16 | |||||
Marc Laporte asset-packagist.org | 15 | |||||
Marc Laporte | 14 | |||||
Marc Laporte Solution: https://asset-packagist.org/ | 13 | |||||
Marc Laporte Thanks Ricardo! | 12 | |||||
Marc Laporte | 11 | |||||
Marc Laporte CleanVendors | 10 | |||||
Marc Laporte | 9 | |||||
Marc Laporte One more useful link | 8 | |||||
Marc Laporte | 7 | |||||
Marc Laporte | 6 | |||||
Marc Laporte | 5 | |||||
Marc Laporte | 4 | |||||
Marc Laporte | 3 | |||||
Marc Laporte | 2 | |||||
Marc Laporte | 1 |