458 Commits

Author SHA1 Message Date
Luke Towers
643463943c Reuse getPluginVersions() in getPluginVersion() 2023-07-03 22:25:24 -06:00
Luke Towers
e621f5938a Add getPluginVersions() to PluginBase 2023-07-03 20:15:52 -06:00
Ben Thomson
0cb5585b4d
Show migration messages even if an exception is thrown (#903)
Fixes #510
2023-06-11 19:54:09 +08:00
Luke Towers
a3d01188fa Exclude ignored Mix packages from MixAssets->getPackages() 2023-06-07 09:29:27 -06:00
Luke Towers
749e20e752 Add visual indicator to artisan mix:list when a given package is ignored. 2023-06-02 22:41:54 -06:00
Luke Towers
a2988a8025
Fixed incorrect variable
🤦
2023-03-03 13:12:28 -06:00
Luke Towers
482d7b5e1d
Fix issue where plugin replacing a version that isn't present in its version.yaml would fail
Fixes https://github.com/wintercms/wn-blog-plugin/issues/33.

Note for @bennothommo @jaxwilko @mjauvin, we may have issues at some point if the replaced plugin goes past the version that the replacing plugin starts its replacement at (for example, if RainLab.Blog starts going past 2.0 then we're going to have to rethink how we handle that migration process so that we can support taking over existing migrations that go past 2.0 on the original plugin while starting the replacement plugin's migrations at 2.0, although there's potentially some issues with that too. Perhaps we could require confirmation to rollback a plugin to the last version that it could be taken over from before allowing the takeover to proceed?
2023-03-03 13:03:36 -06:00
WebVPF
a73b942223
Pluralize the number of items in a folder (#830)
Also fixed the icon for Return to the parent folder
2023-02-04 14:32:36 -06:00
Luke Towers
0aed0b4b02
Classloader improvements (#779)
See wintercms/storm#72
2022-11-29 21:06:46 -06:00
Ben Thomson
8f2d2c7f53 Allow Snowboard debugging to be controlled independently
Adds the "develop.debugSnowboard" config option to enable to disable Snowboard debugging, overriding the default behaviour in following the app debug mode.
2022-11-09 09:59:07 +08:00
Luke Towers
af77cff7b5
Improve IDE knowledge of the PluginBase object 2022-10-06 21:02:26 -06:00
Yigit Koc
2319fc9210
Fix support for Winter Mix commands on Windows (#624)
Includes handling of Windows interrupt/break signals in Powershell to correctly cleanup when terminating the Mix commands early.

Co-authored-by: Ben Thomson <git@alfreido.com>
2022-09-04 11:19:54 +08:00
Ben Thomson
c5dfeffd41 Fix migrations not being run if notes output is not provided.
Fixes an issue in the Builder plugin where tables cannot be created as the migration is not running on save.
2022-08-22 12:50:23 +08:00
Ben Thomson
6e8c8d90f1
Style up migrations and updates using new Laravel CLI components (#641) 2022-08-10 15:48:56 +08:00
Luke Towers
3be17f520b
Normalize database version
Fixes an issue where the version number reported by the database wasn't normalized causing issues when comparing with the normalized version from the filesystem.
2022-07-27 19:05:43 -06:00
Eric Pfeiffer
4e9ff0d753
Ensure plugin dependencies are correctly sorted (#621)
Fixes #620
2022-07-20 20:19:32 -06:00
Luke Towers
6d23e21755 Remove plugin from pluginFlags property if it has no active flags
Fixes an issue that occurs when removing the last flag from a plugin doesn't re-enable it.
2022-07-06 20:21:53 -06:00
Luke Towers
585949abc4 Code review
Removed a bunch of thumbnail generation related methods that are no longer required now that the ImageResizer class handles it all.
2022-07-06 14:42:34 -06:00
Ben Thomson
0add2263b8
Code analysis tweaks (#589)
Implements fixes to some breaking changes introduced in https://github.com/wintercms/storm/pull/64.
2022-07-04 09:22:59 +08:00
Jack Wilkinson
725fbc03f6
Use the ImageResizer for resizing and cropping in the MediaManager (#577)
This implements support for the ImageResizer within the media manager for thumbnail resizing & image cropping. This simplifies and centralizes the image resizing code within the media manager and allows for better support on readonly filesystems by relying on the ImageResizer class to process image modification requests.
2022-06-29 15:52:12 -06:00
Jack Wilkinson
0860a7af92
Added fix to ensure correct normalization and return (#588)
Fixes https://github.com/wintercms/winter/issues/569
2022-06-29 19:56:18 +08:00
Jack Wilkinson
9e4e36bad7
Added replaced plugins to the normalize map to ensure classloader namespace aliasing detects replacements (#585) 2022-06-22 18:14:55 -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
Jack Wilkinson
64b82f0241
[FIX] Fix plugin flags not loading from cache correctly (#582)
Fix issue where flags would not be set correctly from cache
2022-06-21 11:54:13 -06:00
Jack Wilkinson
225313f383
Moved plugin replacement namespace aliasing into register replacement method (#580)
Required to ensure that plugins that are marked as invalid to replace others will not have their namespaces aliases.
2022-06-20 15:05:15 -06:00
Marc Jauvin
018d39f0c8 fix typo 2022-06-18 09:10:58 -04:00
Luke Towers
1bbfb67d8c
Revamp Plugin Manager (#501)
Reworked the internal disabled status checking and monitoring system for plugins.
Added better support for plugin disabled status management.
Added improvements to loading (should aid in improving app bootup speed)
2022-06-02 19:59:41 -06:00
Luke Towers
af311f7001 Normalize versions pulled from the version.yaml
Fixes an issue where a plugin switches from no v prefix in version identifiers to having a v prefix and then gets replaced.
2022-05-13 09:29:43 -06:00
Luke Towers
78a7201461
Force resized images to be regenerated when the source image changes (#178)
This should fix https://github.com/wintercms/winter/issues/177, but it will cause all existing installations to resize all of their already resized images. 

Another alternative could have been to include the hash of the source image; but it would have been at the expense of more work every time this function is called, which could potentially include generating hashes of multiple extremely large (10+ MB) images on every page load if the page includes such images that need to be resized since the filter needs to identify the configuration in order to identify the path to the resized image to check if it needs to return a resizer/ URL or a /resized one.

Further improvements could potentially be made in the isResized()
2022-05-12 15:13:22 -06:00
Luke Towers
02efa1ae1d Fixed ImageResizer support for "system" images (plugin, theme, module assets)
Also improved the developer experience by making it easier to see what the actual issue is if an error is encountered during the resizer initialization process.
2022-03-22 15:14:36 -06:00
Marc Jauvin
e433aa3bb5
Prevent error if accessing undefined $resizer variable (#502) 2022-03-21 09:14:20 +08:00
Luke Towers
765f55e84e
Merge pull request #491 from Flynsarmy/uploadFilepath
Strip double / prefix when uploading to Media root directory
2022-03-13 19:56:32 -06:00
flynsarmy
86938196de Make getMediaPath public 2022-03-14 09:24:14 +10:00
flynsarmy
7a0a41d05c Make getMediaPath and getStorageDisk methods public 2022-03-14 09:23:38 +10:00
Ben Thomson
9a800ad656 Additional test cases and fixes for Version Yaml parser 2022-03-01 09:05:45 +08:00
Luke Towers
05b941e72b More fixes to the mailer 2022-02-28 18:53:15 -06:00
Luke Towers
0e53ff27c8 Fix missing import 2022-02-28 18:29:59 -06:00
Luke Towers
fde586aba0 Merge branch 'develop' into wip/1.2 2022-02-24 23:41:27 -06:00
Luke Towers
c187a0813b
Update modules/system/classes/VersionManager.php 2022-02-24 23:26:36 -06:00
Luke Towers
5e1905623a
Update modules/system/classes/UpdateManager.php 2022-02-24 23:25:15 -06:00
Luke Towers
4d409cfe41
Update modules/system/classes/PluginBase.php 2022-02-24 23:23:07 -06:00
Jack Wilkinson
cdd2f3833a
Added check to ensure filesystem is writable before executing mkdir (#475)
Fixes the System Status widget on readonly filesystems
2022-02-24 22:25:41 -06:00
Jack Wilkinson
efbc5e2e92
Switched file to storage for plugin disabled (#474)
Simple fix to allow for disabled.json to use the storage facade rather than file, this creates support for read only filesystems
2022-02-24 22:06:40 -06:00
Luke Towers
2368afc981 Improved support for autocompletion for the plugin:* commands
Also added System\Console\Traits\HasPluginArgument that can be added to any CLI commands that interact with plugins to provide autocompletion for the plugin argument.
2022-02-23 22:13:34 -06:00
Ben Thomson
defb57f59c Re-establish full YAML processor with tweaks.
Should hopefully handle most cases of pre-YAML 4.x version schemas.

Co-Authored-By: Marc Jauvin <marc.jauvin@gmail.com>
2022-02-23 10:40:47 +08:00
Ben Thomson
f594d44537 Restore original YAML processor, merge changes 2022-02-23 10:09:09 +08:00
Luke Towers
f24a6388cf WIP test adjustments 2022-02-22 19:52:48 -06:00
Marc Jauvin
f38f38f02f fix assetic modules path 2022-02-22 17:33:16 -05:00
Luke Towers
7026baf4b7
Switch to using Assetic v3 instead of embedded Assetic v1 (#470) 2022-02-22 16:17:08 -06:00
Luke Towers
d3d49181fc
Add asset alias for Snowboard extras css (#464)
Co-authored-by: Marc Jauvin <marc.jauvin@gmail.com>
2022-02-20 12:59:07 -06:00