Statiq.Web

Statiq Web is a flexible static site generator written in .NET.

OTHER License

Stars
1.7K

Bot releases are visible (Hide)

Statiq.Web - 1.0.0-beta.19

Published by daveaglick over 3 years ago

  • Updated Statiq Framework to version 1.0.0-beta.33.
  • Added ability for sidecar files to append the sidecar file extension in addition to replacing the original file extension.
  • Fixed several bugs in the file watcher for preview mode related to multiple file changes.
Statiq.Web - 1.0.0-beta.18

Published by daveaglick almost 4 years ago

  • Breaking change: Updated Statiq Framework to version 1.0.0-beta.32,
    see the Statiq Framework release notes for details on breaking changes, mostly applicable to module authors.
  • Added a ResetCache() method to the REPL to force a cache reset on the next execution (#936).
Statiq.Web - 1.0.0-beta.17

Published by daveaglick almost 4 years ago

  • Fixed a regression in how layouts are applied to Markdown files (#934).
  • Changed behavior introduced in 1.0.0-beta.16 regarding HTML files and layouts, now layouts are applied if the HTML file does not contain a <html> tag, and are not applied if it does (#934).
  • Added a SetDefaultLayoutTemplate() bootstrapper extension to change the layout engine applied to HTML fragments to an existing one (if the default of Razor is not wanted).
  • Added a SetDefaultLayoutModule() bootstrapper extension to change the layout engine applied to HTML fragments to a new module (if the default of Razor is not wanted).
Statiq.Web - 1.0.0-beta.16

Published by daveaglick almost 4 years ago

  • Updated Statiq Framework to version 1.0.0-beta.31.
  • Breaking change: By default .html files are no longer processed by a layout engine like Razor, instead use .fhtml (HTML fragment) to indicate the file should be processed (#933).
  • Added a short wait to the file watcher to avoid file lock exceptions under certain conditions.
Statiq.Web - 1.0.0-beta.15

Published by daveaglick almost 4 years ago

  • Updated Statiq Framework to version 1.0.0-beta.30.
  • Breaking change: Refactored the exiting bootstrapper process extensions to use the ProcessTiming enum.
  • Fixed a regression with the preview command and file watching that was execution more than once on file changes.
  • Added a WatchPaths setting that adds additional folders to watch in preview mode (#930).
  • Added additional bootstrapper extensions to specify whether a process should launch when previewing, when not previewing, or always (#931).
  • Added a flag for "concurrent" processes that run in the background but wait for exit before the next process timing phase (#931).
  • Added a ProcessTiming.Initialization setting to start a process before all others (#932).
Statiq.Web - 1.0.0-beta.14

Published by daveaglick almost 4 years ago

  • Updated Statiq Framework to version 1.0.0-beta.29.
  • Added a new interactive command that provides a REPL (read-eval-print prompt) after execution, useful for inspecting the state of the engine and debugging the generation.
  • Added the REPL to the preview command.
Statiq.Web - 1.0.0-beta.13

Published by daveaglick almost 4 years ago

  • Added "processes" which are CLI commands you can run as part of your generation process at various points.
  • Added support for forwarded proxy headers in the preview server to make working with GitHub Codespaces and similar easier (#925).
  • Fixed a bug with LiveReload functionality related to trying to serialize empty JSON payloads.
  • Fixed preview server logging (it had stopped working), now Kestrel log messages will begin appearing again.
  • Added additional bootstrapper extensions to make working with templates easier.
Statiq.Web - 1.0.0-beta.12

Published by daveaglick almost 4 years ago

  • Link validator analyzers now report total number of failures at the end of validation.
  • Fixed additional bugs related to relative link validation and LinkRoot settings.
Statiq.Web - 1.0.0-beta.11

Published by daveaglick almost 4 years ago

  • Fixed several bugs with relative link validation, including when using a LinkRoot setting.
Statiq.Web - 1.0.0-beta.10

Published by daveaglick almost 4 years ago

Statiq.Web - 1.0.0-beta.9

Published by daveaglick almost 4 years ago

  • Updated Statiq Framework to version 1.0.0-beta.25.
  • Lots of bug fixes for the ValidateAbsoluteLinks and ValidateRelativeLinks analyzers.
Statiq.Web - 1.0.0-beta.8

Published by daveaglick about 4 years ago

  • Updated Statiq Framework to version 1.0.0-beta.24.
  • Breaking change: Removed the ValidateAbsoluteLinks, ValidateRelativeLinks, and ValidateLinksAsError settings in favor of the new analyzers.
    For example, to turn on absolute link validation with an error log level, set Analyzers: ValidateAbsoluteLinks=Error in your configuration file (or bootstrapper, etc.)
  • Added new ValidateAbsoluteLinks and ValidateRelativeLinks analyzers (replaces the ValidateLinks pipeline).
  • Removed the ValidateLinks pipeline.
  • Added a new AnalyzeContent pipeline.
  • Added base HtmlAnalyzer and SyncHtmlAnalyzer classes for analyzing HTML content.
  • Added Bootstrapper.AnalyzeHtml() extensions for defining delegate-based HTML analyzers.
  • Made the PreviewCommand and ServeCommand in Statiq.Web.Hosting public so you can call IBootstrapper.AddCommand<PreviewCommand>() directly without Statiq.Web.
Statiq.Web - 1.0.0-beta.7

Published by daveaglick about 4 years ago

Statiq.Web - 1.0.0-beta.6

Published by daveaglick about 4 years ago

  • Updated Statiq Framework to version 1.0.0-beta.22.
  • Added base Markdown analyzers MarkdownAnalyzer and SyncMarkdownAnalyzer.
  • Added Bootstrapper.AnalyzeMarkdown() extensions for defining delegate-based Markdown analyzers.
  • Fixed a bug in the preview server related to non-ASCII paths (#918, thanks @Vladekk).
  • Fixed some bugs in the preview server related to cache reset (#914, thanks @Backs).
Statiq.Web - 1.0.0-beta.5

Published by daveaglick about 4 years ago

  • Some tweaks to the new .NET template to prefer the directory name.
Statiq.Web - 1.0.0-beta.4

Published by daveaglick about 4 years ago

  • Updated Statiq Framework to version 1.0.0-beta.21.
  • Breaking change: Removed the IBootstrapper.SetDefaultTemplate() extension given more general use of templates. The "default" template should now be specified
    by setting a templates for the HTML media type (by default it's still Razor, so this breaking change won't really affect anyone right now).
  • Breaking Change: Removed the AssetFiles, DataFiles, and ContentFiles settings and replaced with a single InputFiles setting for finding all input files.
    The target pipeline and content type are now determined from the media type and metadata of the document instead of via globbing patterns for each pipeline.
    If you previously had asset files that started with an underscore (such as a _redirects file), you will need to explicitly add those to the InputFiles patterns
    along with the default pattern: .AddSetting(WebKeys.InputFiles, new [] { "**/{!_,}*", "_redirects" }).
  • Added a ClearDataContent document setting that clears content from data documents (for example, to support passing the data file to layouts).
    Set this for a single data document to clear it's content or globally with .AddSetting(WebKeys.ClearDataContent, true) to clear the content of all data files.
  • Made the concept of "templates" more general. They now essentially use the media type of a document (typically inferred from file extension) to determine which pipeline to
    process the document in and what module to use for processing. Templates can now be defined for assets, data, and content and for the Process and PostProcess phases for each.
  • Added a ContentType document setting to override the calculated pipeline and processing for a document (values are Asset, Data, and Content).
    For example, setting the ContentType of a file named "foo.json" to Asset will treat the file as an asset and will not process it's content as data.
  • Added a MediaType document setting to override the media type calculated from the file extension.
  • Added a RemoveScriptExtension document setting that will convert script file names like "foo.json.csx" to "foo.json" and reset their media types so the script output can be seamlessly
    processed by the appropriate pipeline and modules (for example, "foo.json.csx" will get processed by the Data pipeline while "foo.md.csx" will get processed by the Content pipeline).
    The default value is true.
  • Removed the Isolated flag from the Assets pipeline so the set of copied assets can be retrieved from other pipelines (I.e. to generate a list of images in a directory).
  • Added support for script files (.csx or .cs) to the Archive pipeline (I.e. to generate JSON APIs from a collection of documents or data).
  • Added a Script document setting that will treat a file as a C# script, even if the extension is not .cs or .csx.
  • Added a common Inputs pipeline that consolidates directory metadata, sidecar, and front matter parsing and supports evaluating scripts with a .csx or .cs extension.
    Detailed script usage will be documented on the site, but generally if the script returns null the original input document is returned, if the script returns a string the content
    of the document will be changed to the return value, or if the script returns a document(s) those will be added to the appropriate pipeline.
  • New Statiq.Web.Templates project with a Statiq Web templates for the dotnet new CLI command (#915, thanks @devlead).
Statiq.Web - 1.0.0-beta.3

Published by daveaglick about 4 years ago

  • Breaking change: Updated Statiq Framework to version 1.0.0-beta.20.
    This version of Statiq Framework contains breaking changes which Statiq Web will inherit.
  • The Content pipeline no longer creates any metadata-based tree structure (I.e. the metadata key Children is no longer set). Instead, consider
    using methods from Outputs such as Outputs.GetChildren(doc) or the new OutputPages property (see the Statiq Framework 1.0.0-beta.20 release notes for more details).
  • Added a new MinimumStatiqWebVersion key to perform a check for the minimum allowed version of Statiq Web. If this is set to something higher than the current version
    of Statiq Web, an error will be logged and execution will stop. Any setting that starts will this key will be considered, so it's recommended the use of this key be
    suffixed with a unique identifier to avoid conflicts between components (for example MinimumStatiqWebVersion-MySite). While not required or typically necessary for sites,
    it's recommended that themes set this in their theme settings file (for example MinimumStatiqWebVersion-CleanBlog).
Statiq.Web - 1.0.0-beta.2

Published by daveaglick about 4 years ago

  • Updated Statiq Framework to version 1.0.0-beta.19.
    This version of Statiq Framework includes internal refactoring that provides a big performance boost.
  • Added a AssetFiles settings to configure the globbing patterns used for copying assets.
Statiq.Web - 1.0.0-beta.1

Published by daveaglick about 4 years ago

  • Breaking change: Updated Statiq Framework to version 1.0.0-beta.18.
    This version of Statiq Framework contains breaking changes which Statiq Web will inherit.
  • Breaking change: The Content pipeline no longer nests output documents and instead all documents are now output.
    IEnumerable<IDocument>.FilterDestinations("*.html") or Outputs["*.html"] can be used to get "root" documents.
  • Added a MakeLinksAbsolute setting to rewrite relative links to be absolute.
  • Added a MakeLinksRootRelative setting to rewrite relative links to be root-relative.
  • Suppressed archive output when there's no documents to archive.
  • Added the CacheDocuments module to additional pipelines for faster rebuild times.
  • Added an ArchiveKeyComparer metadata that allows specifying a specific comparer for use with archive groups (usually with script metadata).
  • Added ability for all pipelines to ensure every document gets a Published value, either from an existing value or from the file name or modified date.
  • Added a PublishedUsesLastModifiedDate setting to control whether a file modified date should be used for getting published dates.
  • Added settings as a default settings file name in themes (with support for JSON, YAML, or XML formats).
  • Added support for sidecar files in other input directories at the same relative path (I.e. themes).
  • Added support for themesettings and statiq YAML (.yml and .yaml) and XML (.xml) configuration files in themes.
  • Fixed a bug on engine reruns (I.e. the preview command).
Statiq.Web - 1.0.0-alpha.21

Published by daveaglick over 4 years ago