124 Commits

Author SHA1 Message Date
Luke Towers
e05a20eddc
Make wikimedia-merge-plugin less greedy by default
Since the recommended way to install plugins is to use Composer, this greedy configuration would occasionally cause issues where running composer update would fail because the currently installed version of a plugin would have dependencies that would be merged as part of the main composer.json file that would conflict with the next version of the plugin; meaning that in order to install the next version of the plugin you could be forced to first delete the existing one.

It is now recommended to treat this line more like the workspaces section in package.json and manually specify the paths you wish to have the merge plugin handle on a per project basis.
2022-07-18 23:58:15 -06:00
Luke Towers
e565728f55 Update GH actions for official 1.2 release 2022-07-15 01:08:36 -06:00
Luke Towers
5b8d189df4 Fix issues with accessing the expected context variables inside of Twig macros.
This fixes #578 by adding the ability to pass the CMS Controller instance to the CMS Twig Extension removing the reliance on context variables as well as making the expected "global" twig variables inside of the CMS Twig environment actually global within that environment.

Replaces #598 & #593.

Credit to @RomainMazB for the initial implementation.
2022-07-10 01:09:09 -06:00
Luke Towers
e58c768945 Bump minimum Laravel version to 9.1
See 63ca843643
2022-06-24 22:19:00 -06:00
Jack Wilkinson
7fe167c41f
Split tests into relevant module folders
This splits the testing suite into the separate modules as appropriate in order to improve the reliability of the testing suite as a whole and make it easier for developers to have an up to date testing suite from the core to build off of. Additionally the tests are now namespaced and some minor improvements to the PluginManager were made.

Now the PluginManager will internally treat plugin identifiers as lower case strings, only transforming them to their normalized versions when requested by methods like getPlugins() & getAllPlugins(). The idea behind this is that it provides a much simpler way to internally handle checking, especially for plugin replacement where casing could cause issues.

