On Tue, May 27, 2014 at 2:56 AM, Tony Thomas <01tonytho...@gmail.com> wrote: > Hi, > We were having discussions regarding putting the new > SwiftMailer[1] lib in/out of core, after the merge of the change > https://gerrit.wikimedia.org/r/#/c/135290. Tyler recommends to add the > installer code to the composer.json and not to add the SwiftMailer code to > the core. This creates the swiftmailer lib in core/vendors/swiftmailer. > After discussing with Bryan (https://dpaste.de/XVkL/raw), it looks > like *maintaining > a separate repo* for external libraries looked like the best solution, so > that it uses composer 'properly', and still works for wmf-deployement -- > rather than getting the whole into core. It could be thus deployed via > trebuchet to the cluster and the autoloader pulled in in CommonSetings > (quoting Bryan). > Since the entire mail structure is being reworded to use > swiftmailer, and its a crucial dependancy ( There will be no alternate mail > systems in UserMailer.php -- as both the SMTP and no SMTP cases are handled > effectively by SwiftMailer ), I think we will need to have a separate repo > for that. Please go through the patch-set above and comment your opinions > on including external libraries. > > [1] https://bugzilla.wikimedia.org/show_bug.cgi?id=63483
Thanks for getting this discussion started Tony. I have "been meaning to" write a very similar email regarding discussions from the Zürich hackathon about my own attempt to pull third-party libraries into mediawiki-core [2]. After talking to Ori, Tyler, Matt Walker and others in Zürich I realized that my desire to put the libraries into mediawiki-core was mostly motivated by convenience for deployment on the production wiki[mp]edia cluster. For a variety of reasons, using composer to download and install libraries directly on the production cluster is undesirable. There is an alternative however that can be clearly seen in the mediawiki/extensions/Parsoid/js/contrib.git repository. I think we should create a new repository in gerrit ("mediawiki/core/contrib"? Bikeshed as needed) where composer is used to manage importing specific versions of external libraries that are needed for the wiki[mp]edia cluster deployments. This repository can be deployed to the production cluster using Trebuchet or scap and appropriate changes can be made in operations/mediawiki-config.git to ensure that the autoloader can find the external classes. [2]: https://gerrit.wikimedia.org/r/#/c/119939/ Bryan -- Bryan Davis Wikimedia Foundation <bd...@wikimedia.org> [[m:User:BDavis_(WMF)]] Sr Software Engineer Boise, ID USA irc: bd808 v:415.839.6885 x6855 _______________________________________________ Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l