Release notes

Version 0.6.1

Bug fixes

  • In the version prior, adorning a version prior without having sourced a virtual environment would raise an error, given that the environment variable VIRTUAL_ENV would not exist. Now the environment variable being absent not cause any such issue.
  • In version 0.1.0, when a branch on a Turbopelican website repository other than main was pushed, it would still publish the website due to a typo in the GitHub workflow. Now the typo is corrected.
  • In version 0.1.0, a Turbopelican website not hosted at the root domain would have linking issues. Now the links are appropriately relative to the project's root.
  • In the version prior, a user adorning a website would be suggested an incorrect default site URL. Now the default should be correct.
  • In version 0.1.0, a Turbopelican website not hosted at the root domain would incorrectly link its CSS styling. Now the styling is correctly linked.
  • In version 0.1.0, a Turbopelican website not hosted at the root domain would have a hyperlink to the website's root, rather than to the project's root. Now correctly directing the hyperlink to the project's root.

Version 0.6.0

Features

  • Adding turbopelican adorn subcommand, which can be used to add Pelican static-site websites to existing Git repositories.
  • Adding --no-commit flag, in the absence of which, Turbopelican will automatically attempt to create an initial commit in the repository once the repository has been fully populated.
  • Adding --use-gh-cli flag (for use only with a working installation of GitHub CLI) which causes Turbopelican to automatically attempt to create the GitHub repository and push the local tree to GitHub.
  • When a user attempts to perform turbopelican init on a directory that already contains some files, Turbopelican suggests for the user to run turbopelican adorn instead.

Version 0.5.1

Bug fixes

  • In the version prior, the SLUG_REGEX_SUBSTITUTIONS values were incorrect. This drastically affected site generation by creating a file .html instead of my-article.html, which in turn would make the site practically unusable. Now the correct substitutions are being made.
  • In version 0.2.0, the base.html file contained a typo in initial-scale. Now the typo has been corrected.
  • In version 0.2.0, the index.md file contained an <img> tag with an erroneous closing tag. Now the tag is correctly used.
  • In version 0.2.0, any file generated using base.html would contain <html lang=""> instead of a tag containing the default language. Now the language appears correctly in the HTML.

Version 0.5.0

Features

  • Using Pydantic to validate configuration.
  • Allowing Pelican configuration settings in their entirety to be configured via turbopelican.toml.
  • Introducing configuration meta.module_prefix setting for Turbopelican to parse certain strings as functions.
  • Introducing configuration meta.null_sentinel setting for Turbopelican to replace certain values with null.
  • Using configuration overrides, such that when a configuration setting should be the same for development and publication, it only needs to be set in the development settings.
  • Printing message when Turbopelican finishes project initialization.
  • publishconf.py is no longer distributed, and Turbopelican can infer both development configuration and production configuration only using pelicanconf.py.
  • Introduction of configurable nullable sentinel values. By using the configuration setting meta.null_sentinel, one can determine which values under pelican or publish are to be swapped for None when parsed into Python.
  • Introduction of configurable module prefixes. The configuration setting meta.module_prefx should be an array of tables, each with a prefix value and a module_name value. Any string with the specified prefixes are swapped out for functions imported from the associated module. E.g. if a prefix value is set to "@mymodule:", and the associated module_name value is set to mypackage.mymodule, then the string value "@mymodule:func" will be replaced with the function func from mypackage.mymodule.

Version 0.4.3

Bug fixes

  • In version 0.4.0, Turbopelican would parse links and social as lists of lists, rather than lists of two-element tuples. Now they are parsed as lists of two-element tuples.
  • In version 0.4.0, a minimal Turbopelican project's pelicanconf.py would expect to receive arrays of key-value pairs, rather than arrays of arrays when parsing links and social. This differed from a regular Turbopelican project. Now expecting arrays of arrays.

Version 0.4.2

Bug fixes

  • In version 0.4.0, Turbopelican would suppress all output from uv sync, when the desired behaviour was for Turbopelican to suppress only the virtual environment warning. Now the output can be viewed again, minus the warning.

Version 0.4.1

Bug fixes

  • In version 0.2.0, a phantom setting INDEX_URL was mistakenly introduced. Now it has been removed.

Version 0.4.0

Features

  • Allowing the user to import turbopelican, which simplifies the process of loading configuration from turbopelican.toml or pyproject.toml.
  • By default, new projects use the load_config function from turbopelican to load their configuration without the need for parsing TOML manually.
  • Introducing --minimal-install flag to allow the user to create a project without installing turbopelican as a dependency thereof.
  • New projects now include a Turbopelican badge in their README.md file.

Version 0.3.3

Bug fixes

  • In the version prior, attempting to build a static site using the settings for publication would result in an ImportError being raised, due to publishconf.py not containing its parent directory in the PYTHONPATH. Now PYTHONPATH is updated so that it imports pelicanconf.py successfully.
  • In the version prior, attempting to build a static site using the settings for publication would (were it not for the bug above), result in publishconf.py attempting to access non-existent TOML, causing an error. Now placing the TOML inside by default.
  • In the version prior, attempting to build a static site using the settings for publication would (were it not for the bugs above), result in missing variables, causing Pelican to raise an error when attempting to overwrite an existing output/index.html file. Now importing the required variables from pelicanconf.py.
  • In the version prior, GitHub Actions incorrectly built the static site using the default configuration, which is not supposed to be used for publication. Now uses the appropriate configuration.
  • Fixing spelling mistake in documentation.

Version 0.3.2

Bug fixes

  • In the version prior, a ConfigurationError was inconsistently raised when an incorrect default language is provided. Now making consistent.
  • In the version prior, if no suggestion could be made for the site URL, then irrespective of the site URL provided via standard input, an error was raised. Now the user is able to input a valid site URL successfully.

Version 0.3.1

Bug fixes

  • In the version prior, the default git branch could be master, depending on the version/configuration of git. This did not accord with README.md. Now the default branch is always main.

Version 0.3.0

Deprecated features

  • Running turbopelican without a subcommand is now deprecated.

Features

  • Introducing --no-input flag. This should cause turbopelican to raise an error if the command the user ran is insufficient without receiving further arguments via standard input.
  • Introducing --use-defaults flag. This causes turbopelican to search for the provided configuration settings in the following order:
  • Command-line arguments
  • Default arguments
  • Standard input (unless using --no-input flag)
  • Removing links and social media from deployed configuration files.
  • turbopelican.toml should now contain all configuration that was previously contained in pelicanconf.py and publishconf.py.
  • A subparser for turbopelican allows initializing repositories via the turbopelican init command.
  • Putting contents in the README.md file in deployed repositories.

Version 0.2.1

Bug fixes

  • In the version prior, users were given the GitHub workflow run-quality-gates.yml, despite the file not containing quality gates. Renamed to turbopelican.yml.

Version 0.2.0

Features

  • Including custom theme for more intuitive start to creating website from scratch. This includes corresponding changes to the content and settings.
  • New --quiet flag allows the user to suppress output, save for input prompts.

Version 0.1.1

Bug fixes

  • In the version prior, if someone ran the development server, the assets (e.g. CSS) would be incorrectly loaded.

Version 0.1.0

  • Creating CLI tool for creating Pelican static-site pages for GitHub Pages.