Replaces #576. Fixes #575.
2022-06-21 18:30:30 -06:00
Ben Thomson
582725b25b Merge branch 'develop' into wip/1.2 2022-06-05 21:56:01 +08:00
David Lüder
2dca142d61
Let composer resolve current php process in scripts (#563)
Commands like php8.1 composer.phar install resulted in a successful installation but failed during the execution of the "post-update-cmd"-Script.

`@php` should fix this (and did it on my environment), according to:
https://getcomposer.org/doc/articles/scripts.md#executing-php-scripts
2022-05-24 08:15:30 -06:00
Luke Towers
a9f7f2cd99 Bump phpcs dependency to support // phpcs: comment syntax 2022-02-16 15:36:13 -06:00
Luke Towers
301ffd1985 Update testing dependencies to match Laravel 9 2022-02-14 16:13:56 -06:00
Luke Towers
4b1f22b8ba Update dependencies to match Laravel recommendations 2022-02-13 11:23:17 -06:00
Luke Towers
1085be50b5 Implement autoregistration of Laravel Mix packages for modules, plugins, & themes.
Also renamed default to winter.mix.js instead of winter-mix.js started on the mix:install support.

Refs: #440, #401.
2022-02-10 16:10:07 -06:00
Luke Towers
ae647903a6 Updated dependencies 2021-12-06 15:45:46 -06:00
Eric Pfeiffer
058e9e26bd
Constrain PHP version >= 7.2.9 and 8.0.x (#361) 2021-11-30 13:51:41 -06:00
Joseph Crowell
d64bf0c2c1
Switch to actively maintained faker repository (#74)
Fixes an unmaintained repository warning when running composer updates/installs
2021-04-15 00:57:17 -06:00
Luke Towers
e94fd84177
finalize composer.json for develop 2021-03-11 10:08:54 -06:00
Luke Towers
c047f34156 Merge branch 'wip/rebrand-1.0' into wip/rebrand-develop
# Conflicts:
#	.github/workflows/code-quality-pr.yaml
#	.github/workflows/code-quality-push.yaml
#	.github/workflows/tests.yml
#	README.md
#	composer.json
#	modules/backend/behaviors/ImportExportController.php
#	modules/backend/behaviors/ReorderController.php
#	modules/backend/composer.json
#	modules/backend/models/ExportModel.php
#	modules/cms/ServiceProvider.php
#	modules/cms/classes/Asset.php
#	modules/cms/classes/CmsObject.php
#	modules/cms/classes/CmsObjectCollection.php
#	modules/cms/composer.json
#	modules/system/ServiceProvider.php
#	modules/system/aliases.php
#	modules/system/assets/js/lang/lang.es.js
#	modules/system/assets/js/lang/lang.it.js
#	modules/system/assets/js/lang/lang.zh-tw.js
#	modules/system/assets/ui/storm-min.js
#	modules/system/classes/CombineAssets.php
#	modules/system/classes/ErrorHandler.php
#	modules/system/classes/SystemController.php
#	modules/system/classes/UpdateManager.php
#	modules/system/composer.json
#	modules/system/console/WinterFresh.php
#	modules/system/console/WinterUtil.php
#	modules/system/controllers/updates/_list_toolbar.htm
#	modules/system/providers.php
#	tests/UiTestCase.php
#	tests/functional/backend/AuthTest.php
#	tests/functional/phpunit.xml
#	tests/unit/backend/classes/NavigationManagerTest.php
#	tests/unit/cms/classes/CmsObjectTest.php
#	tests/unit/cms/classes/ControllerTest.php
#	tests/unit/cms/classes/ThemeTest.php
#	tests/unit/plugins/database/PluginModelTest.php
#	tests/unit/plugins/database/ValidationModelTest.php
#	tests/unit/system/console/WinterEnvTest.php
2021-03-11 00:22:09 -06:00
Ben Thomson
05222755b2
Fix missing Storm dependency 2021-03-11 13:03:22 +08:00
Ben Thomson
42374293ed
Add Composer changes directly to develop so we can get Composer going 2021-03-11 13:00:46 +08:00
Luke Towers
57b8702b1e re-add modules to composer.json 2021-03-10 13:25:26 -06:00
Luke Towers
88d45bb191 Add aliasing support to AuthManager permission registration and fixed an issue where the permission cache wasn't cleared after changing the available permissions 2021-03-10 02:36:38 -06:00
Ben Thomson
00968a42ba
Move include priority plugin to require-dev 2021-03-09 10:48:05 +08:00
Ben Thomson
a705f9ba4d Ensure Storm's helpers are given higher priority than Laravel's helpers 2021-03-08 22:00:38 +08:00
Luke Towers
8186fcb1e1 temporarily remove modules from composer.json file to check tests status 2021-03-08 03:02:02 -06:00
Luke Towers
75facce841 Fix composer 2021-03-08 03:01:31 -06:00
Luke Towers
d52ea0ccf8 further WIP on rebrand 2021-03-08 02:41:13 -06:00
Luke Towers
7d80b771fe Initial work on Winter rebrand for 1.0 branch 2021-03-06 04:06:19 -06:00
Luke Towers
5c4bebccc5 Fix Composer 2.0 support.
Credit to @VolCh
2021-03-06 02:52:09 -06:00
Ben Thomson
5c757340ae Adjust dev dependencies
- No longer need AssertGD in main repo, as it was only used for library tests.
- Allow different version of ArraySubset asserts depending on PHP version
2021-03-01 22:57:02 +08:00
Ben Thomson
24a49890cd Remove platform lock for PHP version.
Since we are now relying on different versions of some dependencies depending on whether PHP 7 or 8 is used, we can no longer lock the PHP version down.
2021-03-01 22:51:28 +08:00
Ben Thomson
e9e29c05cf Force PHP version 7.2.9 as per PHP 8 changes to library 2021-03-01 22:44:25 +08:00
Ben Thomson
09b07dcbab Merge remote-tracking branch 'origin/develop' into wip/php-8-testing 2021-03-01 22:39:35 +08:00
Luke Towers
6a9e60dd49
Update PHP platform to support Laravel 6.20+
Refs: b1555ed43f
2021-02-15 02:54:00 -06:00
Tolkam
26b231cad9
PHP 8 compatibility fixes (#5454)
Co-authored-by: Kanstantsin K <kk@tolkam.by>
2021-02-04 11:59:44 +08:00
Ben Thomson
cb06f5965a
Backport fix to drop library tests from October CMS test suite.
Refs: 505b1ce0db
2021-01-13 10:17:39 +08:00
Ben Thomson
505b1ce0db
Drop Rain tests from main October CMS test suite (#5449)
The Rain library is separately tested with a TestCase base class which does not instantiate an application. This removes the conflict caused from the TestCase class which is within October CMS itself, which instantiates an applications and handles things differently.
2021-01-13 10:13:27 +08:00
Luke Towers
4c068bd506 fix tests again 2021-01-04 17:29:48 -06:00
Luke Towers
3f5dcde710 Fix tests by using composer v1 2021-01-04 17:17:39 -06:00
Luke Towers
873fce4603 backport composer.json fixes for composer 2.0 2021-01-04 13:11:47 -06:00
Ben Thomson
825ca91de9 Include DbTestCase from Rain library in autoloader
Ensures that the tests in the main October repo still run.
2020-11-23 22:50:12 +08:00
Luke Towers
a095c1e545 temporary fix for Composer 2.0 compatibility.
See https://github.com/wikimedia/composer-merge-plugin/pull/189
2020-11-22 04:37:42 -06:00
Ben Thomson
fffa6db8d8
Add Mockery as dev dependency, limit PHPUnit versions 2020-11-03 09:51:23 +08:00
Luke Towers
6389554935 fix composer for 1.1 2020-09-06 21:43:20 -06:00
Ben Thomson
4141646105
Implement improved "set build" replacement (#5087)
This change implements an improved "set build" utility through the "october:version" Artisan command that, instead of checking the October CMS server for the latest build, checks the module files against a source manifest kept on GitHub.

This check allows us to accurately determine the build based on the module files in the October CMS installation, and can even detect versions if the module files are modified (except in the cases of extreme modification).

An additional utility has been implemented, "october:manifest", which will build the manifest JSON file in order to provide the maintainers with a way of generating this manifest file as required.

Replaces #4615.
2020-09-02 14:48:08 +08:00
Luke Towers
871c27b8f3 L6 finalizing for merging to develop 2020-08-09 03:31:32 -06:00
Luke Towers
18714ae9f0 Add L6 as a dep to the modules to prevent people with older Laravel versions from accidentally pulling in the L6 update 2020-07-19 01:42:58 -06:00
Ben Thomson
83137dafb8
Remove Dusk "don't discover" flag
Will be fixed instead by https://github.com/octobercms/library/pull/492 when it is merged.
2020-06-23 11:04:25 +08:00
Luke Towers
79f0a9413b Merge branch 'develop' into wip/laravel-6
# Conflicts:
#	composer.json
2020-03-31 04:36:47 -06:00
Luke Towers
2bc4084dff Fixed composer requirement
Composer does not support commit specific requirements when it comes to fetching the composer.json metadata, which means that this particular fix has to specify a tag instead of a commit hash.
2020-03-31 00:54:56 -06:00
Luke Towers
8979d50593 Lock wikimedia/composer-merge-plugin to version that still supported PHP 7.0-7.2.
Support was removed in d21d197a60 (and later relaxed to 7.2.0 as a minimum requirement in the next commit). This change should be reverted when the L6 upgrade is merged in.
2020-03-31 00:46:50 -06:00
Ben Thomson
ef606c76c5
Merge branch 'develop' into wip/laravel-6 2020-03-27 14:52:15 +08:00