[21:41:04] I feel 1.44.0 might be missing the locks on some dependencies in its composer files because 1) it now includes TemplateStyles, 2) running `composer require ` uninstalls 8 packages that come with 1.44, and at least a few of these are required by TemplateStyles [21:41:21] which project should this be reported on Phabrcator under? :\ [21:42:10] Where are you running composer require? in the vendor folder? or the MW core folder? [21:42:11] * Remilia just spent 2 hours trying to figure out what she was doing wrong (since there's SimpleBatchUpload that you are supposed to install using composer) [21:42:18] in MW core folder [21:42:32] for simple-batch-upload [21:42:44] That's working as expected then [21:42:50] Same as it did on previous versions [21:42:51] hmm [21:43:02] why does it kill dependences of a bundled extension then? [21:43:15] because they're not in the composer.json for MW core [21:43:34] nor should they be [21:43:49] this is somewhat confusing to me: they come in the vendor directory of MW 1.44.0 [21:43:54] There's maybe an argument for a composer.local.json that includes the extensions... [21:44:33] the extension itself does not have them in its vendor directory, *and* running composer for that extension, as in its old instructions, does put the dependencies there but the error persists [21:44:43] otherwise I would be satisfied [21:45:34] basically, 1.44.0 freshly extracted: TemplateStyles works; run composer, it no longer works [21:45:39] is this expected? [21:45:51] It'll be the same for AbuseFilter, OATHAuth... [21:46:14] We generally don't recommend running composer directly in extension folders because it leads to a world of conflicts [21:46:49] Basically, if you're running composer yourself in the MW core folder, you should have something setup (composer.local.json using composer merge plugin) to keep extension dependencies [21:46:49] https://www.mediawiki.org/wiki/Extension:TemplateStyles#Potential_errors [21:47:08] hmm [21:47:33] It all depends on the extensions dependancy tree [21:47:34] Some its fine [21:47:40] that's the thing: SimpleBatchUpload instructions do not mention this at all [21:47:48] Some will include libraries MW core has, at diffferent versions [21:47:58] >There is a generally method is update composer under the extension's directory. [21:48:49] that method didn't work for me — the class not found error persisted even with extension/.../vendor filled, and I have no idea why haha [21:50:05] thanks, I guess I'll need to watch composer output more attentively because to be honest different extensions' instructions when mixed give you a nice footgun [21:51:51] Yeah... [21:51:57] (though it is not entirely obvious to me why files bundled in the MW distribution are removed by composer) [21:51:58] It would be very nice if we standardised on an approach [21:52:20] Again.. you're running composer against MW core's composer.json which is different from the one in vendor [21:52:31] if you run your composer require in the vendor folder... you'd probably have more luck [21:52:37] hmm [21:53:11] I'll experiment more tomorrow, thank you! [21:53:12] There is some idea basically that the vendor as presented will work fine for what is bundled, and most people wouldn't touch it [21:54:00] yeah and SBU doesn't tell you to run composer update in vendor [21:54:20] https://www.mediawiki.org/wiki/Extension:SimpleBatchUpload says 'Add the following to the MediaWiki composer.local.json file and run php composer.phar update mediawiki/simple-batch-upload from the MediaWiki installation directory.' [21:55:21] and the reason it was fine on 1.43 is because TemplateStyles had its own vendor/ I guess [21:55:41] this makes sense \o/ [21:56:53] maybe in your checkout... Because you downloaded it from the extension distributor? [21:57:17] But if you kept that old version around too... [21:57:30] yeah, since I run production I always follow the instructions, including upgrade [21:58:08] for 1.43.3 to 1.44.0 I used freshly extracted tgz and only copied *Settings.php, then extracted extensions from Distributor [21:58:23] I always do that with major upgrades to make sure I do not have outdated extensions [21:59:46] I'll research composer in detail tomorrow and see if I can devise a good composer.local.json to carry around [22:01:37] the lazy is just including extensions/*/composer.json and similar for skins