v0.54.0-beta - 2022-08-01
caendesilva
released this
01 Aug 09:34
·
23075 commits
to master
since this release
About
This release refactors and cleans up a large part of the internal code base. For most end users, this will not have any visible effect. If you have developed integrations that depend on methods you may want to take a closer look at the associated pull requests as it is not practical to list them all here.
Overview
Here is a short overview of the areas that are impacted. If you don't know what any of these mean, they don't affect you.
- HydeKernel has been internally separated into foundation classes
- DiscoveryService has been refactored
- Page compiling logic are now handled within the page models
Added
- internal: Adds methods to the HydeKernelContract interface
- Added new filesystem helpers,
Hyde::touch()
, andHyde::unlink()
Changed
- internal: The HydeKernel has been refactored to move related logic to service classes. This does not change the end usage as the Hyde facade still works the same
DiscoveryService::getSourceFileListForModel()
now throws an exception instead of returning false when given an invalid model classDiscoveryService::getFilePathForModelClassFiles
method was renamed toDiscoveryService::getModelSourceDirectory
DiscoveryService::getFileExtensionForModelFiles
method was renamed toDiscoveryService::getModelFileExtension
- The
Hyde::copy()
helper now always uses paths relative to the project - The
Hyde::copy()
helper will always overwrite existing files - Replaced
SitemapService::canGenerateSitemap()
withFeatures::sitemap()
- Replaced
RssFeedService::canGenerateFeed()
withFeatures::rss()
- RSS feed is now always present on all pages, see reasoning in
a93e30020
Deprecated
- Deprecated trait
HasMarkdownFeatures.php
Removed
- Removed deprecated
Hyde::uriPath()
helper - Removed deprecated
CollectionService::findModelFromFilePath()
Upgrade tips
When refactoring the Hyde::copy() helper change, you have two options (that you can combine). If one or more of your inputs are already qualified Hyde paths, use the native copy helper. If you don't want to overwrite existing files, make that check first.
What's Changed
- Refactor Kernel to extract related code into Foundation classes by @caendesilva in #297
- Update HydeKernelContract interface by @caendesilva in #300
- Add psalm static analysis by @caendesilva in #301
- Fix type issues by @caendesilva in #302
- Remove deprecated CollectionService::findModelFromFilePath() by @caendesilva in #304
- Clean up DiscoveryService by @caendesilva in #305
- Delete internal deprecated trait TransfersMediaAssetsForBuildCommands.php by @caendesilva in #306
- Fix minor code issues found by static analyses by @caendesilva in #303
- Handle page compiling within the page models by @caendesilva in #308
- Refactor filesystem helpers by @caendesilva in #311
- Refactor to use features class in more places by @caendesilva in #312
Full Changelog: v0.53.0-beta...v0.54.0-beta