Tim Düsterhus [Tue, 4 Oct 2022 14:19:50 +0000 (16:19 +0200)]
Use a PSR-7 stream in DebugEmailTransport
Tim Düsterhus [Tue, 4 Oct 2022 14:19:29 +0000 (16:19 +0200)]
Mark email transports as final
Tim Düsterhus [Tue, 4 Oct 2022 14:08:10 +0000 (16:08 +0200)]
Improve return types in QuotedMessage
see
a82ca5877919c6c65aceba9191a7c3b5a373d7be
Tim Düsterhus [Tue, 4 Oct 2022 13:42:40 +0000 (15:42 +0200)]
Do not escape the colon in PackageManifest::escape()
A colon is commonly used within the human readable package name.
Tim Düsterhus [Tue, 4 Oct 2022 09:58:21 +0000 (11:58 +0200)]
Merge branch '5.5'
Alexander Ebert [Mon, 3 Oct 2022 11:47:29 +0000 (13:47 +0200)]
Restrict `<textarea>` to resize only vertically by default
See https://www.woltlab.com/community/thread/297374-textarea-nur-vertikal-resizen/
Alexander Ebert [Mon, 3 Oct 2022 11:47:01 +0000 (13:47 +0200)]
Fix the return types of `QuoteMessage`
Tim Düsterhus [Thu, 29 Sep 2022 15:13:35 +0000 (17:13 +0200)]
Properly handle enterprise mode permissions when showing systemIdMismatch in acp/index.tpl
see
b7a2fba6ba6498a1c3a618addf6084ddfc7aa5c9
Tim Düsterhus [Fri, 23 Sep 2022 13:26:42 +0000 (15:26 +0200)]
Merge pull request #5015 from WoltLab/package-node-start-end
Add start and end of queue markers to package node tree
Tim Düsterhus [Fri, 23 Sep 2022 09:40:24 +0000 (11:40 +0200)]
Use `->prepare()` in DatabaseTableChangeProcessor
Tim Düsterhus [Fri, 23 Sep 2022 09:39:00 +0000 (11:39 +0200)]
Add proper parameter and return types to DatabaseTableChangeProcessor
Tim Düsterhus [Fri, 23 Sep 2022 09:38:41 +0000 (11:38 +0200)]
Mark DatabaseTableChangeProcessor as final
Tim Düsterhus [Fri, 23 Sep 2022 09:29:48 +0000 (11:29 +0200)]
Fix DatabaseTableChangeProcessor::diffColumns()
It is no longer guaranteed that a column has the `getDefaultValue()` method.
see
51d5a17d963ad2e72da55ae280619ad023d22ea7
Tim Düsterhus [Fri, 23 Sep 2022 09:17:17 +0000 (11:17 +0200)]
Tim Düsterhus [Fri, 23 Sep 2022 09:14:02 +0000 (11:14 +0200)]
Tim Düsterhus [Tue, 20 Sep 2022 13:58:21 +0000 (15:58 +0200)]
Add start and end of queue markers to package node tree
This allows for logic whenever the logical installation of a single package
(“queue”) starts and finishes.
Tim Düsterhus [Tue, 20 Sep 2022 13:43:32 +0000 (15:43 +0200)]
Support arbitrary `nodeType`s in wcf1_package_installation_node
Tim Düsterhus [Fri, 23 Sep 2022 08:56:26 +0000 (10:56 +0200)]
Fix PHP code style
Tim Düsterhus [Fri, 23 Sep 2022 08:40:16 +0000 (10:40 +0200)]
Merge branch '5.5'
Alexander Ebert [Thu, 22 Sep 2022 16:06:57 +0000 (18:06 +0200)]
Release 5.5.5
Alexander Ebert [Thu, 22 Sep 2022 16:01:05 +0000 (18:01 +0200)]
Merge branch '5.4' into 5.5
Alexander Ebert [Thu, 22 Sep 2022 15:12:13 +0000 (17:12 +0200)]
Release 5.4.23
Tim Düsterhus [Thu, 22 Sep 2022 11:09:54 +0000 (13:09 +0200)]
Remove redundant TTestableCategorizedUserNotificationEvent from ArticleComment*UserNotificationEvent
This is already provided by TTestableArticleCommentUserNotificationEvent.
see #4777
Tim Düsterhus [Wed, 21 Sep 2022 14:36:37 +0000 (16:36 +0200)]
Update for PHP CS Fixer 3.11.0
Tim Düsterhus [Wed, 21 Sep 2022 14:20:17 +0000 (16:20 +0200)]
Remove trailing whitespace in PHP files
Tim Düsterhus [Wed, 21 Sep 2022 14:03:20 +0000 (16:03 +0200)]
Merge pull request #3443 from WoltLab/package-hashing
Add PackageManifest
Alexander Ebert [Wed, 21 Sep 2022 12:15:03 +0000 (14:15 +0200)]
Release 5.5.5 dev 2
Tim Düsterhus [Wed, 21 Sep 2022 07:10:00 +0000 (09:10 +0200)]
Merge pull request #5012 from WoltLab/php-ddl-text-default
Remove IDefaultValueDatabaseTableColumn from AbstractDatabaseTableColumn
Tim Düsterhus [Tue, 20 Sep 2022 14:45:02 +0000 (16:45 +0200)]
Remove TUnsupportedDefaultValue
Tim Düsterhus [Tue, 20 Sep 2022 14:44:49 +0000 (16:44 +0200)]
Stop using TUnsupportedDefaultValue
Tim Düsterhus [Tue, 20 Sep 2022 14:44:12 +0000 (16:44 +0200)]
Remove IDefaultValueDatabaseTableColumn from AbstractDatabaseTableColumn
Tim Düsterhus [Tue, 20 Sep 2022 13:09:08 +0000 (15:09 +0200)]
Update PackageManifest for PHP 8.1
Alexander Ebert [Tue, 20 Sep 2022 13:02:45 +0000 (15:02 +0200)]
Merge pull request #5011 from WoltLab/typescript-lazy-loader
Lazy loader for modules
Alexander Ebert [Tue, 20 Sep 2022 12:50:34 +0000 (14:50 +0200)]
Add explanation for the lazy loader‘s behavior
Alexander Ebert [Tue, 20 Sep 2022 12:18:15 +0000 (14:18 +0200)]
Reliably remove the timer reference to cancel the animation frame
Tim Düsterhus [Wed, 8 Jul 2020 13:31:25 +0000 (15:31 +0200)]
Add PackageManifest.class.php
see #3419
Tim Düsterhus [Tue, 20 Sep 2022 12:07:46 +0000 (14:07 +0200)]
Merge pull request #5010 from WoltLab/package-cleanup4
Clean up package system
Alexander Ebert [Tue, 20 Sep 2022 11:55:07 +0000 (13:55 +0200)]
Document the purpose of the observer functions
Alexander Ebert [Tue, 20 Sep 2022 11:30:37 +0000 (13:30 +0200)]
Add helpers to watch for existing and new elements matching a selector
Tim Düsterhus [Tue, 20 Sep 2022 10:19:51 +0000 (12:19 +0200)]
Add archive location safety check to PackageInstallationDispatcher::getArchive()
see
4911f9e0c7049666dc586a22aefa939eff35e228
Tim Düsterhus [Tue, 20 Sep 2022 10:11:01 +0000 (12:11 +0200)]
Use first-class callables in PackageInstallationScheduler
Tim Düsterhus [Tue, 20 Sep 2022 10:09:10 +0000 (12:09 +0200)]
Mark PackageInstallationScheduler as final
Tim Düsterhus [Tue, 20 Sep 2022 10:07:45 +0000 (12:07 +0200)]
Use spaceship operator in PackageInstallationScheduler::compareUpdateThreadLists()
Tim Düsterhus [Tue, 20 Sep 2022 10:06:19 +0000 (12:06 +0200)]
Use `->prepare()` in PackageInstallationScheduler
Tim Düsterhus [Tue, 20 Sep 2022 09:53:46 +0000 (11:53 +0200)]
Remove dynamic dispatch in Install/UninstallPackageAction
It's easier to analyze the code if the called methods are directly visible.
Inheriting from these actions is not really supported with the legacy exception
of DevtoolsInstallPackageAction which does not add additional steps.
Tim Düsterhus [Tue, 20 Sep 2022 09:37:54 +0000 (11:37 +0200)]
Merge pull request #5008 from WoltLab/package-version
Narrow down the list of acceptable versions in Package::isValidVersion()
Tim Düsterhus [Tue, 20 Sep 2022 08:44:50 +0000 (10:44 +0200)]
Merge branch '5.5'
Tim Düsterhus [Tue, 20 Sep 2022 08:44:15 +0000 (10:44 +0200)]
Merge remote-tracking branch 'origin/5.5' into 5.5
Tim Düsterhus [Tue, 20 Sep 2022 08:43:42 +0000 (10:43 +0200)]
Add PreventMimeSniffing middleware
Tim Düsterhus [Tue, 20 Sep 2022 08:36:29 +0000 (10:36 +0200)]
Merge branch '5.5'
Tim Düsterhus [Tue, 20 Sep 2022 08:35:33 +0000 (10:35 +0200)]
Merge branch '5.4' into 5.5
Tim Düsterhus [Tue, 20 Sep 2022 08:34:58 +0000 (10:34 +0200)]
Merge pull request #5009 from WoltLab/attachment-csp
Add security headers to AttachmentPage
Tim Düsterhus [Tue, 20 Sep 2022 07:19:46 +0000 (09:19 +0200)]
Prevent MIME sniffing for attachments
Tim Düsterhus [Tue, 20 Sep 2022 07:18:56 +0000 (09:18 +0200)]
Configure a restrictive content-security-policy for attachments
Tim Düsterhus [Mon, 19 Sep 2022 21:18:32 +0000 (23:18 +0200)]
Pass int to FileUtil::checkMemoryLimit() in ImageAdapter::checkMemoryLimit()
see
74accff0500ef3d635605b21dd838e8ac673be04
Alexander Ebert [Mon, 19 Sep 2022 16:12:55 +0000 (18:12 +0200)]
Add a lazy loader to watch for selectors to first match
Tim Düsterhus [Mon, 19 Sep 2022 15:19:02 +0000 (17:19 +0200)]
Narrow down the list of acceptable versions in Package::isValidVersion()
Specifically this:
- Excludes the `pl` suffix, which is non-obvious and ordered *after* the
non-suffixed version.
- Excludes non-standard casing for the other suffixes.
Tim Düsterhus [Mon, 19 Sep 2022 15:17:41 +0000 (17:17 +0200)]
Add parameter and return types to Package::isValid*()
Tim Düsterhus [Mon, 19 Sep 2022 15:04:13 +0000 (17:04 +0200)]
Merge pull request #5007 from WoltLab/user-avatar-download
Remove UserAvatarAction::fetchRemoteAvatar()
Marcel Werk [Mon, 19 Sep 2022 15:03:47 +0000 (17:03 +0200)]
Fix wrong indentation in box menus in left sidebar
For active menu items the padding was overwritten causing the indentation to be lost.
Tim Düsterhus [Mon, 19 Sep 2022 15:02:00 +0000 (17:02 +0200)]
Merge pull request #5006 from WoltLab/package-cleanup3
Clean up of package handling logic
Tim Düsterhus [Mon, 19 Sep 2022 14:58:47 +0000 (16:58 +0200)]
Remove UserAvatarAction::enforceDimensions()
No longer used since the previous commit.
Tim Düsterhus [Mon, 19 Sep 2022 14:57:15 +0000 (16:57 +0200)]
Remove UserAvatarAction::fetchRemoteAvatar()
This method still uses the legacy HTTP API and contains quite a bit of implicit
and non-obvious (thus intransparent) logic.
Tim Düsterhus [Mon, 19 Sep 2022 14:50:53 +0000 (16:50 +0200)]
Remove the `PACKAGE_VERSION` constant
The value is more reliably retrieved by fetching the appropriate Package DBO.
Tim Düsterhus [Mon, 19 Sep 2022 14:47:08 +0000 (16:47 +0200)]
Remove the `PACKAGE_NAME` constant
The value is more reliably retrieved by fetching the appropriate Package DBO.
Tim Düsterhus [Mon, 19 Sep 2022 14:26:29 +0000 (16:26 +0200)]
Remove legacy `config.inc.php` from app directories
Tim Düsterhus [Mon, 19 Sep 2022 14:16:22 +0000 (16:16 +0200)]
Replace `strcmp() != 0` with `!==` in PackageInstallationDispatcher
Tim Düsterhus [Mon, 19 Sep 2022 14:12:18 +0000 (16:12 +0200)]
Remove PackageArchive::downloadArchive()
The implicit download of the archive during package installation is unsafe:
Downloading might fail and we don't really have control over whatever is
downloaded.
Tim Düsterhus [Mon, 19 Sep 2022 14:14:30 +0000 (16:14 +0200)]
Merge pull request #5005 from WoltLab/deprecated-sql
Remove all deprecated SQL tables
Tim Düsterhus [Mon, 19 Sep 2022 14:04:25 +0000 (16:04 +0200)]
Unregister `__wcfSetup_developerMode` after use
Tim Düsterhus [Mon, 19 Sep 2022 13:55:22 +0000 (15:55 +0200)]
Update package server URL in install.sql
see
3c4af628ffd1f5c005ee94b5fbbad21027313bad
Tim Düsterhus [Mon, 19 Sep 2022 13:53:10 +0000 (15:53 +0200)]
Remove wcf1_user_notification_to_user
Queries involving this table are a constant source of deadlocks.
Tim Düsterhus [Mon, 19 Sep 2022 13:50:50 +0000 (15:50 +0200)]
Remove wcf1_package_update_optional
Tim Düsterhus [Mon, 19 Sep 2022 13:49:57 +0000 (15:49 +0200)]
Remove wcf1_package_update_compatibility
see
817d1e0a2a5e860bd3b9d3484e210fd9c52aea91
Tim Düsterhus [Mon, 19 Sep 2022 13:31:21 +0000 (15:31 +0200)]
Merge pull request #4999 from WoltLab/disk-cache-cleanup
Clean up DiskCacheSource
Tim Düsterhus [Mon, 19 Sep 2022 13:22:52 +0000 (15:22 +0200)]
Stop using DirectoryUtil in DiskCacheSource
Tim Düsterhus [Mon, 19 Sep 2022 12:41:26 +0000 (14:41 +0200)]
Merge pull request #5004 from WoltLab/dateutil-immutable
Accept \DateTimeImmutable in DateUtil::format()
Tim Düsterhus [Mon, 19 Sep 2022 12:41:07 +0000 (14:41 +0200)]
Merge pull request #5003 from WoltLab/controller-final
Mark various action controllers as final
Tim Düsterhus [Mon, 19 Sep 2022 12:37:23 +0000 (14:37 +0200)]
Accept \DateTimeImmutable in DateUtil::format()
Tim Düsterhus [Mon, 19 Sep 2022 12:16:21 +0000 (14:16 +0200)]
Mark various action controllers as final
There is no good reason to inherit from a controller and possible child classes
are not taken into account during refactoring anyway. Mark these as `final` to
prevent inheritance in the first place.
Tim Düsterhus [Mon, 19 Sep 2022 12:03:43 +0000 (14:03 +0200)]
Add parameter/return types to PackageValidationArchive
This is required to fix PHP 8.1 deprecations.
see #4684
Tim Düsterhus [Mon, 19 Sep 2022 11:58:04 +0000 (13:58 +0200)]
Remove `@` from autoloader
see #4684
Tim Düsterhus [Mon, 19 Sep 2022 11:56:59 +0000 (13:56 +0200)]
Add parameter/return types to PageNode
This is required to fix PHP 8.1 deprecations.
see #4684
Tim Düsterhus [Mon, 19 Sep 2022 10:20:50 +0000 (12:20 +0200)]
Add various parameter/return types to form builder
This is required to fix PHP 8.1 deprecations.
see #4684
Tim Düsterhus [Mon, 19 Sep 2022 10:58:48 +0000 (12:58 +0200)]
Add parameter/return types to StructuredComment
This is required to fix PHP 8.1 deprecations.
see #4684
Tim Düsterhus [Mon, 19 Sep 2022 10:56:57 +0000 (12:56 +0200)]
Add parameter/return types to CategoryNodeTree/ArticleCategoryNodeTree
This is required to fix PHP 8.1 deprecations.
see #4684
Tim Düsterhus [Mon, 19 Sep 2022 10:41:07 +0000 (12:41 +0200)]
Add parameter/return types to TObjectTreeNode
This is required to fix PHP 8.1 deprecations.
see #4684
Tim Düsterhus [Mon, 19 Sep 2022 10:16:34 +0000 (12:16 +0200)]
Add parameter/return types to Breadcrumbs
This is required to fix PHP 8.1 deprecations.
see #4684
Tim Düsterhus [Mon, 19 Sep 2022 10:15:35 +0000 (12:15 +0200)]
Mark Breadcrumbs as final
Tim Düsterhus [Mon, 19 Sep 2022 10:15:03 +0000 (12:15 +0200)]
Add parameter/return types to MenuItemNode
This is required to fix PHP 8.1 deprecations.
see #4684
Tim Düsterhus [Mon, 19 Sep 2022 10:11:36 +0000 (12:11 +0200)]
Add parameter/return types to MetaTagHandler
This is required to fix PHP 8.1 deprecations.
see #4684
Tim Düsterhus [Mon, 19 Sep 2022 10:10:40 +0000 (12:10 +0200)]
Mark MetaTagHandler as final
Tim Düsterhus [Mon, 19 Sep 2022 10:07:53 +0000 (12:07 +0200)]
Add parameter/return types to wcf\util\Url
This is required to fix PHP 8.1 deprecations.
see #4684
Tim Düsterhus [Mon, 19 Sep 2022 10:31:35 +0000 (12:31 +0200)]
Merge pull request #5001 from WoltLab/php8.2
Mark PHP 8.2 as supported
Tim Düsterhus [Mon, 19 Sep 2022 10:02:36 +0000 (12:02 +0200)]
Mark PHP 8.2 as supported
With the update of HTMLPurifier to 4.16.0 the last known incompatibility with
PHP 8.2 is fixed.
see
91bf9126edc2343511f7b54043f1cc203ea3ce4e
Tim Düsterhus [Mon, 19 Sep 2022 09:42:10 +0000 (11:42 +0200)]
Update version constraints in composer.json
Tim Düsterhus [Mon, 19 Sep 2022 09:40:54 +0000 (11:40 +0200)]
Merge branch '5.5'
Tim Düsterhus [Mon, 19 Sep 2022 09:38:13 +0000 (11:38 +0200)]
Merge pull request #5000 from WoltLab/purifier
Update htmlpurifier to 4.16.0
Tim Düsterhus [Mon, 19 Sep 2022 09:31:46 +0000 (11:31 +0200)]
Update htmlpurifier to 4.16.0
Tim Düsterhus [Mon, 19 Sep 2022 09:24:23 +0000 (11:24 +0200)]
Update composer dependencies