Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Upcoming changes
Please see the RELEASE_NOTES.md for the changelog for the upcoming release.
About the release cycle
HydePHP consists of two primary components, Hyde/Hyde and Hyde/Framework. Development is made in the Hyde/Develop Monorepo. Major and Minor release versions are made in the Develop project. These releases are synced to the Hyde and Framework projects, and are what this changelog file tracks. Patch release versions are made in the Framework and Hyde projects independently. See https://github.com/hydephp/develop#releases for more information.
1.4.2 - 2023-12-22
Added
- Added info banners when dashboard content sections are empty in https://github.com/hydephp/develop/pull/1494
Changed
- Shortened the path printed to console when using the dashboard to create a page in https://github.com/hydephp/develop/pull/1492
- Code cleanup and style improvements in https://github.com/hydephp/develop/pull/1501, https://github.com/hydephp/develop/pull/1502, and https://github.com/hydephp/develop/pull/1503.
Fixed
- Improved support for running HydePHP through the Phar archive in https://github.com/hydephp/develop/pull/1491
- Fixed wrong section title in the dashboard page in https://github.com/hydephp/develop/pull/1493
1.4.0 - 2023-12-11
Added
- Adds a new fancy output for the realtime compiler serve command in https://github.com/hydephp/develop/pull/1444
- Added support for dot notation in the Yaml configuration files in https://github.com/hydephp/develop/pull/1478
- Added a config option to customize automatic sidebar navigation group names in https://github.com/hydephp/develop/pull/1481
- Added a new
hyde serve --open
option to automatically open the site in the browser in https://github.com/hydephp/develop/pull/1483 - Added a new Live Edit feature to the realtime compiler in https://github.com/hydephp/develop/pull/1458
Changed
- The
docs.sidebar.footer
config option now accepts a Markdown string to replace the default footer in https://github.com/hydephp/develop/pull/1477 - Links in the
sitemap.xml
file are now relative when a site URL is not set, instead of using the default localhost URL in https://github.com/hydephp/develop/pull/1479 - Improves the portability of the realtime compiler to better support running through the standalone executable in https://github.com/hydephp/develop/pull/1488
- Bumps realtime compiler version to v3.2 in https://github.com/hydephp/develop/pull/1489
- Support both route keys and identifiers for specifying sidebar order in https://github.com/hydephp/develop/pull/1432
- Updated sitemap generator to use relative links instead of localhost when missing site URL in https://github.com/hydephp/develop/pull/1479
Removed
- Removed unhelpful boilerplate from the
hyde/hyde
package.json
in https://github.com/hydephp/develop/pull/1436
Fixed
- Fixed dot notation in Yaml configuration not being expanded (https://github.com/hydephp/develop/issues/1471) in https://github.com/hydephp/develop/pull/1478
Internal
- Internal: Only inject custom app config location when missing from parent in https://github.com/hydephp/develop/pull/1485
- Internal: Remove experimental Phar support from internal configuration loader in https://github.com/hydephp/develop/pull/1485
1.3.0 - 2023-10-30
Added
- Added support for setting custom content when calling source file creator actions directly in https://github.com/hydephp/develop/pull/1393
- Added support for setting a custom post date when calling post file creator action directly in https://github.com/hydephp/develop/pull/1393
- Added optional
FileNotFoundException
constructor parameter to set a custom exception message https://github.com/hydephp/develop/pull/1398 - Added a new helper method to the base
Command
class to ask for a string input from the user in https://github.com/hydephp/develop/pull/1416 - The realtime compiler dashboard is now interactive, and allows you to make edits to your project right from the browser https://github.com/hydephp/develop/pull/1392
Changed
- Realtime Compiler: The
DashboardController
class is now marked as internal, as it is not intended to be used outside of the package https://github.com/hydephp/develop/pull/1394 - Updated the realtime compiler server configuration options in https://github.com/hydephp/develop/pull/1395 (backwards compatible)
- Updated the realtime compiler to generate the documentation search index each time it's requested in https://github.com/hydephp/develop/pull/1405 (fixes https://github.com/hydephp/develop/issues/1404)
- Updated the navigation menu generator to remove duplicates after running the sorting method in https://github.com/hydephp/develop/pull/1407 (fixes https://github.com/hydephp/develop/issues/1406)
- Updated the exception message caused by missing source option for featured images to include the path of the file that caused the error in https://github.com/hydephp/develop/pull/1409
- Narrows down parsed
BladeMatter
array types toarray<string, scalar>
(Experimental feature not covered by BC promise) in https://github.com/hydephp/develop/pull/1410 - Internal code refactors and improvements in https://github.com/hydephp/develop/pull/1410, https://github.com/hydephp/develop/pull/1411, and https://github.com/hydephp/develop/pull/1413
Fixed
- Catch RealtimeCompiler dashboard OutOfBoundsException in https://github.com/hydephp/develop/pull/1384
- Updated dropdown navigation menus to support setting priority in config in https://github.com/hydephp/develop/pull/1387 (fixing https://github.com/hydephp/hyde/issues/229)
- Updated the vendor publish command to support parent Laravel Prompts implementation in https://github.com/hydephp/develop/pull/1388
- Fixed wrong version constant in https://github.com/hydephp/develop/pull/1391
- Fixed improperly formatted exception message in https://github.com/hydephp/develop/pull/1399
- Fixed missing support for missing and out of date search indexes when previewing site https://github.com/hydephp/develop/issues/1404 in https://github.com/hydephp/develop/pull/1405
- Fixed duplicate navigation items not giving precedence to config defined items https://github.com/hydephp/develop/issues/1406 in https://github.com/hydephp/develop/pull/1407
v1.2.0 - 2023-06-22
Added
- Added Markdown configuration option for the Tailwind prose classes in https://github.com/hydephp/develop/pull/1357
- Added
prose-img:inline
to bundled TailwindCSS classes in https://github.com/hydephp/develop/pull/1359
Changed
- Internal: Decoupled the monorepo
composer.json
settings in https://github.com/hydephp/develop/pull/1361 - Changed HydePage return types to static in https://github.com/hydephp/develop/pull/1371
Removed
- Removed the Tailwind safelist from the hyde/hyde package (as it is not required there) in https://github.com/hydephp/develop/pull/1362
Fixed
- Fixed two improper method type annotations in the
FrontMatter
class in https://github.com/hydephp/develop/pull/1369
v1.1.0 - 2023-03-22
About
This release is the first since the official release of HydePHP 1.0.0. It contains a number of bug fixes and improvements, but no breaking changes as the project has reached general availability and adheres to the semantic versioning backwards compatibility promise.
Added
- Added a RealtimeCompiler config option to disable rendered pages being stored to disk in https://github.com/hydephp/develop/pull/1334
- Documentation sidebars now support table of contents when using Setext headings in https://github.com/hydephp/develop/pull/1343
Changed
- Updated discovery exception message to include the causing exception message in https://github.com/hydephp/develop/pull/1305
- Cleaned up
PageDataFactory
,NavigationDataFactory
, andBlogPostDataFactory
internals for better type safety in https://github.com/hydephp/develop/pull/1312 - Refactored internals to use the
View
facade over theview
function for better type safety in https://github.com/hydephp/develop/pull/1310 - Refactored the
GeneratesTableOfContents
class internals to be more accurate in https://github.com/hydephp/develop/pull/1343 - Updated to HydeFront v3.3.0 in https://github.com/hydephp/develop/pull/1329
Removed
- Classes
PageDataFactory
,NavigationDataFactory
, andBlogPostDataFactory
no longer use theInteractsWithFrontMatter
trait
Fixed
- Fixed "#1301 Build-time
--pretty-urls
flag is not respected by canonical URLs" in #1302 - Fixed "#1316 Bug: The blog post feed component does not work on nested pages due to not using routes" in #1317
- Fixed "#1318 Nested index pages not showing in navigation" in #1319
- Fixed "#1320 The RSS feed generator does not respect the
--no-api
flag when getting content length for remote images" in #1321 - Fixed "#1322 Wrong HydeFront version constant" in #1323
- Fixed "#1324 Navigation dropdowns should not wrap over multiple lines" in #1325
- Fixed "#1326 PlayCDN integration should work gracefully when there is no Tailwind config file" in #1327
- Fixed "#1330 Clicking outside an activated dropdown should close it" in #1331
- Fixed "#1337 Sidebar table of contents are unable to be generated when using Setext headers" in #1343
- Fixed "#1330 Clicking outside an activated dropdown should close it" in #1332
- Fixed "#1340 Search index is not resolvable when using root documentation page output combined with subdirectory deployment" in #1345
- Fixed "#1313 Bug: Uppercase input is improperly reformatted in the makeTitle Helper" in
134776a
- Fixed navigation dropdowns flickering on page load in #1332
- Added missing function imports in #1309
v1.0.0 - 2023-03-14
Changed
Security
- Bumped Webpack from 5.73.0 to 5.76.1 #1292
v1.0.0-RC.8 - 2023-03-14
Changed
- General compatible code quality improvements https://github.com/hydephp/develop/pull/1284
Removed
- Removed test class references from main codebase https://github.com/hydephp/develop/pull/1287
Fixed
- Fixed "ReadingTime calculation should never be under one minute" #1286 in #1285
- Fixed "The HydeCLI list command logo should respect the --no-ansi setting" #1127 in #1288
v1.0.0-RC.7 - 2023-03-14
Added
- Added generics to the Hyde facade method annotations https://github.com/hydephp/develop/pull/1280
Changed
- Updated 404 page home link to use the index route instead of the site URL https://github.com/hydephp/develop/pull/1278
- Improved generic type usage in the RegisterFileLocations trait https://github.com/hydephp/develop/pull/1279
- Bumped HydeFront to v3.1 https://github.com/hydephp/develop/pull/1281
v1.0.0-RC.6 - 2023-03-14
Removed
- Removed IDE helpers for removed global variables from the IDE helper file. https://github.com/hydephp/develop/pull/1274
- Removed default values from Hyde facade method annotations. https://github.com/hydephp/develop/pull/1275
Fixed
- Added missing version prefix to default generator meta tag value. https://github.com/hydephp/develop/pull/1272
v1.0.0-RC.5 - 2023-03-13
Added
- Add back lost versioning text from compiled HydeFront file by @caendesilva in https://github.com/hydephp/develop/pull/1263
- Create documentation for the HydePHP v1.0 release by @caendesilva in https://github.com/hydephp/develop/pull/1242
Changed
- Use new fixes from StyleCI by @caendesilva in https://github.com/hydephp/develop/pull/1264
- Remove "Beta Software Warning" from Project Readmes by @caendesilva in https://github.com/hydephp/develop/pull/1268
- Format Markdown documents by @caendesilva in https://github.com/hydephp/develop/pull/1270
- Update supported versions in package security policies by @caendesilva in https://github.com/hydephp/develop/pull/1269
Fixed
- Bugfix: Fix missing
justify-between
class on the documentation article header #1265
v1.0.0-RC.4 - 2023-03-12
Added
- Added new method
HydePage::getCanonicalUrl()
to replace deprecatedHydePage::$canonicalUrl
property.
Changed
- Added default RSS feed description value to the config stub in #1253
- Changed the RSS feed configuration structure to be an array of feed configurations in #1258
- Replaced option
hyde.generate_rss_feed
withhyde.rss.enabled
- Replaced option
hyde.rss_filename
withhyde.rss.filename
- Replaced option
hyde.rss_description
withhyde.rss.description
- Replaced option
Removed
- Removed
RouteKey::normalize
method deprecated in v1.0.0-RC.2 - Removed
RenderData:.getCurrentPage
method deprecated in v1.0.0-RC.2 - Removed
RenderData:.getCurrentRoute
method deprecated in v1.0.0-RC.2 - Removed deprecated
HydePage::$canonicalUrl
property (replaced withHydePage::getCanonicalUrl()
). - Removed deprecated
SourceFile::withoutDirectoryPrefix
method only used in one test. - Removed deprecated
CreatesNewPageSourceFile::getOutputPath
method as the save method now returns the path.
Fixed
- Fixed the blog post article view where metadata assembly used legacy hard-coded paths instead of dynamic path information.
v1.0.0-RC.3 - 2023-03-11
Changed
- Made the
HydePage::$title
property readonly
Deprecated
-
HydePage::$canonicalUrl
v1.0.0-RC.2 - 2023-03-10
Added
- Added a new
HydeKernel::currentPage()
method to return the page being rendered.
Changed
- Renamed global
$currentRoute
and$currentPage
variables to$route
and$routeKey
respectively. - Renamed
Render::getCurrentRoute()
toRender::getRoute()
to match renamed property. - Renamed
Render::getCurrentPage()
toRender::getRouteKey()
to match renamed property.
Deprecated
This release candidate version contains a few deprecations, these will be removed before the final 1.0.0 release.
- Deprecate
RouteKey::normalize
method as it no longer performs any normalization. - Deprecate
RenderData::getCurrentRoute()
as it is renamed togetRoute()
to match renamed property.- This change affects the
Render::getCurrentRoute()
andHyde::currentRoute()
facade methods.
- This change affects the
- Deprecate
RenderData::getCurrentPage()
as it is renamed togetRouteKey()
to match renamed property.- This change affects the
Render::getCurrentPage()
andHyde::currentPage()
facade methods.
- This change affects the
Removed
- Remove RouteKey normalization for dot notation support by @caendesilva in https://github.com/hydephp/develop/pull/1241
Fixed
- Update MarkdownPost::getLatestPosts helper to sort using the DateTime object timestamp by @caendesilva in https://github.com/hydephp/develop/pull/1235
- Update PostAuthor::all() to map entries into array keyed by username by @caendesilva in https://github.com/hydephp/develop/pull/1236
- Normalize internal author array keys to lowercase to make author usernames case-insensitive by @caendesilva in https://github.com/hydephp/develop/pull/1237
- Update pretty relative index links to rewrite to
./
instead of/
by @caendesilva in https://github.com/hydephp/develop/pull/1238 - Fixed https://github.com/hydephp/develop/issues/1240
v1.0.0-RC.1 - 2023-03-07
About
Welcome to the first release candidate for HydePHP 1.0! If you are coming from a beta version, please know that there are is a very large amount of breaking changes regarding the internal structure, so it is highly reccomended that you read through the release notes below.
Added
Breaking changes
Abstract
This beta release contains a plethora of breaking changes compared earlier beta versions. So many in fact, it could actually be easier and faster to recreate your project from scratch than to upgrade a particularly complex project. Though it only took me like five minutes to upgrade a simple documentation site, see this diff to see what I did.
The good news however, is that as HydePHP approaches version 1.0, there will no longer be releases like these with breaking changes.
While I've got your attention: read this the section right after this, as you might not need to make any changes at all.
Do I need to make any changes to my project?
If any of these statements are true, you will probably need to make changes to your project, and it might be easiest to copy over your content to a new project.
- You currently only have PHP 8.0 installed, HydePHP now requires PHP 8.1.
- You have written custom code (for example in Blade views) that relies on the old API.
- You have published the built-in Blade views (you should be able to get away by just republishing them).
In all cases, you will most definitely need to republish the configuration files and update the app/bootstrap.php
file.
Upgrade guide
The easiest way to upgrade your project is to copy over your content (source files, etc.) to a new project.
Major breaking changes
These are changes that break backwards compatibility and that are likely to concern users using HydePHP to create sites.
- HydePHP now requires PHP 8.1 or higher.
- Almost all namespaces in the framework have been changed and restructured.
- Many of the internal underling Laravel application files have been moved, this means your
app/
directory will look a bit different. See#873
- The
config/site.php
file has been merged intoconfig/hyde.php
. See#964
for the upgrade guide.
Breaking internal changes
These are changes that break backwards compatibility but are unlikely to concern users using HydePHP to create sites. Instead, these changes will likely only concern those who write custom code and integrations using the HydePHP framework.
These types of changes are handled within the framework ecosystem to ensure they do not affect those using HydePHP to create sites. For example, if a namespace is changed, all internal references to that namespace are updated, so most users won't even notice it. If you however have written custom code that explicitly references the old namespace, you will need to update your code to use the new namespace.
- The Framework package now uses strict types for its source files.
v0.64.0-beta - 2022-10-18
Note from the maintainer
First of all, I'm really sorry for the just insane amount of breaking changes in this update. I believe they are necessary in order to make v1.0 a great and stable release. I hope you'll understand. Most of the changes are likely to not affect normal usage, with the exception of the front matter navigation key changes.
About
This release performs a large amount of refactors and naming changes in preparation for the 1.0 release. Many of these refactors are breaking as several classes are moved around to new namespaces, several are merged, methods renamed, interfaces updated, and more, so forth, etc.
In general, these changes should only affect those who have written custom code that interacts with the framework, though you may need to update your configuration files, and any Blade components you may have published.
What you can expect to break
This update requires the configuration file to be updated.
The most high impact change is change of sidebar front matter options, and related areas. Please try updating your site in a test environment first, to see if you need to update any of your front matter.
Added
- Added a JSON build information manifest automatically generated after a site build #465
- Added a NavigationData object to HydePage.php
- Added a Route::is() method to determine if a given route or route key matches the instance it's called on
- Added a Site model #506
- Added a route:list command #516
- Added support for "dot notation" to the
HydePage::get()
method #497 - Added support for "dot notation" to route key retrievals in the
Route
facade #513 - Added support for plain HTML pages that are copied from the _pages to the _site directory #519
- Added class aliases for all page types so they can be used in Blade components without the full namespace #518
- Added a Redirect helper to create custom static HTML redirects #527
- Added automatic cache busting to the Asset helper #530
Changed
Major breaking changes
A very large number the changes in this update are breaking, as such, not all are marked as breaking. The really major changes that require especially close attention are here listed, please scroll down to see the rest as well as the concrete changes of this high level overview.
- Rename
Features::blogPosts
toFeatures::markdownPosts
- This means you must update your hyde.php config, otherwise blog posts might not be generated - Rename
Features::hasBlogPosts
toFeatures::hasMarkdownPosts
- Renamed base class AbstractPage to HydePage
- Renamed base class AbstractMarkdownPage to BaseMarkdownPage
- Renamed several HydePage methods to be more consistent
- Renamed property $title to $label in NavItem.php
- Renamed property $uri to $url in Image.php
- Removed both RouteContract interfaces (inlined into Route.php, which you now type hint against instead)
- Changed front matter key
navigation.title
tonavigation.label
- Changed front matter key
image.uri
toimage.url
for blog posts
Navigation schema changes
If you are using any of the following front matter properties, you will likely need to update them:
-
navigation.title
is nownavigation.label
- The
label
setting has been removed from documentation pages, usenavigation.label
instead - The
hidden
setting has been removed from documentation pages, usenavigation.hidden
instead - The
priority
setting has been removed from documentation pages, usenavigation.priority
instead
This change also bubbles to the HydePage accessors, though that will only affect you if you have written or published custom code that interacts with the framework.
General
- Merged interface PageContract into abstract class AbstractPage
- Merged interface RouteFacadeContract into the Route model implementation
- Merged interface RouteContract into the Route model implementation
- Merged
getCurrentPagePath()
method into existinggetRouteKey()
method in PageContract and AbstractPage - Replaced schema traits with interfaces, see https://github.com/hydephp/develop/pull/485
- Extracted all constructor methods in page schema traits to a new single trait ConstructPageSchemas
- The
StaticPageBuilder::$outputPath
property is now a relative path instead of absolute - Refactored how navigation and sidebar data are handled, unifying the API, see below for more details
- The algorithm for finding the navigation and sidebar orders has been updated, this may affect the order of your pages, and may require you to re-tweak any custom priorities.
- The navigation link to documentation index page now has default priority 500 instead of 100
- All usages where the RouteContract was type hinted with have been updated to type hint against the Route model implementation instead
- Changed Blade component identifier class 'sidebar-category' to 'sidebar-group'
- Changed Blade component identifier class 'sidebar-category-heading' to 'sidebar-group-heading'
- Changed Blade component identifier class 'sidebar-category-list' to 'sidebar-group-list'
- Changed the Route::toArray schema
- Split the page metadata handling so that global metadata is now handled by the Site model (meta.blade.php must be updated if you have published it)
- The MetadataBag class now implements Htmlable, so you can use it directly in Blade templates without calling
render()
- BladePage $view constructor argument is now optional
- internal: Move responsibility for filtering documentation pages to the navigation menus (this means that documentation pages that are not 'index' are no longer regarded as hidden)
- internal: The HydePage::$navigation property is now a NavigationData object instead of an array, however the object extends ArrayObject, so it should be mostly compatible with existing code
Class and method renames
- Renamed base class AbstractPage to HydePage
- Renamed base class AbstractMarkdownPage to BaseMarkdownPage
- Renamed command class HydeBuildStaticSiteCommand to HydeBuildSiteCommand
- Renamed legacy class FileCacheService to ChecksumService
- Renamed method
Hyde::getSiteOutputPath()
toHyde::sitePath()
- Renamed method
Hyde::formatHtmlPath()
toHyde::formatLink()
- Renamed class Metadata to MetadataBag
Namespace changes
- Moved class StaticPageBuilder to Actions namespace
- Moved class AbstractBuildTask to Concerns namespace
- Moved class AbstractMarkdownPage to Concerns namespace
- Moved class AbstractPage to Concerns namespace
- Moved class Application into Foundation namespace
- Moved class Includes to Helpers namespace
- Moved class Asset to Helpers namespace
- Moved class DocumentationSidebar into Navigation namespace
- Moved class NavigationMenu into Navigation namespace
- Moved class NavItem into Navigation namespace
- Moved class FindsContentLengthForImageObject into Constructors namespace
- Moved class Markdown into Models\Markdown namespace
- Moved class Markdown into Models\Markdown namespace
- Moved class FrontMatter into Models\Markdown namespace
- Moved class Author into Models\Support namespace
- Moved class DateString into Models\Support namespace
- Moved class File into Models\Support namespace
- Moved class Image into Models\Support namespace
- Moved class Route into Models\Support namespace
- Moved class Site into Models\Support namespace
- Moved class ValidationResult into Models\Support namespace
- Moved class MarkdownConverter into Actions namespace
- Moved class MarkdownFileParser into Actions namespace
Page-model specific
- Removed action class FindsNavigationDataForPage.php (merged into HydePage.php via the GeneratesNavigationData trait)
- Renamed method outputLocation to outputPath in HydePage.php
- Renamed method qualifyBasename to sourcePath in HydePage.php
- Renamed method getOutputLocation to outputLocation in HydePage.php
- Renamed method getFileExtension to fileExtension in HydePage.php
- Renamed method getOutputDirectory to outputDirectory in HydePage.php
- Renamed method getSourceDirectory to sourceDirectory in HydePage.php
- Changed named variable $basename to $identifier in HydePage.php
- Removed $strict option from the has() method HydePage.php
- Removed method renderPageMetadata from HydePage.php (use metadata() and/or metadata()->render() instead)
Documentation page front matter changes
- Removed property
$label
inDocumentationPage.php
(use$navigation['title']
instead) - Removed property
$hidden
inDocumentationPage.php
(use$navigation['hidden']
instead) - Removed property
$priority
inDocumentationPage.php
(use$navigation['priority']
instead) - Removed property
$category
inDocumentationPage.php
(use$navigation['group']
instead) - Removed front matter option
label
(usenavigation.label
instead) - Removed front matter option
hidden
(usenavigation.hidden
instead) - Removed front matter option
priority
(usenavigation.priority
instead) - Removed front matter option
category
(usenavigation.group
instead) - To access the sidebar label setting via class property, use
$navigation['label']
instead of$label
, etc. - To access the sidebar label setting via front matter getters, use
navigation.label
instead oflabel
, etc.
Markdown post/pre-processor changes
If you have not written any custom Markdown processors or any custom codes that interacts with default ones, you can ignore this section. Note that list may not be exhaustive.
- Removed interface MarkdownProcessorContract (use MarkdownPreProcessorContract or MarkdownPostProcessorContract instead)
- ShortcodeProcessor now implements MarkdownPreProcessorContract instead of MarkdownProcessorContract
- Renamed method
ShortcodeProcessor::process()
toShortcodeProcessor::preprocess()
- Renamed class AbstractColoredBlockquote to ColoredBlockquotes
- Refactored a large part of the MarkdownService class
Removed
- Removed MarkdownServiceProvider (inlined into HydeServiceProvider)
- Removed interface IncludeFacadeContract
- Removed interface PageContract (merged into abstract class AbstractPage)
- Removed interface MarkdownPageContract (merged into abstract class BaseMarkdownPage)
- Removed interface RouteFacadeContract (merged into the Route.php implementation)
- Removed interface RouteContract (merged into the Route.php implementation)
- Removed deprecated interface AssetServiceContract
- Removed deprecated interface HydeKernelContract
- Removed deprecated and unused abstract class ActionCommand
- Removed unused function
array_map_unique
- Removed method
PageContract::getCurrentPagePath()
(merged intogetRouteKey()
in the same class) - Removed method
AbstractPage::getCurrentPagePath()
(merged intogetRouteKey()
in the same class) - Removed method
Route::getSourceFilePath()
(use newRoute::getSourcePath()
instead) - Removed method
Route::getOutputFilePath()
(use newRoute::getOutputPath()
instead) - Removed unused $default parameter from Hyde::url method
- Using absolute paths for site output directories is no longer supported (use build tasks to move files around after build if needed)
- RealtimeCompiler: Removed support for the legacy bootstrapping file removed in Hyde v0.40
- Removed all experimental schema traits
Fixed
- Fixed validation bug in the rebuild command
- Hide x-cloak elements using inline style in styles.blade.php to prevent flashes until stylesheets are loaded
- Configuration defined navigation labels were documented but not implemented
v0.63.0-beta - 2022-09-01
About
This release contains breaking changes regarding the PostBuildTasks that may require your attention if you have created custom tasks.
Added
- Added the option to define some site configuration settings in a
hyde.yml
file. See #449 - Build tasks are now automatically registered when placed in the app/Actions directory and end with BuildTask.php
Changed
-
Breaking changes to build hooks/tasks:
- Rename BuildHookService to BuildTaskService
- AbstractBuildTask::handle and BuildTaskContract::handle now returns null by default instead of void. It can also return an exit code
- The way auxiliary build actions are handled internally has been changed to use build tasks, see PR #453
- The documentation has been updated to consistently refer to these as tasks instead of hooks
- The RSS feed related generators are now only enabled when there are blog posts
- This means that no feed.xml will be generated, nor will there be any references (like meta tags) to it when there are no blog posts
- The documentation search related generators are now only enabled when there are documentation pages
- This means that no search.json nor search.html nor any references to them will be generated when there are no documentation pages
- The methods in InteractsWithDirectories.php are now static, this does not affect existing usages
- Renamed HydeSmartDocs.php to SemanticDocumentationArticle.php
- Cleans up the Author model class and makes the constructors final
Deprecated
- Deprecated ActionCommand.php as it is no longer used. It will be removed in the next release.
Fixed
- Fixed #443: RSS feed meta link should not be added if there is not a feed
v0.62.0-beta - 2022-08-27
About
This update deprecates two interfaces (contracts) and inlines them into their implementations. It also refactors the documentation page layout to use more Blade components which may cause you to need to republish any manually published components.
The following interfaces are affected: HydeKernelContract
and AssetServiceContract
. These interfaces were used to access the service container bindings. Instead, you would now type hint the implementation class instead of the contract. This change will only affect those who have written custom code that uses or type hints these interfaces, which is unlikely. If this does affect you, you can see this diff to see how to upgrade. https://github.com/hydephp/develop/pull/428/commits/68d2974d54345ec7c12fedb098f6030b2c2e85ee. In short, simply replace HydeKernelContract
and AssetServiceContract
with HydeKernel
and AssetService
.
Changed
- The documentation page layout has been internally refactored to utilize more Blade components. This only affects those who have extended or customized the documentation components. Some documentation components have also been renamed.
Deprecated
- Deprecate interface HydeKernelContract, type hint the HydeKernel::class instead
- Deprecate interface AssetServiceContract, type hint the AssetService::class instead
Removed
- Removed legacy
.js-enabled
class from documentation pages
Fixed
- The list element of the documentation page sidebar had a conflicting ID (
#sidebar
) and has now been changed to#sidebar-navigation
which may break edge cases where this component is styled or interacted with outside of the framework. - Fix documentation page flickering #388
v0.61.0-beta - 2022-08-17
About
Creates a new foundation class, the FileCollection. Which like the other foundation collections, discovers all the files. Running this part of the autodiscovery will further enrich the Hyde Kernel, and allow greater insight into the application. The end user experience should not be affected by this.
Added
- Adds a new FileCollection class to hold all discovered source and asset files
- Adds a new File model as an object-oriented way of representing a project file
Changed
- Move class PageCollection into Foundation namespace
- Move class RouteCollection into Foundation namespace
Fixed
- Fix #424 AbstractMarkdownPage save method should use Hyde::path()
Upgrade guide
Collection namespace change
You only need to do this if you have written custom code that uses the old namespace.
To upgrade the moved collection namespaces, simply replace the following namespace imports:
1-use Hyde\Framework\PageCollection;2+use Hyde\Framework\Foundation\PageCollection;3-use Hyde\Framework\RouteCollection;4+use Hyde\Framework\Foundation\RouteCollection;
v0.60.0-beta - 2022-08-12
About
This release continues refactoring the internal codebase. As part of this, a large part of deprecated code has been removed and the package has been updated accordingly.
Added
- Added
getRouteKey
method toPageContract
andAbstractPage
Changed
- Blog posts now have the same open graph title format as other pages
- Merged deprecated method
getRoutesForModel
intogetRoutes
inRouteCollection
- Cleans up and refactors
GeneratesDocumentationSearchIndexFile
, and marks it as internal - Changed MarkdownFileParser to expect that the supplied filepath is relative to the root of the project (this may break method calls where an absolute path is supplied, see upgrade guide)
- internal: Inline deprecated internal method usage
getOutputPath
replacing itHyde::pages()
helper with inHydeRebuildStaticSiteCommand
Removed
- Removed class
RoutingService
as it is no longer used - Removed deprecated legacy class
Compiler
from the Hyde Realtime Compiler - Removed deprecated interface
RoutingServiceContract
(deprecated in v0.59) - Removed deprecated method
stylePath
fromAssetService
(deprecated in v0.50) - Removed deprecated method
getHomeLink
fromNavigationMenu
(deprecated in v0.50) - Removed deprecated method
parseFile
fromMarkdownDocument
(deprecated in v0.56) - Removed deprecated method
getPostDescription
fromMarkdownPost
(deprecated in v0.58) - Removed deprecated method
getCanonicalLink
fromMarkdownPost
(deprecated in v0.58) - Removed deprecated method
getInstance
fromRoutingService
(deprecated in v0.59) - Removed deprecated method
getRoutesForModel
fromRouteCollection
- Removed deprecated method
getOutputPath
fromHydeRebuildStaticSiteCommand
- Removed deprecated property
$body
fromMarkdownDocument
- internal: Remove deprecated testing helper functions
backup
andrestore
Fixed
- MarkdownFileParser not using the Hyde path #399
- Undefined variable $currentRoute in search.html #421
- Fixes issues in the documentation
search.json
andsearch.html
when using custom output directories
Upgrade Guide
MarkdownFileParser path change
This class now expects the supplied filepath to be relative to the root of the project. This will only affect you if you have written any custom code that uses this class. All internal Hyde code is already updated to use the new path format.
To upgrade, change any calls you may have like follows:
1-return (new MarkdownFileParser(Hyde::path('_posts/foo.md')))->get();2+return (new MarkdownFileParser('_posts/foo.md'))->get();
v0.59.0-beta - 2022-08-11
About
This release refactors the internal routing system. Unless you have written custom code that directly uses these classes and methods, updating should be fairly smooth. If not, you may want to read through the following overview.
The route index has been decoupled from page index and is split into two new collection classes, PageCollection and RouteCollection. The PageCollection contains all the site's parsed pages, and the RouteCollection contains all the page routes.
The RoutingService class remains for compatibility with existing code, but now only forwards calls to the new RouteCollection. The RoutingServiceContract interface is now deprecated.
Added
- Adds a new RouteCollection class
- Adds a new PageCollection class
- Adds a $routeKey property to the AbstractPage class
- The page and route collections are now stored as properties of the HydeKernel
- Adds an option to the
Hyde::image()
helper to request the returned image path use the configured base URL if it's set - Adds a new
save()
method to Markdown-based pages, to save the page object to the filesystem - Added new internal helpers to improve serialization of object models
Changed
- breaking: Navigation menu priorities now use route keys instead of slugs, see upgrade notes below
- Removed constructor from RoutingServiceContract interface
- Refactored RoutingService to use the new RouteCollection class
- AbstractPage::all() now returns a PageCollection, and includes the source file path as the array key
- Improved ConvertsArrayToFrontMatter action, which now supports nested arrays
- An exception is now thrown when attempting to get the path to an Image without a defined source path or URI
- internal: The HydeKernel is now stored as a singleton within the kernel class, instead of the service container
- internal: Refactor commands with shared code to extend new abstract base class
- internal: A large part of the codebase has been refactored and cleaned up while making an effort to maintain compatibility with existing code
Deprecated
- Deprecated interface RoutingServiceContract
- Deprecated RoutingServiceContract::getInstance()
Removed
- Removed all non public-contract methods from RoutingService
Fixed
- Fix #383: Navigation menu titles can't be set in BladeMatter
- Fix #385:
DocumentationPage::home()
did not work for custom documentation page output directories - Fix #386: Documentation page sidebar labels were not constructed from front matter
- Fix bugs relating to the documentation sidebar labels that appeared in the last release
- Fix #410: Search index generator breaks when storing documentation page source files in subdirectories
Upgrade notes
Route keys are now used in navigation config
Prior to this release, the navigation menu priorities were based on the page slug. This has been changed to the route key. A route key in Hyde is in short the compiled page's path, relative to the site's root. For example, _site/foo/bar.html
has the route key foo/bar
.
This change is breaking as the order of navigation items may be changed unless the configuration is updated. However, this is really easy. Just change docs
to docs/index
in the config/hyde.php
file.
1'navigation' => [2 'order' => [3 'index' => 0,4 'posts' => 10,5- 'docs' => 100,6+ 'docs/index' => 100,7 ],8],
If you have used the config to hide the documentation page from the navigation menu, you also need to use the route key by changing 'exclude' => ['docs']
to 'exclude' => ['docs/index']
.
The same goes if you have used the config to change the navigation titles for the home and documentation pages.
v0.58.0-beta - 2022-08-08
About
This update contains breaking changes to the internal API regarding page models. This should only affect you directly if you've written any code that interacts with the internal page models, such as constructing them using non-built-in Hyde helpers.
The update makes large changes to how dynamic data is constructed. Instead of generating page data at runtime, now the data is generated when constructing a page object. This gives the major benefit of being able to see all dynamic data right away, without having to render the page.
The way metadata tags are handled internally is also refactored. The rendered result should not be affected.
Added
- Added
compile()
method toFacades\Markdown
, replacing theparse()
method of the same class - Adds new actions to handle complex dynamic constructors
- Adds new front matter schema traits to define the public API for front matter and hold their data
- Adds new Meta::link() helper to create
<link>
tags - Adds new Meta::get() helper to get the metadata array
- Adds a new system for creating and storing page metadata
- Adds several new metadata model classes
Changed
- Breaking: Rename AbstractMarkdownPage constructor parameter
slug
toidentifier
- Breaking: Rename AbstractPage property
slug
toidentifier
- Breaking: Change
AbstractMarkdownPage
constructor argument positions, puttingidentifier
first - Breaking: Splits Markdown data from MarkdownDocument into new Markdown model class
- Breaking: The default
config/hyde.php
file now usesModels\Author
instead ofHelpers\Author
- Major: Restructure internal page data to use new front matter schema traits
- Begin changing references to slugs to identifiers, see motivation below
- Makes some helpers in SourceFileParser public static allowing them to be used outside the class
- Page metadata is now stored as a page property, making it easier to see and understand
- Page metadata is now generated at compile time instead of build time
- Page metadata types are now strongly typed, however all types are String able, so end usage is not affected
Deprecated
- Deprecated
Facades\Markdown::parse()
, useFacades\Markdown::render()
instead - Deprecated
Facades\Markdown.php
, will be merged intoModels\Markdown.php
Removed
- Removed
Facades\Markdown.php
, merged intoModels\Markdown.php
- Removed
body()
method fromMarkdownDocumentContract
interface and all its implementations. Usemarkdown()->body()
(or cast to string) instead - Removed
body
property from Markdown pages. Usemarkdown()->body()
(or cast to string) instead - Removed deprecated
Helpers\Author
(fully merged intoModels\Author
, simply swap namespace to upgrade) - Removed metadata constructor helpers from the MarkdownPost class as it is now handled in the new metadata class
- Several internal single-use helper traits have been merged into their respective classes
Fixed
- Fix Path property in Image model should be relative to media directory #359
- Fix Add toString method to Image model to get the link #370
- Fix Blog post OpenGraph images must be resolved relatively #374
- Fix PageContract needs compile method #366
Upgrade guide and extra information
Rename slugs to identifiers
Previously internally called slug(s)
, are now called identifier(s)
. In all honestly, this has 90% to do with the fact that I hate the word "slug".
I considered using basename
as an alternative, but that does not fit with nested pages. Here instead is the definition of an identifier
in the context of HydePHP:
An identifier is a string that is in essence everything in the filepath between the source directory and the file extension.
So, for example, a page source file stored as _pages/foo/bar.md
would have the identifier foo/bar
. Each page type can only have one identifier of the same name.
But since you could have a file with the same identifier in the _posts
directory, we internally always need to specify what source model we are using.
The identifier property is closely related to the page model's route key property, which consists of the site output directory followed by the identifier.
Heavily refactor constructors of Markdown-based page models
Adds a new interface to the Markdown page model constructors, that expects instantiated FrontMatter and MarkdownDocument objects. Normally you would use the SourceFileParser to create the object.
This means that the constructor for all Markdown-based pages is completely changed. To use a format matching the old behaviour, you can use the MarkdownPageModel::make
method.
Title property has been removed from page model constructors
The following syntax has been removed: new MarkdownPage(title: 'Foo Bar')
Instead, you can add it with front matter: MarkdownPage::make(matter: ['title' => 'Foo Bar'])
Markdown pages now have front matter in an object instead of array
This means that instead of the following $post->matter['title']
, you would use $post->matter('title')
, which allows you to add a fallback like so: $post->matter('title', 'Untitled')
Author helper has been merged into the model
The deprecated Helpers\Author
has been fully merged into Models\Author
. Simply swap namespaces to upgrade.
1-use Hyde\Framework\Helpers\Author;2+use Hyde\Framework\Models\Author;
v0.57.0-beta - 2022-08-03
About
This update refactors the internal page source model parsing. This will likely not affect you directly, however, if you have written custom code that interacts with any class relating to the PageParser contract, you'll want to take a closer look at the changes.
Added
- Added a new static shorthand to quickly parse Markdown files into MarkdownDocuments (
MarkdownFileParser::parse()
) - Added
toArray()
method to MarkdownDocuments, which returns an array of all the body lines
Changed
- All source model parsing is now handled by the new SourceFileParser action
- Blog post front matter no longer includes merged slug
- MarkdownDocument now implements the
Arrayable
interface - Markdown page models no longer includes the slug merged into the front matter
- All Markdown page models now have the title property inferred when parsing
- internal: The DocumentationPage slug now behaves like other pages, and the basename is produced at runtime, see below
- internal: Refactor search index generator to use route system
Deprecated
- Deprecated
MarkdownDocument::parseFile()
, will be renamed toMarkdownDocument::parse()
Removed
- The PageParserContract interface, and all of its implementations have been removed
- Removed
$localPath
property from DocumentationPage class, see above - Removed trait HasDynamicTitle
v0.56.0-beta - 2022-08-03
About
This update makes changes to the internal Markdown services. If you have written code or integrations that uses any of these services, you may want to take a closer look. Otherwise, this should not affect you much.
Many Markdown related classes have been moved to a new namespace, and the classes themselves have been restructured. Again, this only affects those who in the past have used these classes outside of what Hyde normally provides.
Due to the nature of this refactor, where so much have been changed, not everything is documented here. See the attached pull request for the full Markdown change diff: https://github.com/hydephp/develop/pull/318
Added
- Added model FrontMatter.php
- Create MarkdownConverter.php
- Create MarkdownServiceProvider.php
- internal: Added Benchmarking framework
Changed
- Move
Markdown::hasTableOfContents()
toDocumentationPage::hasTableOfContents()
- Move most Markdown related classes into
Modules\Markdown
namespace - Rename MarkdownConverterService to MarkdownService
- Rename MarkdownFileService to MarkdownFileParser
- Replace CommonMarkConverter with Hyde MarkdownConverter
Removed
- Remove old MarkdownConverter action
- Delete HasMarkdownFeatures.php
v0.55.0-beta - 2022-08-01
About
This update removes the deprecated LegacyPageRouter class from the Hyde Realtime Compiler (HydeRC). Along with this release, the HydeRC is now on version 2.5, and requires Hyde version 0.48.0-beta or higher.
Changed
- hyde/hyde now requires HydeRC version 2.5 or higher.
- hyde/realtime-compiler no longer supports Framework versions older than v0.48.0-beta.
Removed
- Remove the deprecated LegacyPageRouter class from the HydeRC.
v0.54.0-beta - 2022-08-01
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 class -
DiscoveryService::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.
v0.53.0-beta - 2022-07-30
About
This release refactors some internal code. If you have published any Blade views or created any custom integrations, you may want to take a closer look at the changes. Otherwise, this should not affect most existing sites.
Added
- Added
Hyde::url()
andHyde::hasSiteUrl()
helpers, replacing now deprecatedHyde::uriPath()
helper
Changed
- The HTML page titles are now generated in the page object, using the new
htmlTitle()
helper - Renamed helper
Hyde::pageLink()
toHyde::formatHtmlPath()
- internal: DiscoveryService.php is no longer deprecated
- internal: CollectionService.php was merged into DiscoveryService
- internal: Renamed trait GeneratesPageMetadata to HasArticleMetadata
Deprecated
- Deprecated
Hyde::uriPath()
, useHyde::url()
orHyde::hasSiteUrl()
instead - Deprecated
Helpers\Author.php
, will be merged intoModels\Author.php
Removed
- internal: CollectionService.php has been removed, all its functionality has been moved to DiscoveryService
- internal: The
$currentPage
parameter of a few methods has been removed, it is no longer necessary due to it being inferred from the view being rendered
v0.52.0-beta - 2022-07-29
About
This update internally refactors how documentation sidebars are handled. If you have published Blade views relating to these, or built framework integrations you may want to take a closer look at the changed files.
Added
- Hyde now supports nested pages!
Changed
- internal: Refactor how documentation sidebars are generated and handled
- internal: (Sidebar) categories are now internally referred to as "groups"
- internal: The sidebar related Blade views have been renamed
-
DocumentationPage::indexPath()
was renamed toDocumentationPage::home()
and now returns aRoute
instead of a URL. It no longer resolves to README files.
v0.51.0-beta - 2022-07-28
Added
- Add Laravel Tinker as a development dependency for the Monorepo
- Improved the
hyde make:page
command to add page type selection shorthands
Removed
- Removed test files from the hyde/hyde sub repository
v0.50.0-beta - 2022-07-26
About
This update makes breaking changes to the configuration. You will need to update your configuration to continue using the new changes. Each one has been documented in this changelog entry, which at the end has an upgrade guide.
Overview of major changes
As there are a lot of changes, here is first a quick overview of the major ones. See the full list after this section.
- Alpine.js is now used for interactions.
- HydeFront has been rewritten and is now on version 2.x.
- The hyde.css and hyde.js files have now for all intents and purposes been merge into app.css and refactored to Alpine.js, respectively.
- The documentation pages are now styled using TailwindCSS instead of Lagrafo.
- Moved some configuration options from hyde.php to site.php
- Moved Composer dependencies, you will laravel-zero/framework added to your Hyde composer.json file.
Note that the goal with this release is to make the framework more stable and developer friendly, but without it affecting the end user experience. For example, the visual experience as well as the interactions of the refactored documentation pages are minimal and most users won't notice any change. However, for developers, the changes are significant and will reduce a lot of complexity in the future.
Added
- Added Alpine.js to the default HydePHP layout
- Added a new configuration file,
config/site.php
, see below - Added RSS feed configuration stubs to
config/site.php
- Added an
Includes
facade that can quickly import partials - Added an automatic option to load footer Markdown from partial
- Added the
hyde.load_app_styles_from_cdn
option to load_media/app.css
from the CDN
Changed
- Move laravel-zero/framework Composer dependency to hyde/hyde package
- Moved site specific configuration settings to
config/site.php
- Moved config option
hyde.name
tosite.name
- Moved config option
hyde.site_url
tosite.url
- Moved config option
hyde.pretty_urls
tosite.pretty_urls
- Moved config option
hyde.generate_sitemap
tosite.generate_sitemap
- Moved config option
hyde.language
tosite.language
- Moved config option
hyde.output_directory
tosite.output_directory
- Moved config option
- The default
site.url
is nowhttp://localhost
instead ofnull
- Merged configuration options for the footer, see below
- Rebrand
lagrafo
documentation driver toHydeDocs
- Hyde now requires a minimum version of HydeFront v2.x, see release notes below
- internal: Refactor navigation menu components and improve link helpers
- internal: The main Hyde facade class has been split to house the logic in the HydeKernel class, but all methods are still available through the new facade with the same namespace
- internal: Move tests foundation to new testing package
- internal: Renamed
GeneratesTableOfContents.php
toGeneratesSidebarTableOfContents.php
Removed
- Removed
\Hyde\Framework\Facades\Route
. You can swap out usages with\Hyde\Framework\Models\Route
without side effects. - Removed ConvertsFooterMarkdown.php
- Removed internal
$siteName
config variable fromconfig/hyde.php
Fixed
- Fixed bug #260 where the command to publish a homepage did not display the selected value when it was supplied as a parameter
- Fixed bug #272, only generate the table of contents when and where it is actually used
- Fixed bug #41 where search window does not work reliably on Safari
Upgrade Guide
Here are some instructions for upgrading an existing project. You should also read the standard upgrade guide first for general advice, https://hydephp.com/docs/1.x/updating-hyde.
If you use Git, you may be able to automatically configure some of these by merging https://github.com/hydephp/hyde into your project. Alternatively, you can download the release and unzip it into your project directory, and using GitHub Desktop or VS Code (or whatever you use) to stage the new changes without affecting your project's configuration.
Core file changes
Here is an overview of the core files that have changed and that you will most likely need to update. Some of these have detailed instructions further down.
-
config/site.php
(new) -
config/hyde.php
(changed) -
config/app.php
(changed) -
app/bootstrap.php
(changed) -
composer.json
(changed) -
package.json
(changed) -
resources\assets\app.css
(changed) -
_pages\404.blade.php
(changed)
A large number of Blade views have also changed. You may want to update pretty much all of them. See the diff for a list of files that have changed.
Updating Composer
When updating an existing project, you may need to add laravel-zero/framework to your Hyde composer.json file.
1"require": {2 "php": "^8.0",3 "hyde/framework": "^0.50",4 "laravel-zero/framework": "^9.1"5},
Using the new site config
Site-specific config options have been moved from config/hyde.php
to config/site.php
. The Hyde config is now used to configure behaviour of the site, while the site config is used to customize the look and feel, the presentation, of the site.
The following configuration options have been moved. The actual usages remain the same, so you can upgrade by using copying over these options to the new file.
-
hyde.name
-
hyde.site_url
(is now justsite.url
) -
hyde.pretty_urls
-
hyde.generate_sitemap
-
hyde.language
-
hyde.output_directory
If you have published and Blade views or written custom code that uses the config options, you may need to update them. You can do this by republishing the Blade views, and/or using search and replace across your code. VSCode has a useful feature to make this a breeze: CMD/CTRL+Shift+F
.
Using the new footer config
The footer configuration options have been merged. Prior to this update, the config option looked as follows:
Filepath: config/hyde.php1'footer' => [2 'enabled' => true,3 'markdown' => 'Markdown text...'4],
Now, the config option looks as follows:
Filepath: config/hyde.php1// To use Markdown text2'footer' => 'Markdown text...',3 4// To disable it completely5'footer' => false,
As you can see, the new config option is a string or the boolean false instead of an array. We use the same option for both the Markdown text and the footer disabled state.
Updating Blade Documentation Views
This release rewrites almost all of the documentation page components to use TailwindCSS. In most cases you won't need to do anything to update, however, if you have previously published the documentation views, you will need to update them.
Release Notes for HydeFront v2.x
HydeFront version 2.0 is a major release and has several breaking changes. It is not compatible with HydePHP versions lower than v0.50.0-beta. HydePHP versions equal to or later than v0.50.0-beta require HydeFront version 2.0 or higher.
Many files have been removed, as HydePHP now uses Alpine.js for interactions, and TailwindCSS for the documentation pages.
HydeFront v1.x will receive security fixes only.
v0.49.0-beta - 2022-07-15
Added
- Added configuration option to quickly enable HTML tags in Markdown
Changed
- The DataCollection module now no longers filters out files starting with an underscore
- Moves the scripts that create the documentation page search window to HydeFront CDN
- Updated autoloaded HydeFront version to 1.13.x
v0.48.0-beta - 2022-07-10 - Internal Pseudo-Router Service Refactoring
About
This release brings a massive refactor in the way the HydePHP auto-discovery process works. It does this by centralizing all discovery logic to the new pseudo-router module which discovers and maps all source files and output paths.
The update also refactors related code to use the router. Part of this is a major rewrite of the navigation menu generation. If you have set any custom navigation links you will need to update your configuration files as the syntax has changed to use the NavItem model instead of array keys.
You will also need to update navigation related Blade templates, if you have previously published them.
Added
- Added a pseudo-router module which will internally be used to improve Hyde auto-discovery
- Added a Route facade that allows you to quickly get a route instance from a route key or path
- Added a new NavItem model to represent navigation menu items
- Added a new configuration array for customizing the navigation menu, see the
hyde.navigation
array config
Changed
- Changed how the navigation menu is generated, configuration files and published views must be updated
- Changed bootstrap.php to Stt Hyde base path using dirname instead of getcwd
- Reversed deprecation for
StaticPageBuilder::$outputPath
- internal refactor: Creates a new build service to handle the build process
Deprecated
- Deprecated
DiscoveryService::findModelFromFilePath()
- Use the Router instead. - Deprecated
DiscoveryService.php
- Use the Router instead. (Some helpers may be moved to FluentPathHelpers.php)
Removed
- The "no pages found, skipping" message has been removed as the build loop no longer recieves empty collections.
- Removed the
hyde.navigation_menu_links
andhyde.navigation_menu_blacklist
configuration options, see new addition above.
v0.47.0-beta - 2022-07-05
Added
- Add macroable trait to Hyde facade
v0.46.0-beta - 2022-07-03
Added
- Added
DocumentationPage::indexPath()
, replacingHyde::docsIndexPath()
Changed
- internal: Move service provider helper methods to the RegistersFileLocations trait
- internal: Add helpers.php to reduce repeated code and boilerplate
- internal: Change internal monorepo scripts for semi-automating the release process
- Added
DocumentationPage
as a class alias, allowing you to use it directly in Blade views, without having to add full namespace.
Removed
- Remove deprecated
Hyde::getDocumentationOutputDirectory()
, replaced withDocumentationPage::getOutputDirectory()
- Remove deprecated
Hyde::docsIndexPath()
, replaced withDocumentationPage::indexPath()
- Remove deprecated
DocumentationPage::getDocumentationOutputPath()
, useDocumentationPage::getOutputPath()
instead
Fixed
- Fix minor bug in Blade view registry where merged array was not unique
v0.45.0-beta - 2022-07-03
Added
- Add dummy file to persist base Tailwind utilities https://github.com/hydephp/develop/pull/141
- Add configuration feature for DataCollections to enable/disable automatic _data directory generation https://github.com/hydephp/develop/pull/142
Changed
- DataCollections are now disabled by default
- Rename internal trait RegistersDefaultDirectories to RegistersFileLocations
Removed
- Removes the automatic check to see if the configuration file is up to date https://github.com/hydephp/develop/pull/143
- Remove deprecated
Hyde::titleFromSlug()
helper, useHyde::makeTitle()
instead - Removed deprecated CollectionService::getBladePageList, is renamed to getBladePageFiles
- Removed deprecated CollectionService::getMarkdownPageList, is renamed to getMarkdownPageFiles
- Removed deprecated CollectionService::getMarkdownPostList, is renamed to getMarkdownPostFiles
- Removed deprecated CollectionService::getDocumentationPageList, is renamed to getDocumentationPageFiles
Fixed
- Fix bug causing files starting with underscores to add empty values to the file collection array https://github.com/hydephp/develop/pull/140
v0.44.0-beta - 2022-07-02 - Internal code restructuring
About
This release mainly makes internal changes to the Framework API. If you are an end user, most of the changes are not relevant. However, if you are a package developer, or if you have published Blade views or otherwise extended Hyde you may want to take a look as there are internal breaking changes.
Added
- Added Hyde::makeTitle() helper, an improved version of Hyde::titleFromSlug()
- Added new helper method render() to MarkdownDocuments to compile the Markdown to HTML, fixes https://github.com/hydephp/develop/issues/109
- Added
MarkdownPost
as a class alias, allowing you to use it directly in Blade views, without having to add full namespace.
Changed
- Update default HydeFront version to v1.12.x
- Updates the codebase to use the new Hyde::makeTitle() helper
- Several internal changes to how page models are structured, https://github.com/hydephp/develop/pull/122
- Internal: Separate the MarkdownDocument into a dedicated abstract page class, https://github.com/hydephp/develop/pull/126
- Moved
Hyde\Framework\Models\BladePage
to new namespaceHyde\Framework\Models\Pages\BladePage
- Moved
Hyde\Framework\Models\MarkdownPage
to new namespaceHyde\Framework\Models\Pages\MarkdownPage
- Moved
Hyde\Framework\Models\MarkdownPost
to new namespaceHyde\Framework\Models\Pages\MarkdownPost
- Moved
Hyde\Framework\Models\DocumentationPage
to new namespaceHyde\Framework\Models\Pages\DocumentationPage
- Improves how the site output directory is emptied, helping prevent accidental deletion of files https://github.com/hydephp/develop/pull/135
- The emptying of the site output directory can now be disabled by setting the new config option
hyde.empty_output_directory
to false https://github.com/hydephp/develop/pull/136
Deprecated
- Deprecated Hyde::titleFromSlug(), use Hyde::makeTitle() instead
- Deprecate DocumentationPage::getDocumentationOutputPath()
- Deprecate Hyde::docsIndexPath()
- Deprecate Hyde::getDocumentationOutputDirectory()
- Deprecate RegistersDefaultDirectories.php pending rename
- Deprecated CollectionService::getBladePageList, is renamed to getBladePageFiles
- Deprecated CollectionService::getMarkdownPageList, is renamed to getMarkdownPageFiles
- Deprecated CollectionService::getMarkdownPostList, is renamed to getMarkdownPostFiles
- Deprecated CollectionService::getDocumentationPageList, is renamed to getDocumentationPageFiles
Removed
- Remove unused
$withoutNavigation
variable from the app layout - Removed deprecated 'hyde.site_output_path' config option (use
hyde.output_directory
instead) - Remove long deprecated
hyde.version
andframework.version
service container bindings - Removed deprecated StarterFileService which was deprecated in v0.20.x
Fixed
- Fix style bug https://github.com/hydephp/develop/issues/117, Hyde title helper should not capitalize non-principal words
v0.43.0-beta - 2022-06-25 - File-based Collections
Added
- Added configuration option
hyde.media_extensions
to allow you to specify additional comma separated media file types. https://github.com/hydephp/develop/issues/39 - Adds a safer config option
hyde.output_directory
for customizing the output directory - Adds a file-based way to create and interact with collections, https://hydephp.com/docs/1.x/collections
Removed
- Removed the
--pretty
build command option which was deprecated in v0.25.x - Removed deprecated internal AssetManager trait which was replaced with the Asset facade
Fixed
- HydeRC: Fixes a bug in the auxiliary exception handler leading to unintentional recursion causing out of memory errors in both the browser and the PHP server.
v0.42.0-beta - 2022-06-24
Added
- Added a
@section
hook to the docs layout to allow yielding content - HydeRC: Add ping route to check if a HydeRC server is running https://github.com/hydephp/realtime-compiler/issues/9
- internal: Added an HtmlResponse object to the realtime compiler
Changed
- Change the the Prettier integration to only modify HTML files https://github.com/hydephp/develop/issues/102
- Change how the
docs/search.html
page is rendered, by handling page logic in the view, to decouple it from the build search command
Fixed
- HydeRC: Rewrite request docs to docs/index to fix https://github.com/hydephp/realtime-compiler/issues/10
- Fix bug https://github.com/hydephp/develop/issues/93 where styles were missing on search.html when changing the output directory to root
v0.41.0-beta - 2022-06-24 - Add an Asset facade
About
This release refactors and improves the Asset Service, adding auto-configuration features and a new Asset facade.
Using the Asset facade in Blade views
Instead of the long syntax Hyde::assetManager()
you can now use the Asset
facade directly. See this example, which both do the exact same thing using the same underlying service:
1Hyde::assetManager()->hasMediaFile('app.css')2Asset::hasMediaFile('app.css')
If you don't know what any of this means, good news! You don't have to worry about it. Hyde's got your back.
Added
- Added feature to dynamically load hyde.css and hyde.js if they exist locally
- Added the Asset facade to be used instead of
Hyde::assetManager()
- Added the Asset facade as a class alias to
config/app.css
Changed
- Changed
scripts.blade.php
andstyles.blade.php
to use the Asset facade
Deprecated
- Deprecated AssetManager.php (
Hyde::assetManager()
). Use the Asset facade instead
v0.40.0-beta - 2022-06-22
Added
- Added back the AppServiceProvider
- Added system for defining easy to use post-build hooks https://github.com/hydephp/develop/issues/79
- Added configuration option to exclude documentation pages from showing up in the JSON search index
Changed
- Changelog files in the documentation source directory are now ignored by the JSON search index by default
- Adds a fallback which removes the search modal popup and redirects to the search.html page when the dialogue element is not supported.
Deprecated
- Deprecate the site_output_path option in the Hyde config file. Will be handled by the HydeServiceProvider.
Removed
- Removed the deprecated bootstrap directory
- Removed default .gitkeep from the _site directory
Security
- Bump guzzlehttp/guzzle from 7.4.4 to 7.4.5
v0.39.0-beta - 2022-06-20
Added
- Added a helper to all page models to get an array of all its source files https://github.com/hydephp/develop/issues/44
- Added a helper to all page models to parse source files directly into an object https://github.com/hydephp/develop/issues/40
- Adds the MarkdownDocumentContract interface to markdown based pages to keep a consistent and predictable state
- Adds .gitkeep files to persist empty directories
- internal: Add more tests
- internal: Add packages/hyde/composer.json for persisted data instead of removed update script
Changed
- Changed welcome page title https://github.com/hydephp/develop/issues/52
- Add
rel="nofollow"
to the image author links https://github.com/hydephp/develop/issues/19 - Changed the default position of the automatic navigation menu link to the right, also making it configurable
- Renamed deprecated Hyde::docsDirectory() helper to suggested Hyde::getDocumentationOutputDirectory()
- Makes the constructor arguments for Markdown page models optional https://github.com/hydephp/develop/issues/65
- Added the Hyde/Framework composer.lock to .gitignore as we keep a master lock file in the monorepo
- Changed namespace for Hyde/Framework tests from
Hyde\Testing\Framework
toHyde\Framework\Testing
- Directories are created when needed, instead of each time the service provider boots up
- internal: Add back codecov.io to pull request tests https://github.com/hydephp/develop/issues/37
- internal: Refactor test that interact with the filesystem to be more granular
- internal: Update Monorepo structure to move persisted data for the Hyde package into the packages directory
Removed
- Removed the Hyde::getLatestPosts() helper which was deprecated in v0.34.x and was replaced with MarkdownPost::getLatestPosts()
- Removes the long deprecated CreatesDefaultDirectories class
- internal: Removed composer update script
Fixed
- Add changelog to export-ignore, https://github.com/hydephp/framework/issues/537
v0.38.0-beta - 2022-06-18
About
This release refactors the test suite, compartmentalizing test code into the respective package directories. This does not affect the behavior of the library, but it does affect how package developers run the test suites.
Added
- internal: Adds high level tests for the Hyde package.
- internal: Add GitHub test workflows for Hyde/Hyde and Hyde/Framework
Changed
-
Formats code to the PSR-2 standard.
-
internal: Move Framework tests from the monorepo into the Framework package.
-
internal: Rename monorepo workflow
build-test.yml
tocontinuous-integration.yml
. -
internal: Change testing namespaces update
phpunit.xml.dist
correspondingly. -
internal: Add static analysis tests to the continuous integration workflow.
-
internal: Add matrix test runners to the continuous integration workflow.
v0.37.2-beta - 2022-06-17
About
This release brings internal restructuring to the Hyde monorepo, adding a helper command to manage the new release cycle.
Added
- Add internal
monorepo:release
command
Changed
- Changed to keep only a single
CHANGELOG.md
file for Hyde/Hyde and Hyde/Framework
v0.37.1-beta - 2022-06-16 - Update validation test
About
If there are no documentation pages there is no need for an index page, and the test can safely be skipped.
What's Changed
- v0.37.0-beta - Create custom validator test framework by @caendesilva in https://github.com/hydephp/develop/pull/45
- Skip documentation index validation test if the _docs directory is empty by @caendesilva in https://github.com/hydephp/develop/pull/48
Full Changelog: https://github.com/hydephp/develop/compare/v0.36.0-beta...v0.37.1-beta
v0.37.0-beta - 2022-06-16 - Replace dependency with custom validator implementation
What's Changed
- v0.37.0-beta - Create custom validator test framework by @caendesilva in https://github.com/hydephp/develop/pull/45
Full Changelog: https://github.com/hydephp/develop/compare/v0.36.0-beta...v0.37.0-beta.1
v0.36.0-beta - 2022-06-16 - Add package auto-discovery
What's Changed
- Improve transformation of the hyde/hyde composer.json in the monorepo split job by @caendesilva in https://github.com/hydephp/develop/pull/33
- v0.36.x - Add package auto-discovery by @caendesilva in https://github.com/hydephp/develop/pull/35
Full Changelog: https://github.com/hydephp/develop/compare/v0.35.0-beta.1...v0.36.0-beta
v0.35.0-beta - 2022-06-14 - Initial Monorepo Release
What's Changed
- Restore master project by @caendesilva in https://github.com/hydephp/develop/pull/1
- Merge Hyde/Framework into packages/framework by @caendesilva in https://github.com/hydephp/develop/pull/2
- Refactor test suite, moving tests into Hyde root and updating some of them by @caendesilva in https://github.com/hydephp/develop/pull/3
- Remove default AppServiceProvider.php, fix #5 by @caendesilva in https://github.com/hydephp/develop/pull/6
- Fix #7: Remove unrelated configuration files from the framework package by @caendesilva in https://github.com/hydephp/develop/pull/8
- Refactor bootstrapping process by @caendesilva in https://github.com/hydephp/develop/pull/9
- Remove layover framework test files by @caendesilva in https://github.com/hydephp/develop/pull/10
- Import hydefront package by @caendesilva in https://github.com/hydephp/develop/pull/11
- Import hydephp/realtime-compiler to packages/ by @caendesilva in https://github.com/hydephp/develop/pull/16
- Handle moving of the bootstrap file to provide backwards compatibility for the migration period by @caendesilva in https://github.com/hydephp/develop/pull/17
- Import hydephp/docs by @caendesilva in https://github.com/hydephp/develop/pull/18
- Create readonly mirrors by @caendesilva in https://github.com/hydephp/develop/pull/21
- Add Rocket dashboard subrepository by @caendesilva in https://github.com/hydephp/develop/pull/25
- Work in progress single-file dashboard for the HydeRC by @caendesilva in https://github.com/hydephp/develop/pull/26
- Create dashboard template by @caendesilva in https://github.com/hydephp/develop/pull/27
Full Changelog: https://github.com/hydephp/develop/commits/v0.35.0-beta
Archive (pre v0.35.0)
In v0.35.0 the Hyde project source was moved into the HydePHP/Develop monorepo where the changelog is now handled. Releases in Hyde/Hyde and Hyde/Framework are synced one-to-one since this change.
Hyde/Hyde Archive (pre v0.35.0)
All notable changes to this project will be documented in this file. Dates are displayed in UTC.
Generated by auto-changelog
.
v0.34.1-beta
11 June 2022
- Bump guzzlehttp/guzzle from 7.4.3 to 7.4.4
#187
v0.34.0-beta
6 June 2022
v0.33.0-beta
4 June 2022
v0.32.3-beta
4 June 2022
v0.32.2-beta
4 June 2022
v0.32.1-beta
4 June 2022
- Update frontend and framework files
#180
- Update composer.lock
62b9b4e
- Automatic build update
626983a
v0.32.0-beta
4 June 2022
- Update composer.lock
e26171a
- Remove composer requirements handled by Framework
b04754b
- Update Hyde/Framework to v0.32.x
4cd1161
v0.31.0-beta
4 June 2022
- Update frontend and framework files
#177
- Update to Framework 0.31.x
2da64b4
- Automatic build update
9a59cb6
v0.30.1-beta
31 May 2022
- Fix package.json version formatting error
#175
v0.30.0-beta
31 May 2022
- Update Hyde to v0.30.x
80d91b5
v0.29.0-beta
30 May 2022
- Update frontend and framework files
#172
- Fix #169: remove white-space: pre from <code>, allowing it to wrap
#170
- Merge pull request #170 from hydephp/Update-tailwind-config-to-allow-code-tags-to-wrap
#169
- Fix #169: remove white-space: pre from <code>
#169
- Update lock file
f037c4d
- Update hyde/realtime-compiler to v1.3.0
91e822a
- Update to Framework v0.29.0-beta
9a624de
v0.28.1-beta
29 May 2022
- Bump guzzlehttp/guzzle from 7.4.2 to 7.4.3
#167
v0.28.0-beta
23 May 2022
v0.27.1-beta
21 May 2022
- Upgrade hyde/framework v0.27.5-beta => v0.27.11-beta
809c700
v0.27.0-beta
19 May 2022
- Update to v0.27.x
ecc8fd1
v0.26.0-beta
18 May 2022
- Update to v0.26.x
123bdeb
- Breaking: Update config to v0.26.x-dev-master
268b2a6
- Update framework to dev-master
ddc37cf
v0.25.0-beta
17 May 2022
- Update frontend and framework files
#161
- Update frontend and framework files
#159
- Update to v0.25.x
497d540
- Automatic build update
64c2bd6
- Automatic build update
915cab8
v0.24.1-beta
11 May 2022
- Update frontend and framework files
#157
- Disable cache
8a48e3e
- Update SECURITY.md
958d92e
- Bump Hyde/Framework
cfed837
v0.24.0-beta
11 May 2022
- Update dependencies for release
575338d
v0.23.0-beta
6 May 2022
- Update frontend and framework files
#152
- Run cache after installing
25f8581
- Update hyde/framework
cc66395
v0.22.0-beta
4 May 2022
- Update frontend and framework files
#149
- Fix #146 by adding _pages to Tailwind content
#148
- Add back _site to Tailwind content array
#147
- Update frontend and framework files
#143
- Merge pull request #148 from hydephp/caendesilva-patch-1
#146
- Fix #146 by adding _pages to Tailwind content
#146
- Automatic build update
5f656d0
- Remove reliance on deprecated service
71bb359
v0.21.0-beta
3 May 2022
v0.20.0-beta
3 May 2022
- Update max-width for blog posts
#139
- Update config to v0.20.x
87c6748
- Rename workflow and jobs
c67f2c0
v0.19.0-beta
1 May 2022
- Update frontend assets
#136
- Update frontend assets
#134
- Add Laravel Mix #124
#129
- Fix #127
#127
- Clone repo directly to fix #133
#133
- Fix #131
#131
- Add Laravel Mix
dc62438
- Remove laminas/laminas-text
fa23c60
- Add PostCSS
db399c4
v0.18.0-beta
29 April 2022
- Fix https://github.com/hydephp/hydefront/issues/1
#1
- Fix https://github.com/hydephp/hyde/issues/120
#120
- Reset the application only once
8d2dec7
- Create build-and-update-hydefront.yml
eca910c
- Implement https://github.com/hydephp/framework/issues/182
f0b6da0
v0.17.1-beta
28 April 2022
- Remove compiled files and fix wrong homepage layout
f92e4b7
v0.17.0-beta
28 April 2022
- Remove GitHub test workflows from Hyde/Hyde, moving them into Hyde/Framework
#116
- Move Framework tests to the Hyde/Framework package
#115
- Resolve https://github.com/hydephp/framework/issues/186
#186
- Move tests to Framework
eba459c
- Remove deprecated trait
87f1659
- Remove deprecated Setup directory
f5a9be5
v0.16.1-beta
28 April 2022
- Delete codeql as the JS has moved to HydeFront
ef7e94e
- Change test coverage to code reports
b1fd3e9
- Add more reporting outputs
a4ac8e6
v0.16.0-beta
27 April 2022
v0.15.0-beta
27 April 2022
v0.14.0-beta
21 April 2022
- Change update:resources command signature to update:assets
#100
- Rename directory resources/frontend to resources/assets
#99
- Fix https://github.com/hydephp/framework/issues/156
#156
- Publish the assets
330971d
- Add the Markdown features tests
71c0936
- Update composer dependencies
8a1ebe4
v0.13.0-beta
20 April 2022
- Remove BrowserSync and other dependencies
#93
- Create the tests
f30c375
- Republish the config
c290249
- Update tests for 0.13.x
f6de746
v0.12.0-beta
19 April 2022
v0.11.0-beta
17 April 2022
v0.10.0-beta
12 April 2022
- Add darkmode support
#86
- Remove the deprecated and unused service provider
#85
- Updates the frontend and adds the tests for https://github.com/hydephp/framework/pull/102
#84
- Refactor tests
#82
- Clean up repo
#79
- Change blade source directory
#75
- Bump composer packages
#72
- Companion branch to https://github.com/hydephp/framework/pull/84
#71
- Internal build service refactor tie in
#65
- Remove versioning from matrix, fix https://github.com/hydephp/framework/issues/93
#93
- Publish the compiled assets
7a24814
- Update tests for Build Service refactor
06c8048
- Update the test
874c2a4
v0.9.0-alpha
7 April 2022
- Change where and how stylesheets and scripts are stored and handled
#63
- Move the resource files
fb3b660
- Add the test
51d99b2
- Publish the resources
bf3b20d
v0.8.0-alpha
3 April 2022
- Clean up test code and fix mismatched test namespace
#59
- Update the navigation menu frontend
#58
- Add Changelog.md
9bff522
- Create CODE_OF_CONDUCT.md
ffde383
- Create a test runner with a backup feature
605ed46
v0.7.3-alpha
1 April 2022
- Fix outdated welcome page links
323ea17
v0.7.2-alpha
1 April 2022
v0.7.1-alpha
1 April 2022
- Add SASS as a dev dependency
#55
v0.7.0-alpha
1 April 2022
- Remove _authors and _drafts directories #48
#53
- Create the first two tests
fdd197c
- Create the test
6c43c41
- Update author yml config path
67af952
v0.6.0-alpha
30 March 2022
- Move scripts into app.js
#51
- Update command class names
#49
- Update to latest Framework version
24d666d
- Add the test
3554c33
- 0.6.0 Add the test
0e99c56
v0.5.0-alpha
25 March 2022
v0.4.1-alpha
25 March 2022
- Bump minimist from 1.2.5 to 1.2.6
#47
- #37 Add more tests: HydeServiceProvider
ae8673f
- Inline the stream variable to fix missing file error
bca234c
- Update to Framework 0.5.1
449e051
v0.4.0-alpha
24 March 2022
- 0.4.0 Update which adds several new tests tying into framework v0.5.0
#46
- Format tests to PSR2
e08aba6
- Create test for publish homepage command
4e0f828
- Update framework version to tie into new release
e4944c8
v0.3.3-alpha
23 March 2022
v0.3.2-alpha
23 March 2022
- Increase link contrast to fix accessibility issue
#45
- Add the Site URL setting
05211b9
- Update config
8c0d331
- Remove dev files from gitignore
f52d471
v0.3.1-alpha
23 March 2022
- Replace the default empty blog listing index page with a new welcome screen
#44
- Replace the default page
d747290
- Add the links
b8cd49c
- Add info about the new build --clean option
efca81f
v0.3.0-alpha
22 March 2022
- v0.3 - Hyde Core Separation - Contains breaking changes
#36
- Hyde Core Separation - Contains breaking changes
#35
- Allow the view source directory to be modified at runtime
#34
- Add a path helper to unify path referencing
#33
- Successfully moved Core into temporary package
d5a8dc1
- Move app font to vendor
e43da1d
- Remove legacy stubs and test
8740cc2
v0.2.1-alpha
21 March 2022
- Add a customizable footer
#31
- Adds a customizable footer
09813cf
- Clarify comments in configuration file
09a7e64
- Compile frontend assets
fdb68d5
v0.2.0-alpha
21 March 2022
- Add responsive navigation to resolve #7
#30
- Add support for images
#29
- Fix bug #22 where the feed was not sorting the posts by date
#28
- Overhaul the navigation menu to add configuration options
#27
- Improve the front matter parser to fix #21
#23
- Check for the app env in the .env file
#20
- Add the Torchlight badge automatically
#19
- #14 Add publishable 404 pages
#18
- Create Validator command to help catch any issues in the setup
#17
- Merge pull request #30 from hydephp/7-feature-make-the-navigation-menu-responsive
#7
- Add a navigation menu blacklist, fixes #26
#26
- Fix #25, automatically add link to docs
#25
- Merge pull request #23 from hydephp/21-bug-front-matter-parser-not-stripping-quotes
#21
- Improve the front matter parser to fix #21
#21
- Fix #15, remove redundant values from created file
#15
- Add the stubs
5416fd2
- Add tests
9284a5a
- Implement #16, add custom navigation links
1007d0d
v0.1.1-pre.patch
19 March 2022
- Patches #12, Sev2 Bug: Compiler not using Markdown
ad640de
v0.1.1-pre
19 March 2022
- Merge 1.x
#2
- Fix #6, handle missing docs index
#6
- Update installation instructions
785a450
- Add command for making arbitrary navigation links
3970d57
- Create codeql-analysis.yml
5a6f7ad
v0.1.0-pre
18 March 2022
- Delete _pages directory
#1
- Initial Commit
109bddb
- Add Torchlight support
300e06f
- Add the Logo
1d06347
Hyde/Framework Archive (pre v0.35.0)
All notable changes to this project will be documented in this file. Dates are displayed in UTC.
Generated by auto-changelog
.
v0.34.0
6 June 2022
- Deprecate Hyde::features(), use Hyde::hasFeature() instead
#523
- Create image link helper, fix #434
#522
- Create a PageModel contract and helpers to get parsed model collections
#521
- Merge pull request #522 from hydephp/create-image-file-object
#434
- Add image path helper, fix #434
#434
- Fix #516 Add Composer validation to the test suite
#516
- Move the static::all() helper to AbstractPage
c726ad7
- Create MarkdownPost::latest()
e6d9e4a
- Implement MarkdownPost::all()
cda2010
v0.33.0-beta
4 June 2022
v0.32.1-beta
4 June 2022
- Move back hyde/realtime-compiler to hyde/hyde
#517
- Update composer.lock
246da42
- Update composer.lock
9e835b6
v0.32.0-beta
4 June 2022
- Refactor to use Laravel cache helper instead of custom implementation
#514
- Improve metadata for featured post images
#512
- Skip generating auxiliary files in the main built loop when there is no underlying content
#511
- Fix: #506: Move ext-simplexml in composer.json to suggest as it is not a strict dependency
#510
- Rewrite Realtime Compiler
#508
- Fix #496: Missing image "contentUrl" metadata
#496
- Don't create search files when there are no pages
#482
- Update Hyde Realtime Compiler to v2.0
f917319
- Delete RELEASE-NOTES-DRAFT.md
9853526
- Remove pre-check as package is always included
076a1be
v0.31.1-beta
3 June 2022
v0.31.0-beta
2 June 2022
- Fix #499: Make the search dialog positioning fixed
#503
- Make documentation pages smarter
#501
- Link to markdown source files
#498
- Fix #490 Make heading permalinks visible
#493
- Add Markdown Post/Preprocessors
#488
- Merge pull request #503 from hydephp/499-make-the-search-menu-dialog-position-fixed
#499
- Fix #499: Make the search dialog positioning fixed
#499
- Merge pull request #493 from hydephp/make-heading-permalinks-visible
#490
- Fix #490 Make heading permalinks visible
#490
- Merge unit tests into single feature test
c455d1c
- Use the same static transformation instead of DOM
bdba273
- Document the edit button feature
dc0d9d7
v0.30.1-beta
31 May 2022
- Fix support for outputting documentation pages to root output directory
#480
- Fix https://github.com/hydephp/framework/issues/462#issuecomment-1142408337
#462
- Fix bug #462 caused by trailing slash in docs path
6be5055
v0.30.0-beta
31 May 2022
- Add inline Blade support to markdown
#478
- Create page and document Blade-supported Markdown
0d7ae0f
- Add base tests
ae4b0dc
- Sketch out the service class
4b88214
v0.29.5-beta
31 May 2022
- Bump HydeFront to v1.10
0f28947
v0.29.4-beta
30 May 2022
- Add color-scheme meta, fix #460
#460
- Try to figure out why Codecov is not working
9d3371c
- Revert codecov changes
b253969
v0.29.3-beta
30 May 2022
- Fix Bug #471: og:title and twitter:title should use the page title, and only use config one as fallback
#473
- Fix bug #471, make title metadata dynamic
b9ac1c8
- Make dynamic meta title use title property instead
6aaa612
v0.29.2-beta
30 May 2022
- Add !important to style override
3e28b1d
v0.29.1-beta
30 May 2022
v0.29.0-beta
30 May 2022
- Load HydeFront v1.9.x needed for HydeSearch
#468
- Make the search feature configurable and toggleable
#467
- Add the HydeSearch frontend integration for documentation pages
#465
- Create the backend search index generation for documentation pages
#459
- Bump guzzlehttp/guzzle from 7.4.2 to 7.4.3
#456
- Refactor inline styles to HydeFront Sass
86fff1d
- Begin sketching out the class
ed131bd
- Extract search widget to component
420f662
v0.28.1-beta
25 May 2022
- Fix #450: Add custom exceptions
#454
- Refactor author configuration system
#449
- Merge pull request #454 from hydephp/450-add-custom-exceptions
#450
- Remove AuthorService
9f9d64d
- Clean up code
f8452b9
- Create FileConflictException
02d534c
v0.28.0-beta-pre
22 May 2022
v0.28.0-beta
23 May 2022
- Refactor author configuration system
#449
- Refactor configuration to use snake_case for all options, and extract documentation settings to own file
#444
- Remove AuthorService
9f9d64d
- Extract documentation configuration options to docs.php
92b9ae5
- Use the snake_case config format
f578855
v0.27.12-beta
22 May 2022
- Code cleanup without affecting functionality
#440
- Add missing return type declarations
684b792
- Add PHPDoc comments with @throws tags
ae44806
v0.27.11-beta
21 May 2022
- Fix #429: Add page priorities to sitemap generation
#437
- Merge pull request #437 from hydephp/add-dynamic-page-priorities-for-sitemap
#429
- Add page priority support
0bfbbba
v0.27.10-beta
20 May 2022
- Improve RSS image handling and feed and sitemap generation processes
#435
- Create HydeBuildRssFeedCommand.php
ac4788f
- Create build:sitemap command
82c73a3
- Fetch information for local images
a10c1c3
v0.27.9-beta
20 May 2022
- Rename and restructure internal hooks
0562ae3
- Update test code formatting
1a9dcaf
- Add sitemap link test
9ba7b10
v0.27.8-beta
19 May 2022
- Update the tests
a80593e
v0.27.7-beta
19 May 2022
- Normalize the site URL
a4b9ce7
v0.27.6-beta
19 May 2022
- Add deployment documentation
4b188f2
- Merge sections to be more compact
baadd48
- Restructure document flow
40f4a3d
v0.27.5-beta
19 May 2022
- Fix bug where categorized documentation sidebar items were not sorted
#422
- Fix #367: Add upcoming documentation files
#367
- Create building-your-site.md
6989bd5
- Update documentation page orders
b38c58b
v0.27.4-beta
19 May 2022
- Fix #419: Add meta links to the RSS feed
#419
- Refactor internal helpers to be public static
283e5d2
- Add page slug for compatibility, fixing bug where Blade pages did not get canonical link tags
d3ac8e4
v0.27.3-beta
19 May 2022
- Add unit test for fluent Markdown post helpers
2a3b90b
- Add Author::getName() unit test
64616a6
- Change RSS feed default filename to feed.xml
d545b07
v0.27.2-beta
19 May 2022
- Add RSS feed for Markdown blog posts
#413
- Add the RSSFeedService test
a21596f
- Add the initial channel items
9cb9b30
- Update sitemap tests and add rss feed tests
fe93f5b
v0.27.1-beta
18 May 2022
- Fix #403: Remove @HydeConfigVersion annotation from config/hyde.php
#408
- Merge pull request #408 from hydephp/remove-hydeconfigversion-annotation-from-hyde-config
#403
- Remove HydeConfigVersion annotation
84b1602
v0.27.0-beta
18 May 2022
- Add sitemap.xml generation
#404
- Add SitemapService tests
ce5d8ed
- Refactor shared code into new helper
46f41d6
- Create basic sitemap generator
1f66928
v0.26.0-beta
18 May 2022
- Fix #398: Remove the deprecated Metadata model
#400
- Fix #379: Extract menu logo to component
#396
- Update helper namespaces
#395
- Fix #385: Move page parsers into models/parsers namespace
#394
- Remove redundancy and merge Meta and Metadata models #384
#390
- Unify the $page property and add a fluent metadata helper
#388
- Merge pull request #400 from hydephp/398-remove-legacy-metadata-model
#398
- Merge pull request #396 from hydephp/extract-navigation-menu-logo-to-component-to-make-it-easier-to-customize
#379
- Fix #379: Extract menu logo to component
#379
#379
- Merge pull request #394 from hydephp/385-move-page-parsers-into-a-namespace
#385
- Fix #385: Move page parsers into a namespace
#385
- Fix #382: Unify the $page property
#382
- Fix #375, Add config option to add og:properties
#375
- Extract metadata helpers to concern
72b1356
- Add test for, and improve Meta helper
15ccd27
- Refactor concern to not be dependent on Metadata model
b247bb0
v0.25.0-beta
17 May 2022
- Load asset service from the service container
#373
- Rename --pretty option to --run-prettier to distinguish it better in build command
#368
- Allow site output directory to be customized
#362
- Configuration and autodiscovery improvements
#340
- Add configurable "pretty URLs"
#354
- Add sidebar config offset, fix #307
#348
- Change BuildService to DiscoveryService
#347
- Fix #361 Rename --pretty option to --run-prettier
#361
- Fix #350, Use the model path properties
#350
- Add option for pretty urls fix #330
#330
- Rewrite index docs path to pretty url, fix #353
#353
- Fix #330, Create helper to make pretty URLs if enabled
#330
- Merge pull request #348 from hydephp/add-sidebar-priority-offset-for-config-defined-values
#307
- Add sidebar config offset, fix #307
#307
- Fix #343
#343
- Restructure the tests
41bd056
- Add helpers to make it easier to refactor source paths
10e145e
- Utalize the $sourceDirectory property in build services
9d9cbff
v0.24.0-beta
11 May 2022
- Add documentation sidebar category labels, fixes #309
#326
- Merge pull request #326 from hydephp/309-add-documentation-sidebar-category-labels
#309
- Sketch out the files for the category integration
d6c81bb
- Implement category creation
70448b1
- Set category of uncategorized items
9f0feb3
v0.23.5-beta
11 May 2022
- Add back skip to content button to Lagrafo docs layout, fix #300
#322
- Change max prose width of markdown pages to match blog posts, fix #303
#321
- Fix #153, bug where config option uses app name instead of Hyde name.
#320
- Add option to mark site as installed, fix #289
#289
- Merge pull request #322 from hydephp/300-add-back-skip-to-content-button-to-lagrafo-docs-layout
#300
- Add skip to content button docs layout, fix #300
#300
- Merge pull request #321 from hydephp/303-change-max-width-of-markdown-pages-to-match-blog-posts
#303
- Change max width to match blog posts, fix #303
#303
- Merge pull request #320 from hydephp/294-fix-bug-where-config-option-uses-app-name-instead-of-hyde-name
#153
- #153 Fix bug where config option uses app name instead of Hyde name.
c90977c
- Update install command for new site name syntax
0687351
v0.23.4-beta
11 May 2022
- Refactor post excerpt component to be less reliant on directly using front matter and add view test
#318
- Formatting: Add newline after console output when running build without API calls, fix #313
#316
- Fix #314, add background color fallback to documentation page body
#315
- Restructure and format component, fix #306
#306
- Merge pull request #316 from hydephp/313-formatting-add-newline-after-disabling-external-api-calls-in-build-command
#313
- Formatting: Add newline after --no-api info, fix #313
#313
- Merge pull request #315 from hydephp/314-add-dark-mode-background-to-body-in-documentation-pages-to-prevent-fouc
#314
- Fix #314, add background color fallback to docs body
#314
- Implement hidden: true front matter to hide documentation pages from sidebar, fix #310
#310
- Create ArticleExcerptViewTest.php
4a3ecaa
- Add tests for the fluent date-author string
30f7f67
v0.23.3-beta
10 May 2022
- Fix #310, allow documentation pages to be hidden from sidebar using front matter
#311
- Merge pull request #311 from hydephp/310-implement-hidden-true-front-matter-to-hide-documentation-pages-from-sidebar
#310
- Fix #310, allow items to be hidden from sidebar with front matter
#310
v0.23.2-beta
7 May 2022
- Refactor documentation sidebar internals
#299
- Create feature test for the new sidebar service
0adf948
- Remove deprecated action
063a85a
- Create the sidebar models
fbcae7c
v0.23.1-beta
6 May 2022
- Add the test helper files
3cd5a56
- Test description has warning for out of date config
a90c0b1
- Delete .run directory
8cd71fc
v0.23.0-beta
6 May 2022
- Refactor docs layout to use Lagrafo instead of Laradocgen
#292
- Port lagrafo (wip)
6ca2309
- Move all head tags into blade component
3093ebf
- Use the Hyde layout
e09e301
v0.22.0-beta
5 May 2022
- Update HydeFront version to v1.5.x
#287
- Refactor script interactions
#286
- Hide the install command once it has been run, fix #280
#280
- Hide the install command once it has been run, fix #280
#280
- Replace onclick with element IDs
e97d545
- Move dark mode switch
9f6fdf8
v0.21.6-beta
4 May 2022
- Create installer command, fix #149
#279
- Merge pull request #279 from hydephp/149-create-installer-command
#149
- Create Install command that can publish a homepage
b890eb7
- Use installer to set the site name in config
3f0c843
- Use installer to set the site URL in config
d5f56ac
v0.21.5-beta
3 May 2022
- Update the test to fix updated exception output and remove comments
cd5a70d
v0.21.4-beta
3 May 2022
- Fix #231
#231
v0.21.3-beta
3 May 2022
- Allow documentation pages to be scaffolded using the make:page command
#273
- Allow documentation pages to be scaffolded using the command
7bbe012
v0.21.2-beta
3 May 2022
- Send a non-intrusive warning when the config file is out of date
#270
- Create crude action to check if a config file is up to date
e31210f
- Create FileCacheServiceTest
d9141cc
- Add the test
ee4a64d
v0.21.1-beta
3 May 2022
- Create filecache at runtime instead of relying on a JSON file that needs to be up to date
#265
- Create the filecache at runtime, resolves #243, #246
#243
- Remove deprecated filecache store and generator
7a1eb32
- Remove "Update Filecache" workflow
81564c0
- Remove legacy try/catch
34733dd
v0.21.0-beta
3 May 2022
- Always empty the _site directory when running the static site build command
#262
- Always purge output directory when running builder
a86ad7d
v0.20.0-beta
2 May 2022
- Update Filecache
#258
- Remove HydeFront from being bundled as a subrepo
#257
- Change the action used to create pull requests
#255
- Exclude files starting with an underscore from being compiled into pages, fix #220
#254
- Create .gitattributes, fixes #223
#250
- Deprecate filecache.json and related services
#248
- Allow documentation sidebar header name to be changed
#245
- Update Filecache
#242
- Fix bugs in article and excerpts not fluently constructing descriptions
#241
- Handle undefined array key title in article-excerpt.blade.php
#238
- Fix test matrix not fetching proper branch on PRs
#235
- Fix sidebar ordering bug by using null coalescing operator instead of elvis operator
#234
- Add unit test for hasDarkmode, fix #259
#259
- Add the test, resolves #259
#259
- Merge pull request #254 from hydephp/220-exclude-files-starting-with-an-_underscore-from-being-compiled-into-pages
#220
- Merge pull request #250 from hydephp/add-gitattributes
#223
- Create .gitattributes, fixes #223
#223
- Make category nullable, fixes #230
#230
- Fix #240
#240
- Handle undefined array key, fixes #229
#229
- Remove the HydeFront subrepo
d406202
- Add test to ensure that post front matter can be omitted
875c6d4
- Exclude files starting with an _underscore from being discovered
0dcdcb6
v0.19.0-beta
1 May 2022
- Update Filecache
#226
- Add config option to disable dark mode
#225
- Update Filecache
#222
- Refactor assets managing, allowing for Laravel Mix, removing CDN support for Tailwind
#221
- Fix #211
#211
- Add test and clean up docs for HasMetadata
976cb6c
- Revert "Update update-filecache.yml"
abc21e7
- Update update-filecache.yml
c25196a
v0.18.0-beta
29 April 2022
- Update Filecache
#201
- Update Filecache
#199
- Update Filecache
#197
- Change priority of stylesheets
#195
- Update Filecache
#194
- Switch jsDelivr source to NPM, fix #200
#200
- Update dependencies
b505726
- Switch to using TypeScript
6fa9e6c
- Create service class to help with #182
fb0033c
v0.17.0-beta
28 April 2022
- Add the code reports workflow
#191
- Move test suite actions to framework
#190
- Merge with master
#189
- Add matrix tests
#188
- Move part one of the test suite
#187
- Move Framework tests from Hyde/Hyde to the Hyde/Framework package
#185
- Move tests from Hyde to Framework
22ca673
- Format YAML
e6da9ad
- Add the workflow
b20cbd6
v0.16.1-beta
28 April 2022
- Manage asset logic in service class
c72905f
v0.16.0-beta
27 April 2022
- Refactor internal codebase by sorting traits into relevant namespaces
#175
- Refactor: Move Hyde facade methods to traits
9b5e4ca
- Refactor: Update namespaces
96c73aa
- Docs: Remove PHPDocs
ef2f446
v0.15.0-beta
27 April 2022
- Update Filecache
#170
- Merge HydeFront v1.3.1
727c8f3
- Remove asset publishing commands
0f49d16
- Rework internals, loading styles from CDN
c5283c0
v0.14.0-beta
21 April 2022
- Update Filecache
#154
- Change update:resources command signature to update:assets
#153
- Update Filecache
#152
- Change resources/frontend to resources/assets
#151
- Update Filecache
#148
- Update Filecache
#147
- Overhaul the Markdown Converter Service to make it easier to customize and extend
#146
- Refactor to fix https://github.com/hydephp/framework/issues/161
#161
- Fix https://github.com/hydephp/framework/issues/156
#156
- Move frontend files to resources/assets
e850367
- Add back asset files
bd218df
- Merge with Hydefront
8b477de
v0.13.0-beta
20 April 2022
- Update Filecache
#141
- Add table of contents to the documentation page sidebar
#140
- Add the table of contents to the frontend
f728810
- Add the table of contents generation
2c4c1b9
- Allow table of contents to be disabled in config
fc9cba1
v0.12.0-beta
19 April 2022
- Update Filecache
#135
- Update Filecache
#134
- Allow author array data to be added in front matter
#133
- Strip front matter from documentation pages
#130
- Add trait to handle Authors in the data layer
62f3793
- Update the views to move logic to data layer
2ebc62c
- Parse the documentation pages using the fileservice
041bf98
v0.11.0-beta
17 April 2022
v0.10.0-beta
12 April 2022
- Update Filecache
#124
- Update Filecache
#122
- Update Filecache
#120
- Update Filecache
#118
- Update Filecache
#117
- Add darkmode support and refactor blade components
#116
- Add skip to content link
#113
- Update the welcome page to be more accessible
#112
- Remove the deprecated and unused service provider
#108
- Update Blade components, internal data handling, add a11y features
#102
- Refactor tests
#98
- Deprecate internal abstract class HydeBasePublishingCommand
#97
- Update and simplify the command and rename signature from publish:configs to update:configs, making overwriting files the default.
#95
- Change blade source directory to _pages
#90
- Fix line ending sequence issue in checksums
#86
- Refactor internal file handling logic to be more intelligent to provide a safer, more intuitive, user experience
#84
- Fix improper article ID usage - remember to re-publish styles
#81
- Fix #63, update component to show formatted dates
#80
- Update Spatie YAML Front Matter Package to fix #36
#79
- Add base styles to documentation layout
#77
- Refactor code to extend base classes and remove shared code
#74
- Refactor the backend structure of the static page builder command process
#72
- Supply
_media
as the path argument in thehyde:rebuild
command to copy all media files.#71
- Add more relevant targets for the skip to content link, fix #123
#123
- Add the image model, fix #100
#100
- Merge pull request #80 from hydephp/63-fix-up-the-post-date-component-to-show-the-readable-name
#63
- Fix #63, update component to show formatted dates
#63
- Merge pull request #79 from hydephp/36-spatie-yaml-front-matter-package-not-properly-handling-markdown-documents-with-markdown-inside
#36
- Compress CSS, 5.48 KB to 3.37 KB (38.56%)
d7f2054
- Update dependencies
f851978
- Remove the deprecated and now unused base command
0f137c8
v0.9.0-beta
7 April 2022
- Rework how frontend assets (stylesheets and main script) are handled
#69
- Move the resource files
7c70467
- Add the update frontend resources command
551df0a
- Add the action to publish the frontend resources
e2c82fb
v0.8.1-beta
3 April 2022
- Add --no-api option to disable Torchlight at runtime, fix #53
#53
- Add Changelog.md
fe2fdf8
- Create CODE_OF_CONDUCT.md
9361d1d
- Create CONTRIBUTING.md
a581146
v0.8.0-beta
2 April 2022
- Rewrite main navigation menu
#60
- Fix #59, unify sidebar elements
#59
- Unify the navigation menu
f0e6cfc
- Add the interaction
c5b4f7e
v0.7.5-alpha
2 April 2022
v0.7.4-alpha
1 April 2022
- Fix bug #47
b7cdaf6
v0.7.3-alpha
1 April 2022
- Fix #58
#58
v0.7.2-alpha
1 April 2022
- Create new command to scaffold pages
#55
- Create the action
b788de2
- Create the command
eac5258
- Clean up and format code
dc5c5ee
v0.7.1-alpha
1 April 2022
- Add a favicon link automatically if the file exists
#54
- Create LICENSE.md
57d4a1b
- Use getPrettyVersion for composer version
7569fb7
- Change version to the (pretty) framework version
973cc74
v0.7.0-alpha
1 April 2022
- Fix bug #47 StaticPageBuilder not able to create nested documentation directories
#51
- Remove _authors and _drafts directories #48
#49
- Delete phpdoc.dist.xml
b28afb7
- Remove _data directory
a11ff92
- Update author yml config path
e0578bb
v0.6.2-alpha
30 March 2022
v0.6.1-alpha
30 March 2022
v0.6.0-alpha
30 March 2022
- Fix the 404 route bug
#41
- #38 Add a rebuild command to the Hyde CLI to rebuild a specific file
#39
- Move scripts into app.js
#35
- #32 refactor command class names to be consistent
#33
- Add internal PHPDoc class descriptions
#30
- Require Torchlight
#27
- Restructure backend models
#26
- Rework how Markdown files are handled to improve maintainability and testing
#25
- 0.6.0 Remove support for Front Matter in Markdown Pages
#24
- Fix #21 by dynamically routing to the docs index
#23
- Merge pull request #23 from hydephp/21-bug-documentation-sidebar-header-should-link-to-readme-if-that-exists-but-an-index-does-not
#21
- Fix #21 by dynamically routing to the docs index
#21
- Add PHPUnit
0d59ea0
- Create the HydeRebuildStaticSiteCommand
92b1d20
- Refactor to use the MarkdownFileService
48a27a2
v0.5.3-alpha
26 March 2022
- Remove deprecated methods
#19
- Make the command extend the base command
eaba9da
- Remove deprecated class
24753c1
- Format to PSR2
8307b65
v0.5.2-alpha
25 March 2022
- Remove the Hyde installer
#18
- 0.6.x Remove deprecated command
#17
- Improve Docgen Feature by allowing the output directory to be dynamically changed
#16
- Rework installer prompts and fix wrong directory
c15a4ac
- Allow the documentation output directory to be changed
6cf07a3
- Allow the homepage argument to be set from cli
ab8dedd
v0.5.1-alpha
24 March 2022
- Fix visual bug caused by setting max-width on body instead of article
#15
- Load commands in service provider instead of config/commands.php
#13
- Load commands in service provider instead of config
46397fd
v0.5.0-alpha
24 March 2022
- Merge 0.5.0 into Master - Adds a multitude of new tests, code refactors and quality of life features
#12
- Sync branch with Master
#11
- Merge 0.5.x progress
#10
- Add _data directory and Authors object as well as stubs to aid in testing
#9
- Add required depedency to framework
e5f0ec5
- Implement the Authors backend feature
d7679f5
- Add Commonmark as an explicit dependency
bf915b1
v0.4.3-alpha
23 March 2022
- Add bindings for the package versions
a9ce58d
- Get version from facade
465bafc
- Replace Git version with Hyde version
bcb7357
v0.4.2-alpha
23 March 2022
- v0.4.2-alpha Adds new meta tags and more data rich HTML
#8
- Add new meta tag options
78a74c7
- Add the Site URL feature, remember to update config!
ee2f5c6
- Add more rich HTML content
8eb6778
v0.4.1-alpha
22 March 2022
- Add the Hyde::getLatestPosts() shorthand to get the latest posts collection
#4
- Add new options to the build command to improve the user experience
#3
- Remove progress bar from empty collections
40d3203
- Add option to remove old files before building
2650997
- Add options to automatically build frontend assets
f789c2f
v0.4.0-alpha
22 March 2022
v0.3.1-alpha
22 March 2022
- Delete vendor directory
4f96627
- 0.3.1 Move commands to framework
70dd8df
- Add php 8 require, and suggest hyde/hyde
a8ff6ad
v0.3.0-alpha
21 March 2022
- Add the Core files (with temporary namespace)
816ad3a
- Initial Commit
fa00787
- Successfully move namespace Core to Framework
0c9160f
Syntax highlighting by Torchlight.dev